[{"data":1,"prerenderedAt":99665},["ShallowReactive",2],{"app-menu-posts":3,"blog-vue-3-composables-extract-reusable-logic.en-en":52522,"blog-slug-sidebar-posts":53263},[4,897,2465,3949,5930,8264,9830,11406,12666,13819,16433,18496,21306,22599,25274,26550,28804,31632,34657,37638,40988,42855,46245,47033,48982,49652,50518,51498,51692,52344],{"id":5,"title":6,"body":7,"cover":848,"coverAlt":849,"date":850,"description":851,"draft":852,"extension":853,"lab":854,"locale":864,"meta":865,"navigation":125,"path":875,"schemaOrg":876,"seo":881,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":883,"tags":884,"__hash__":896},"blog\u002Fblog\u002Fvue-3-composables-extract-reusable-logic.es.md","Composables en Vue 3: cómo extraer lógica reutilizable sin complicarte",{"type":8,"value":9,"toc":838},"minimark",[10,14,18,30,33,38,41,44,63,66,70,73,376,379,382,389,392,588,591,723,726,730,733,736,765,768,772,775,778,781,785,798,805,812,815,819,822,828,831,834],[11,12,6],"h1",{"id":13},"composables-en-vue-3-cómo-extraer-lógica-reutilizable-sin-complicarte",[15,16,17],"p",{},"Hay una señal bastante clara de que tu componente está pidiendo ayuda: empiezas a copiar la misma lógica en dos, tres o cuatro lugares.",[15,19,20,21,25,26,29],{},"Primero fue un menú que se abre y se cierra. Luego un modal. Después un panel lateral. Cada uno tiene su propio ",[22,23,24],"code",{},"ref",", su función para abrir, su función para cerrar y un ",[22,27,28],{},"toggle"," casi idéntico. No pasa nada grave al principio, pero el código empieza a sentirse repetido, como si cada componente estuviera resolviendo el mismo problema por su cuenta.",[15,31,32],{},"Ahí entran los composables.",[34,35,37],"h2",{"id":36},"qué-es-un-composable-sin-hacerlo-raro","Qué es un composable, sin hacerlo raro",[15,39,40],{},"Un composable es una función que encapsula lógica reutilizable usando la Composition API de Vue.",[15,42,43],{},"Nada más. No necesita sonar más grande que eso.",[15,45,46,47,50,51,54,55,58,59,62],{},"Puede guardar estado con ",[22,48,49],{},"ref()"," o ",[22,52,53],{},"reactive()",", crear valores derivados con ",[22,56,57],{},"computed()",", escuchar cambios con ",[22,60,61],{},"watch()"," o conectar con APIs del navegador. La idea es que esa lógica viva en un lugar claro y pueda usarse desde varios componentes sin copiar y pegar.",[15,64,65],{},"Si un componente debería encargarse de mostrar la interfaz, un composable puede encargarse de una parte de la lógica que la alimenta.",[34,67,69],{"id":68},"el-problema-lógica-repetida-dentro-del-componente","El problema: lógica repetida dentro del componente",[15,71,72],{},"Imagina un menú pequeño:",[74,75,81],"pre",{"className":76,"code":77,"filename":78,"language":79,"meta":80,"style":80},"language-vue shiki shiki-themes github-light github-dark","\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst isOpen = ref(false)\n\nconst open = () => {\n  isOpen.value = true\n}\n\nconst close = () => {\n  isOpen.value = false\n}\n\nconst toggle = () => {\n  isOpen.value = !isOpen.value\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"toggle\">\n    {{ isOpen ? 'Cerrar menu' : 'Abrir menu' }}\n  \u003C\u002Fbutton>\n\n  \u003Cnav v-if=\"isOpen\">\n    Menu visible\n  \u003C\u002Fnav>\n\u003C\u002Ftemplate>\n","MenuButton.vue","vue","",[22,82,83,103,120,127,152,157,176,188,194,199,215,225,230,235,251,264,269,279,284,294,313,319,329,334,352,358,367],{"__ignoreMap":80},[84,85,88,92,96,100],"span",{"class":86,"line":87},"line",1,[84,89,91],{"class":90},"sVt8B","\u003C",[84,93,95],{"class":94},"s9eBZ","script",[84,97,99],{"class":98},"sScJk"," setup",[84,101,102],{"class":90},">\n",[84,104,106,110,113,116],{"class":86,"line":105},2,[84,107,109],{"class":108},"szBVR","import",[84,111,112],{"class":90}," { ref } ",[84,114,115],{"class":108},"from",[84,117,119],{"class":118},"sZZnC"," 'vue'\n",[84,121,123],{"class":86,"line":122},3,[84,124,126],{"emptyLinePlaceholder":125},true,"\n",[84,128,130,133,137,140,143,146,149],{"class":86,"line":129},4,[84,131,132],{"class":108},"const",[84,134,136],{"class":135},"sj4cs"," isOpen",[84,138,139],{"class":108}," =",[84,141,142],{"class":98}," ref",[84,144,145],{"class":90},"(",[84,147,148],{"class":135},"false",[84,150,151],{"class":90},")\n",[84,153,155],{"class":86,"line":154},5,[84,156,126],{"emptyLinePlaceholder":125},[84,158,160,162,165,167,170,173],{"class":86,"line":159},6,[84,161,132],{"class":108},[84,163,164],{"class":98}," open",[84,166,139],{"class":108},[84,168,169],{"class":90}," () ",[84,171,172],{"class":108},"=>",[84,174,175],{"class":90}," {\n",[84,177,179,182,185],{"class":86,"line":178},7,[84,180,181],{"class":90},"  isOpen.value ",[84,183,184],{"class":108},"=",[84,186,187],{"class":135}," true\n",[84,189,191],{"class":86,"line":190},8,[84,192,193],{"class":90},"}\n",[84,195,197],{"class":86,"line":196},9,[84,198,126],{"emptyLinePlaceholder":125},[84,200,202,204,207,209,211,213],{"class":86,"line":201},10,[84,203,132],{"class":108},[84,205,206],{"class":98}," close",[84,208,139],{"class":108},[84,210,169],{"class":90},[84,212,172],{"class":108},[84,214,175],{"class":90},[84,216,218,220,222],{"class":86,"line":217},11,[84,219,181],{"class":90},[84,221,184],{"class":108},[84,223,224],{"class":135}," false\n",[84,226,228],{"class":86,"line":227},12,[84,229,193],{"class":90},[84,231,233],{"class":86,"line":232},13,[84,234,126],{"emptyLinePlaceholder":125},[84,236,238,240,243,245,247,249],{"class":86,"line":237},14,[84,239,132],{"class":108},[84,241,242],{"class":98}," toggle",[84,244,139],{"class":108},[84,246,169],{"class":90},[84,248,172],{"class":108},[84,250,175],{"class":90},[84,252,254,256,258,261],{"class":86,"line":253},15,[84,255,181],{"class":90},[84,257,184],{"class":108},[84,259,260],{"class":108}," !",[84,262,263],{"class":90},"isOpen.value\n",[84,265,267],{"class":86,"line":266},16,[84,268,193],{"class":90},[84,270,272,275,277],{"class":86,"line":271},17,[84,273,274],{"class":90},"\u003C\u002F",[84,276,95],{"class":94},[84,278,102],{"class":90},[84,280,282],{"class":86,"line":281},18,[84,283,126],{"emptyLinePlaceholder":125},[84,285,287,289,292],{"class":86,"line":286},19,[84,288,91],{"class":90},[84,290,291],{"class":94},"template",[84,293,102],{"class":90},[84,295,297,300,303,306,308,311],{"class":86,"line":296},20,[84,298,299],{"class":90},"  \u003C",[84,301,302],{"class":94},"button",[84,304,305],{"class":98}," @click",[84,307,184],{"class":90},[84,309,310],{"class":118},"\"toggle\"",[84,312,102],{"class":90},[84,314,316],{"class":86,"line":315},21,[84,317,318],{"class":90},"    {{ isOpen ? 'Cerrar menu' : 'Abrir menu' }}\n",[84,320,322,325,327],{"class":86,"line":321},22,[84,323,324],{"class":90},"  \u003C\u002F",[84,326,302],{"class":94},[84,328,102],{"class":90},[84,330,332],{"class":86,"line":331},23,[84,333,126],{"emptyLinePlaceholder":125},[84,335,337,339,342,345,347,350],{"class":86,"line":336},24,[84,338,299],{"class":90},[84,340,341],{"class":94},"nav",[84,343,344],{"class":98}," v-if",[84,346,184],{"class":90},[84,348,349],{"class":118},"\"isOpen\"",[84,351,102],{"class":90},[84,353,355],{"class":86,"line":354},25,[84,356,357],{"class":90},"    Menu visible\n",[84,359,361,363,365],{"class":86,"line":360},26,[84,362,324],{"class":90},[84,364,341],{"class":94},[84,366,102],{"class":90},[84,368,370,372,374],{"class":86,"line":369},27,[84,371,274],{"class":90},[84,373,291],{"class":94},[84,375,102],{"class":90},[15,377,378],{},"Este código está bien. No hay que extraer todo apenas aparece una función. El problema llega cuando la misma idea aparece en un modal, un acordeón, una tarjeta expandible y un panel de filtros.",[15,380,381],{},"En ese punto ya no estás escribiendo lógica del menú. Estás escribiendo una pequeña regla reutilizable: algo puede estar activo o inactivo, y necesitas abrirlo, cerrarlo o alternarlo.",[34,383,385,386],{"id":384},"el-después-extraer-un-usetoggle","El después: extraer un ",[22,387,388],{},"useToggle",[15,390,391],{},"Podemos llevar esa lógica a un composable:",[74,393,398],{"className":394,"code":395,"filename":396,"language":397,"meta":80,"style":80},"language-js shiki shiki-themes github-light github-dark","import { ref } from 'vue'\n\nexport function useToggle(initialValue = false) {\n  const isActive = ref(initialValue)\n\n  const open = () => {\n    isActive.value = true\n  }\n\n  const close = () => {\n    isActive.value = false\n  }\n\n  const toggle = () => {\n    isActive.value = !isActive.value\n  }\n\n  return {\n    isActive,\n    open,\n    close,\n    toggle\n  }\n}\n","composables\u002FuseToggle.js","js",[22,399,400,410,414,439,454,458,472,481,486,490,504,512,516,520,534,545,549,553,560,565,570,575,580,584],{"__ignoreMap":80},[84,401,402,404,406,408],{"class":86,"line":87},[84,403,109],{"class":108},[84,405,112],{"class":90},[84,407,115],{"class":108},[84,409,119],{"class":118},[84,411,412],{"class":86,"line":105},[84,413,126],{"emptyLinePlaceholder":125},[84,415,416,419,422,425,427,431,433,436],{"class":86,"line":122},[84,417,418],{"class":108},"export",[84,420,421],{"class":108}," function",[84,423,424],{"class":98}," useToggle",[84,426,145],{"class":90},[84,428,430],{"class":429},"s4XuR","initialValue",[84,432,139],{"class":108},[84,434,435],{"class":135}," false",[84,437,438],{"class":90},") {\n",[84,440,441,444,447,449,451],{"class":86,"line":129},[84,442,443],{"class":108},"  const",[84,445,446],{"class":135}," isActive",[84,448,139],{"class":108},[84,450,142],{"class":98},[84,452,453],{"class":90},"(initialValue)\n",[84,455,456],{"class":86,"line":154},[84,457,126],{"emptyLinePlaceholder":125},[84,459,460,462,464,466,468,470],{"class":86,"line":159},[84,461,443],{"class":108},[84,463,164],{"class":98},[84,465,139],{"class":108},[84,467,169],{"class":90},[84,469,172],{"class":108},[84,471,175],{"class":90},[84,473,474,477,479],{"class":86,"line":178},[84,475,476],{"class":90},"    isActive.value ",[84,478,184],{"class":108},[84,480,187],{"class":135},[84,482,483],{"class":86,"line":190},[84,484,485],{"class":90},"  }\n",[84,487,488],{"class":86,"line":196},[84,489,126],{"emptyLinePlaceholder":125},[84,491,492,494,496,498,500,502],{"class":86,"line":201},[84,493,443],{"class":108},[84,495,206],{"class":98},[84,497,139],{"class":108},[84,499,169],{"class":90},[84,501,172],{"class":108},[84,503,175],{"class":90},[84,505,506,508,510],{"class":86,"line":217},[84,507,476],{"class":90},[84,509,184],{"class":108},[84,511,224],{"class":135},[84,513,514],{"class":86,"line":227},[84,515,485],{"class":90},[84,517,518],{"class":86,"line":232},[84,519,126],{"emptyLinePlaceholder":125},[84,521,522,524,526,528,530,532],{"class":86,"line":237},[84,523,443],{"class":108},[84,525,242],{"class":98},[84,527,139],{"class":108},[84,529,169],{"class":90},[84,531,172],{"class":108},[84,533,175],{"class":90},[84,535,536,538,540,542],{"class":86,"line":253},[84,537,476],{"class":90},[84,539,184],{"class":108},[84,541,260],{"class":108},[84,543,544],{"class":90},"isActive.value\n",[84,546,547],{"class":86,"line":266},[84,548,485],{"class":90},[84,550,551],{"class":86,"line":271},[84,552,126],{"emptyLinePlaceholder":125},[84,554,555,558],{"class":86,"line":281},[84,556,557],{"class":108},"  return",[84,559,175],{"class":90},[84,561,562],{"class":86,"line":286},[84,563,564],{"class":90},"    isActive,\n",[84,566,567],{"class":86,"line":296},[84,568,569],{"class":90},"    open,\n",[84,571,572],{"class":86,"line":315},[84,573,574],{"class":90},"    close,\n",[84,576,577],{"class":86,"line":321},[84,578,579],{"class":90},"    toggle\n",[84,581,582],{"class":86,"line":331},[84,583,485],{"class":90},[84,585,586],{"class":86,"line":336},[84,587,193],{"class":90},[15,589,590],{},"Y ahora el componente queda más enfocado:",[74,592,594],{"className":76,"code":593,"filename":78,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { useToggle } from '@\u002Fcomposables\u002FuseToggle'\n\nconst menu = useToggle()\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"menu.toggle()\">\n    {{ menu.isActive ? 'Cerrar menu' : 'Abrir menu' }}\n  \u003C\u002Fbutton>\n\n  \u003Cnav v-if=\"menu.isActive\">\n    Menu visible\n  \u003C\u002Fnav>\n\u003C\u002Ftemplate>\n",[22,595,596,606,618,622,636,644,648,656,671,676,684,688,703,707,715],{"__ignoreMap":80},[84,597,598,600,602,604],{"class":86,"line":87},[84,599,91],{"class":90},[84,601,95],{"class":94},[84,603,99],{"class":98},[84,605,102],{"class":90},[84,607,608,610,613,615],{"class":86,"line":105},[84,609,109],{"class":108},[84,611,612],{"class":90}," { useToggle } ",[84,614,115],{"class":108},[84,616,617],{"class":118}," '@\u002Fcomposables\u002FuseToggle'\n",[84,619,620],{"class":86,"line":122},[84,621,126],{"emptyLinePlaceholder":125},[84,623,624,626,629,631,633],{"class":86,"line":129},[84,625,132],{"class":108},[84,627,628],{"class":135}," menu",[84,630,139],{"class":108},[84,632,424],{"class":98},[84,634,635],{"class":90},"()\n",[84,637,638,640,642],{"class":86,"line":154},[84,639,274],{"class":90},[84,641,95],{"class":94},[84,643,102],{"class":90},[84,645,646],{"class":86,"line":159},[84,647,126],{"emptyLinePlaceholder":125},[84,649,650,652,654],{"class":86,"line":178},[84,651,91],{"class":90},[84,653,291],{"class":94},[84,655,102],{"class":90},[84,657,658,660,662,664,666,669],{"class":86,"line":190},[84,659,299],{"class":90},[84,661,302],{"class":94},[84,663,305],{"class":98},[84,665,184],{"class":90},[84,667,668],{"class":118},"\"menu.toggle()\"",[84,670,102],{"class":90},[84,672,673],{"class":86,"line":196},[84,674,675],{"class":90},"    {{ menu.isActive ? 'Cerrar menu' : 'Abrir menu' }}\n",[84,677,678,680,682],{"class":86,"line":201},[84,679,324],{"class":90},[84,681,302],{"class":94},[84,683,102],{"class":90},[84,685,686],{"class":86,"line":217},[84,687,126],{"emptyLinePlaceholder":125},[84,689,690,692,694,696,698,701],{"class":86,"line":227},[84,691,299],{"class":90},[84,693,341],{"class":94},[84,695,344],{"class":98},[84,697,184],{"class":90},[84,699,700],{"class":118},"\"menu.isActive\"",[84,702,102],{"class":90},[84,704,705],{"class":86,"line":232},[84,706,357],{"class":90},[84,708,709,711,713],{"class":86,"line":237},[84,710,324],{"class":90},[84,712,341],{"class":94},[84,714,102],{"class":90},[84,716,717,719,721],{"class":86,"line":253},[84,718,274],{"class":90},[84,720,291],{"class":94},[84,722,102],{"class":90},[15,724,725],{},"El componente todavía se entiende. De hecho, se entiende mejor: hay un menú y ese menú se puede alternar. La mecánica interna ya no estorba.",[34,727,729],{"id":728},"cuándo-sí-vale-la-pena-crear-un-composable","Cuándo sí vale la pena crear un composable",[15,731,732],{},"Un composable tiene sentido cuando extrae una intención real, no solo unas líneas de código.",[15,734,735],{},"Suele valer la pena cuando:",[737,738,739,743,746,749],"ul",{},[740,741,742],"li",{},"La misma lógica aparece en más de un componente.",[740,744,745],{},"El componente está mezclando demasiadas responsabilidades.",[740,747,748],{},"Quieres probar o razonar una parte del comportamiento por separado.",[740,750,751,752,754,755,754,758,754,761,764],{},"La lógica tiene un nombre claro: ",[22,753,388],{},", ",[22,756,757],{},"useMousePosition",[22,759,760],{},"useLocalStorage",[22,762,763],{},"usePagination",".",[15,766,767],{},"La clave está en el nombre. Si puedes nombrarlo de forma natural, probablemente hay una idea reutilizable ahí.",[34,769,771],{"id":770},"cuándo-no-hace-falta","Cuándo no hace falta",[15,773,774],{},"No todo necesita convertirse en composable.",[15,776,777],{},"Si una lógica solo vive en un componente y se entiende bien ahí, déjala ahí. Extraer demasiado pronto también complica. Terminas saltando entre archivos para entender algo que antes se leía en veinte segundos.",[15,779,780],{},"Un buen composable reduce ruido. Uno innecesario lo mueve de lugar.",[34,782,784],{"id":783},"errores-comunes","Errores comunes",[15,786,787,788,754,791,50,794,797],{},"El primero es crear nombres demasiado vagos. ",[22,789,790],{},"useHelpers",[22,792,793],{},"useUtils",[22,795,796],{},"useCommon"," no dicen nada. Si el nombre no explica la intención, el archivo se convierte en un cajón de cosas sueltas.",[15,799,800,801,804],{},"El segundo es meter demasiada lógica en el mismo composable. ",[22,802,803],{},"useUserDashboardEverything"," puede empezar cómodo, pero pronto será más difícil de mantener que el componente original.",[15,806,807,808,811],{},"El tercero es esconder efectos secundarios. Si un composable hace una petición, escribe en ",[22,809,810],{},"localStorage"," o registra eventos globales, debería ser evidente por su nombre o por cómo se usa.",[15,813,814],{},"El cuarto es devolver demasiadas cosas. Si un composable devuelve quince propiedades, quizá todavía no encontraste el límite correcto.",[34,816,818],{"id":817},"una-regla-práctica","Una regla práctica",[15,820,821],{},"Antes de crear un composable, pregúntate esto:",[823,824,825],"blockquote",{},[15,826,827],{},"¿Estoy extrayendo una idea o solo estoy moviendo código?",[15,829,830],{},"Si estás extrayendo una idea, adelante. Si solo estás moviendo código para que el componente se vea más corto, espera un poco.",[15,832,833],{},"Los composables no están para lucirse. Están para que el código respire mejor, para que los componentes hablen de interfaz y para que la lógica repetida tenga una casa propia.",[835,836,837],"style",{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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 .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":80,"searchDepth":105,"depth":105,"links":839},[840,841,842,844,845,846,847],{"id":36,"depth":105,"text":37},{"id":68,"depth":105,"text":69},{"id":384,"depth":105,"text":843},"El después: extraer un useToggle",{"id":728,"depth":105,"text":729},{"id":770,"depth":105,"text":771},{"id":783,"depth":105,"text":784},{"id":817,"depth":105,"text":818},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1782172219\u002Fvue-3-composables-extract-reusable-logic.es.md_myyutl.png","Pantalla con código en un entorno de desarrollo","2026-06-23","Aprende qué son los composables en Vue 3, cuándo conviene usarlos y cómo extraer lógica reutilizable con un ejemplo claro usando useToggle.",false,"md",{"title":855,"goal":856,"tasks":857,"starterCode":862,"solutionHint":863},"Crea tu primer composable: useToggle","Extrae una lógica pequeña y repetible para abrir, cerrar y alternar un estado booleano desde cualquier componente.",[858,859,860,861],"Crea un archivo useToggle.js o useToggle.ts.","Usa ref() para guardar el estado activo o inactivo.","Expón las funciones open(), close() y toggle().","Usa el composable desde un componente con un botón.","\u003Cscript setup>\nimport { ref } from 'vue'\n\nfunction useToggle(initialValue = false) {\n  const isActive = ref(initialValue)\n\n  const open = () => {\n    isActive.value = true\n  }\n\n  const close = () => {\n    isActive.value = false\n  }\n\n  const toggle = () => {\n    isActive.value = !isActive.value\n  }\n\n  return {\n    isActive,\n    open,\n    close,\n    toggle\n  }\n}\n\nconst menu = useToggle()\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"menu.toggle()\">\n    {{ menu.isActive ? 'Cerrar menu' : 'Abrir menu' }}\n  \u003C\u002Fbutton>\n\n  \u003Cnav v-if=\"menu.isActive\">\n    Menu visible\n  \u003C\u002Fnav>\n\u003C\u002Ftemplate>\n","Si el componente ya no necesita saber cómo cambia el estado, solo cuándo usarlo, el composable está haciendo bien su trabajo.","es",{"updatedAt":866,"coverCaption":867,"author":868,"keywords":869},"2026-06-22T20:00:00-05:00","Código reutilizable en Vue 3 por TODOvue","TODOvue",[870,871,872,873,388,874],"Vue.js","Vue 3","Composables","Composition API","lógica reutilizable","\u002Fblog\u002Fvue-3-composables-extract-reusable-logic.es",[877],{"headline":6,"author":878,"datePublished":866,"@type":880},{"name":868,"@type":879},"Person","BlogPosting",{"title":6,"description":851},null,"blog\u002Fvue-3-composables-extract-reusable-logic.es",[885,887,890,893],{"tag":872,"color":886},"#14B8A6",{"tag":888,"color":889},"Componentes","#41B883",{"tag":891,"color":892},"Buenas Prácticas","#2196F3",{"tag":894,"color":895},"Básico","#B173BF","Ju4oHN92VIllfFl39kIGmF-574GLcR3SsvJuMR7W78A",{"id":898,"title":899,"body":900,"cover":2432,"coverAlt":2433,"date":2434,"description":2435,"draft":852,"extension":853,"lab":882,"locale":864,"meta":2436,"navigation":125,"path":2442,"schemaOrg":2443,"seo":2446,"series":2447,"seriesDescription":2448,"seriesOrder":196,"seriesTitle":2449,"slug":882,"stem":2450,"tags":2451,"__hash__":2464},"blog\u002Fblog\u002Fvue-lifecycle-ssr-serverprefetch.es.md","Ciclos de vida en Vue: renderizado del lado del servidor (serverPrefetch)",{"type":8,"value":901,"toc":2418},[902,910,913,918,922,925,939,944,948,962,965,979,982,1007,1010,1014,1019,1030,1037,1041,1044,1047,1065,1071,1073,1078,1087,1097,1101,1117,1121,1124,1129,1133,1139,1142,1146,1779,2391,2397,2403,2407,2412,2415],[11,903,905,906,909],{"id":904},"ciclos-de-vida-en-vue-renderizado-del-lado-del-servidor-serverprefetch","Ciclos de vida en Vue: renderizado del lado del servidor (",[22,907,908],{},"serverPrefetch",")",[15,911,912],{},"Cuando una aplicación usa SSR (Server-Side Rendering), el primer render ya no ocurre únicamente en el navegador. El servidor genera el HTML antes de enviarlo y, si los datos importantes llegan tarde, el usuario recibe una página incompleta o poco útil hasta que el cliente vuelve a solicitarlos.",[15,914,915,917],{},[22,916,908],{}," existe precisamente para resolver ese momento. Permite esperar datos asíncronos antes de renderizar el componente en el servidor, de modo que el HTML inicial ya incluya contenido real y no dependa de esqueletos o placeholders que cambian durante la hidratación.",[34,919,921],{"id":920},"por-qué-esto-importa","Por qué esto importa",[15,923,924],{},"En SSR, la primera impresión depende del HTML generado en el servidor. Si un producto, un artículo o un resumen de dashboard se cargan solo después de montar el componente en el cliente, se pierden varias ventajas:",[737,926,927,930,933,936],{},[740,928,929],{},"El usuario ve menos contenido útil en el primer paint.",[740,931,932],{},"El SEO recibe un documento más pobre.",[740,934,935],{},"La hidratación puede sentirse inconsistente.",[740,937,938],{},"Se duplica trabajo entre servidor y cliente.",[15,940,941,943],{},[22,942,908],{}," ayuda a que los datos críticos estén disponibles a tiempo para el render inicial. No sustituye toda la estrategia de obtención de datos, pero cubre muy bien la fase previa al render del servidor.",[34,945,947],{"id":946},"concepto-clave","Concepto clave",[15,949,950,952,953,956,957,961],{},[22,951,908],{}," (Options API) y ",[22,954,955],{},"onServerPrefetch()"," (Composition API) permiten registrar una función asíncrona que Vue resuelve ",[958,959,960],"strong",{},"antes"," de renderizar el componente en el servidor.",[15,963,964],{},"Flujo simplificado:",[737,966,967,970,973,976],{},[740,968,969],{},"El componente entra en el árbol SSR.",[740,971,972],{},"Vue ejecuta el hook.",[740,974,975],{},"Si el hook devuelve una promesa, el renderer espera.",[740,977,978],{},"Cuando la promesa se resuelve, Vue genera el HTML con los datos disponibles.",[15,980,981],{},"Matices importantes:",[737,983,984,990,993],{},[740,985,986,987,764],{},"Solo se ejecuta durante ",[958,988,989],{},"server-side rendering",[740,991,992],{},"No reemplaza la carga en cliente cuando el componente aparece fuera del render inicial.",[740,994,995,996,999,1000,50,1003,1006],{},"En ",[958,997,998],{},"Nuxt",", suele ser preferible usar ",[22,1001,1002],{},"useAsyncData()",[22,1004,1005],{},"useFetch()",", ya que integran serialización, caché e hidratación automáticamente.",[15,1008,1009],{},"Puedes pensar en este hook como una herramienta de bajo nivel para SSR: útil cuando necesitas control fino dentro de un componente renderizado en servidor.",[34,1011,1013],{"id":1012},"cuándo-usarlo","Cuándo usarlo",[15,1015,1016,1018],{},[22,1017,908],{}," es adecuado cuando el contenido del HTML inicial es crítico:",[737,1020,1021,1024,1027],{},[740,1022,1023],{},"Páginas de producto con nombre, precio y disponibilidad.",[740,1025,1026],{},"Artículos o contenido público que debe ser indexable y visible desde el inicio.",[740,1028,1029],{},"Componentes que dependen del request actual antes de renderizar.",[15,1031,1032,1033,1036],{},"Regla práctica: si el dato debe existir ",[958,1034,1035],{},"antes del render del servidor",", este hook es una buena opción.",[34,1038,1040],{"id":1039},"cuándo-evitarlo","Cuándo evitarlo",[15,1042,1043],{},"No es recomendable usarlo como solución genérica para cualquier fetch.",[15,1045,1046],{},"Evítalo cuando:",[737,1048,1049,1052,1055,1062],{},[740,1050,1051],{},"El componente solo se renderiza en cliente.",[740,1053,1054],{},"La información no es crítica para el HTML inicial.",[740,1056,1057,1058,50,1060,764],{},"Ya usas Nuxt y el caso encaja mejor en ",[22,1059,1002],{},[22,1061,1005],{},[740,1063,1064],{},"El fetch depende de API exclusivas del navegador.",[15,1066,1067,1068,1070],{},"Además, evita operaciones costosas o innecesarias: todo lo que ejecutes en ",[22,1069,908],{}," impacta directamente en el tiempo de respuesta del servidor.",[34,1072,784],{"id":783},[1074,1075,1077],"h3",{"id":1076},"_1-asumir-que-también-se-ejecuta-en-navegación-cliente","1. Asumir que también se ejecuta en navegación cliente",[15,1079,1080,1082,1083,1086],{},[22,1081,908],{}," no sustituye ",[22,1084,1085],{},"mounted"," ni una estrategia completa de carga de datos. Si el componente se renderiza solo en cliente, este hook no se ejecuta.",[15,1088,1089,1090,50,1093,1096],{},"Solución: añadir un fallback en ",[22,1091,1092],{},"onMounted()",[22,1094,1095],{},"mounted()"," cuando los datos no estén disponibles.",[1074,1098,1100],{"id":1099},"_2-usar-api-del-navegador","2. Usar API del navegador",[15,1102,1103,1104,754,1107,1110,1111,1113,1114,1116],{},"Durante SSR no existen ",[22,1105,1106],{},"window",[22,1108,1109],{},"document"," ni ",[22,1112,810],{},". El código dentro de ",[22,1115,908],{}," debe ser seguro para ejecutarse en servidor.",[1074,1118,1120],{"id":1119},"_3-duplicar-el-fetch-innecesariamente","3. Duplicar el fetch innecesariamente",[15,1122,1123],{},"Si el servidor ya obtuvo los datos, no tiene sentido repetir la petición en cliente.",[15,1125,1126,1127,764],{},"Solución: comprobar si el estado ya existe antes de hacer el fetch en ",[22,1128,1085],{},[1074,1130,1132],{"id":1131},"_4-sobrecargar-componentes-profundos","4. Sobrecargar componentes profundos",[15,1134,1135,1136,1138],{},"Multiplicar ",[22,1137,908],{}," en muchos componentes puede aumentar el tiempo de respuesta y dificultar el flujo de datos.",[15,1140,1141],{},"Distribuye responsabilidades: página, layout y componentes deben tener roles claros.",[34,1143,1145],{"id":1144},"ejemplo-práctico","Ejemplo práctico",[74,1147,1149],{"className":76,"code":1148,"filename":873,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { onMounted, onServerPrefetch, ref } from 'vue'\n\ntype Product = {\n  id: number\n  name: string\n  price: number\n  stock: number\n}\n\nconst product = ref\u003CProduct | null>(null)\nconst errorMessage = ref('')\n\nasync function fetchProduct() {\n  const response = await fetch('https:\u002F\u002Fapi.example.com\u002Fproducts\u002F42')\n\n  if (!response.ok) {\n    throw new Error('No fue posible cargar el producto.')\n  }\n\n  product.value = (await response.json()) as Product\n}\n\nonServerPrefetch(async () => {\n  try {\n    await fetchProduct()\n  } catch (error) {\n    errorMessage.value =\n      error instanceof Error ? error.message : 'Error inesperado en SSR.'\n  }\n})\n\nonMounted(async () => {\n  if (product.value || errorMessage.value) return\n\n  try {\n    await fetchProduct()\n  } catch (error) {\n    errorMessage.value =\n      error instanceof Error ? error.message : 'Error inesperado en cliente.'\n  }\n})\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Carticle class=\"product-card\">\n    \u003Cp v-if=\"errorMessage\">{{ errorMessage }}\u003C\u002Fp>\n\n    \u003Ctemplate v-else-if=\"product\">\n      \u003Ch1>{{ product.name }}\u003C\u002Fh1>\n      \u003Cp>Precio: {{ product.price }} USD\u003C\u002Fp>\n      \u003Cp>Stock: {{ product.stock }}\u003C\u002Fp>\n    \u003C\u002Ftemplate>\n\n    \u003Cp v-else>Cargando producto...\u003C\u002Fp>\n  \u003C\u002Farticle>\n\u003C\u002Ftemplate>\n",[22,1150,1151,1169,1180,1184,1196,1207,1217,1226,1235,1239,1243,1273,1291,1295,1308,1330,1334,1348,1366,1370,1374,1401,1405,1409,1424,1431,1440,1451,1460,1482,1487,1493,1498,1514,1531,1536,1543,1552,1561,1568,1586,1591,1596,1605,1610,1619,1637,1659,1664,1686,1701,1715,1729,1739,1744,1761,1770],{"__ignoreMap":80},[84,1152,1153,1155,1157,1159,1162,1164,1167],{"class":86,"line":87},[84,1154,91],{"class":90},[84,1156,95],{"class":94},[84,1158,99],{"class":98},[84,1160,1161],{"class":98}," lang",[84,1163,184],{"class":90},[84,1165,1166],{"class":118},"\"ts\"",[84,1168,102],{"class":90},[84,1170,1171,1173,1176,1178],{"class":86,"line":105},[84,1172,109],{"class":108},[84,1174,1175],{"class":90}," { onMounted, onServerPrefetch, ref } ",[84,1177,115],{"class":108},[84,1179,119],{"class":118},[84,1181,1182],{"class":86,"line":122},[84,1183,126],{"emptyLinePlaceholder":125},[84,1185,1186,1189,1192,1194],{"class":86,"line":129},[84,1187,1188],{"class":108},"type",[84,1190,1191],{"class":98}," Product",[84,1193,139],{"class":108},[84,1195,175],{"class":90},[84,1197,1198,1201,1204],{"class":86,"line":154},[84,1199,1200],{"class":429},"  id",[84,1202,1203],{"class":108},":",[84,1205,1206],{"class":135}," number\n",[84,1208,1209,1212,1214],{"class":86,"line":159},[84,1210,1211],{"class":429},"  name",[84,1213,1203],{"class":108},[84,1215,1216],{"class":135}," string\n",[84,1218,1219,1222,1224],{"class":86,"line":178},[84,1220,1221],{"class":429},"  price",[84,1223,1203],{"class":108},[84,1225,1206],{"class":135},[84,1227,1228,1231,1233],{"class":86,"line":190},[84,1229,1230],{"class":429},"  stock",[84,1232,1203],{"class":108},[84,1234,1206],{"class":135},[84,1236,1237],{"class":86,"line":196},[84,1238,193],{"class":90},[84,1240,1241],{"class":86,"line":201},[84,1242,126],{"emptyLinePlaceholder":125},[84,1244,1245,1247,1250,1252,1254,1256,1259,1262,1265,1268,1271],{"class":86,"line":217},[84,1246,132],{"class":108},[84,1248,1249],{"class":135}," product",[84,1251,139],{"class":108},[84,1253,142],{"class":98},[84,1255,91],{"class":90},[84,1257,1258],{"class":98},"Product",[84,1260,1261],{"class":108}," |",[84,1263,1264],{"class":135}," null",[84,1266,1267],{"class":90},">(",[84,1269,1270],{"class":135},"null",[84,1272,151],{"class":90},[84,1274,1275,1277,1280,1282,1284,1286,1289],{"class":86,"line":227},[84,1276,132],{"class":108},[84,1278,1279],{"class":135}," errorMessage",[84,1281,139],{"class":108},[84,1283,142],{"class":98},[84,1285,145],{"class":90},[84,1287,1288],{"class":118},"''",[84,1290,151],{"class":90},[84,1292,1293],{"class":86,"line":232},[84,1294,126],{"emptyLinePlaceholder":125},[84,1296,1297,1300,1302,1305],{"class":86,"line":237},[84,1298,1299],{"class":108},"async",[84,1301,421],{"class":108},[84,1303,1304],{"class":98}," fetchProduct",[84,1306,1307],{"class":90},"() {\n",[84,1309,1310,1312,1315,1317,1320,1323,1325,1328],{"class":86,"line":253},[84,1311,443],{"class":108},[84,1313,1314],{"class":135}," response",[84,1316,139],{"class":108},[84,1318,1319],{"class":108}," await",[84,1321,1322],{"class":98}," fetch",[84,1324,145],{"class":90},[84,1326,1327],{"class":118},"'https:\u002F\u002Fapi.example.com\u002Fproducts\u002F42'",[84,1329,151],{"class":90},[84,1331,1332],{"class":86,"line":266},[84,1333,126],{"emptyLinePlaceholder":125},[84,1335,1336,1339,1342,1345],{"class":86,"line":271},[84,1337,1338],{"class":108},"  if",[84,1340,1341],{"class":90}," (",[84,1343,1344],{"class":108},"!",[84,1346,1347],{"class":90},"response.ok) {\n",[84,1349,1350,1353,1356,1359,1361,1364],{"class":86,"line":281},[84,1351,1352],{"class":108},"    throw",[84,1354,1355],{"class":108}," new",[84,1357,1358],{"class":98}," Error",[84,1360,145],{"class":90},[84,1362,1363],{"class":118},"'No fue posible cargar el producto.'",[84,1365,151],{"class":90},[84,1367,1368],{"class":86,"line":286},[84,1369,485],{"class":90},[84,1371,1372],{"class":86,"line":296},[84,1373,126],{"emptyLinePlaceholder":125},[84,1375,1376,1379,1381,1383,1386,1389,1392,1395,1398],{"class":86,"line":315},[84,1377,1378],{"class":90},"  product.value ",[84,1380,184],{"class":108},[84,1382,1341],{"class":90},[84,1384,1385],{"class":108},"await",[84,1387,1388],{"class":90}," response.",[84,1390,1391],{"class":98},"json",[84,1393,1394],{"class":90},"()) ",[84,1396,1397],{"class":108},"as",[84,1399,1400],{"class":98}," Product\n",[84,1402,1403],{"class":86,"line":321},[84,1404,193],{"class":90},[84,1406,1407],{"class":86,"line":331},[84,1408,126],{"emptyLinePlaceholder":125},[84,1410,1411,1414,1416,1418,1420,1422],{"class":86,"line":336},[84,1412,1413],{"class":98},"onServerPrefetch",[84,1415,145],{"class":90},[84,1417,1299],{"class":108},[84,1419,169],{"class":90},[84,1421,172],{"class":108},[84,1423,175],{"class":90},[84,1425,1426,1429],{"class":86,"line":354},[84,1427,1428],{"class":108},"  try",[84,1430,175],{"class":90},[84,1432,1433,1436,1438],{"class":86,"line":360},[84,1434,1435],{"class":108},"    await",[84,1437,1304],{"class":98},[84,1439,635],{"class":90},[84,1441,1442,1445,1448],{"class":86,"line":369},[84,1443,1444],{"class":90},"  } ",[84,1446,1447],{"class":108},"catch",[84,1449,1450],{"class":90}," (error) {\n",[84,1452,1454,1457],{"class":86,"line":1453},28,[84,1455,1456],{"class":90},"    errorMessage.value ",[84,1458,1459],{"class":108},"=\n",[84,1461,1463,1466,1469,1471,1474,1477,1479],{"class":86,"line":1462},29,[84,1464,1465],{"class":90},"      error ",[84,1467,1468],{"class":108},"instanceof",[84,1470,1358],{"class":98},[84,1472,1473],{"class":108}," ?",[84,1475,1476],{"class":90}," error.message ",[84,1478,1203],{"class":108},[84,1480,1481],{"class":118}," 'Error inesperado en SSR.'\n",[84,1483,1485],{"class":86,"line":1484},30,[84,1486,485],{"class":90},[84,1488,1490],{"class":86,"line":1489},31,[84,1491,1492],{"class":90},"})\n",[84,1494,1496],{"class":86,"line":1495},32,[84,1497,126],{"emptyLinePlaceholder":125},[84,1499,1501,1504,1506,1508,1510,1512],{"class":86,"line":1500},33,[84,1502,1503],{"class":98},"onMounted",[84,1505,145],{"class":90},[84,1507,1299],{"class":108},[84,1509,169],{"class":90},[84,1511,172],{"class":108},[84,1513,175],{"class":90},[84,1515,1517,1519,1522,1525,1528],{"class":86,"line":1516},34,[84,1518,1338],{"class":108},[84,1520,1521],{"class":90}," (product.value ",[84,1523,1524],{"class":108},"||",[84,1526,1527],{"class":90}," errorMessage.value) ",[84,1529,1530],{"class":108},"return\n",[84,1532,1534],{"class":86,"line":1533},35,[84,1535,126],{"emptyLinePlaceholder":125},[84,1537,1539,1541],{"class":86,"line":1538},36,[84,1540,1428],{"class":108},[84,1542,175],{"class":90},[84,1544,1546,1548,1550],{"class":86,"line":1545},37,[84,1547,1435],{"class":108},[84,1549,1304],{"class":98},[84,1551,635],{"class":90},[84,1553,1555,1557,1559],{"class":86,"line":1554},38,[84,1556,1444],{"class":90},[84,1558,1447],{"class":108},[84,1560,1450],{"class":90},[84,1562,1564,1566],{"class":86,"line":1563},39,[84,1565,1456],{"class":90},[84,1567,1459],{"class":108},[84,1569,1571,1573,1575,1577,1579,1581,1583],{"class":86,"line":1570},40,[84,1572,1465],{"class":90},[84,1574,1468],{"class":108},[84,1576,1358],{"class":98},[84,1578,1473],{"class":108},[84,1580,1476],{"class":90},[84,1582,1203],{"class":108},[84,1584,1585],{"class":118}," 'Error inesperado en cliente.'\n",[84,1587,1589],{"class":86,"line":1588},41,[84,1590,485],{"class":90},[84,1592,1594],{"class":86,"line":1593},42,[84,1595,1492],{"class":90},[84,1597,1599,1601,1603],{"class":86,"line":1598},43,[84,1600,274],{"class":90},[84,1602,95],{"class":94},[84,1604,102],{"class":90},[84,1606,1608],{"class":86,"line":1607},44,[84,1609,126],{"emptyLinePlaceholder":125},[84,1611,1613,1615,1617],{"class":86,"line":1612},45,[84,1614,91],{"class":90},[84,1616,291],{"class":94},[84,1618,102],{"class":90},[84,1620,1622,1624,1627,1630,1632,1635],{"class":86,"line":1621},46,[84,1623,299],{"class":90},[84,1625,1626],{"class":94},"article",[84,1628,1629],{"class":98}," class",[84,1631,184],{"class":90},[84,1633,1634],{"class":118},"\"product-card\"",[84,1636,102],{"class":90},[84,1638,1640,1643,1645,1647,1649,1652,1655,1657],{"class":86,"line":1639},47,[84,1641,1642],{"class":90},"    \u003C",[84,1644,15],{"class":94},[84,1646,344],{"class":98},[84,1648,184],{"class":90},[84,1650,1651],{"class":118},"\"errorMessage\"",[84,1653,1654],{"class":90},">{{ errorMessage }}\u003C\u002F",[84,1656,15],{"class":94},[84,1658,102],{"class":90},[84,1660,1662],{"class":86,"line":1661},48,[84,1663,126],{"emptyLinePlaceholder":125},[84,1665,1667,1669,1671,1674,1676,1679,1682,1684],{"class":86,"line":1666},49,[84,1668,1642],{"class":90},[84,1670,291],{"class":94},[84,1672,1673],{"class":108}," v-else-if",[84,1675,184],{"class":90},[84,1677,1678],{"class":118},"\"",[84,1680,1681],{"class":90},"product",[84,1683,1678],{"class":118},[84,1685,102],{"class":90},[84,1687,1689,1692,1694,1697,1699],{"class":86,"line":1688},50,[84,1690,1691],{"class":90},"      \u003C",[84,1693,11],{"class":94},[84,1695,1696],{"class":90},">{{ product.name }}\u003C\u002F",[84,1698,11],{"class":94},[84,1700,102],{"class":90},[84,1702,1704,1706,1708,1711,1713],{"class":86,"line":1703},51,[84,1705,1691],{"class":90},[84,1707,15],{"class":94},[84,1709,1710],{"class":90},">Precio: {{ product.price }} USD\u003C\u002F",[84,1712,15],{"class":94},[84,1714,102],{"class":90},[84,1716,1718,1720,1722,1725,1727],{"class":86,"line":1717},52,[84,1719,1691],{"class":90},[84,1721,15],{"class":94},[84,1723,1724],{"class":90},">Stock: {{ product.stock }}\u003C\u002F",[84,1726,15],{"class":94},[84,1728,102],{"class":90},[84,1730,1732,1735,1737],{"class":86,"line":1731},53,[84,1733,1734],{"class":90},"    \u003C\u002F",[84,1736,291],{"class":94},[84,1738,102],{"class":90},[84,1740,1742],{"class":86,"line":1741},54,[84,1743,126],{"emptyLinePlaceholder":125},[84,1745,1747,1749,1751,1754,1757,1759],{"class":86,"line":1746},55,[84,1748,1642],{"class":90},[84,1750,15],{"class":94},[84,1752,1753],{"class":98}," v-else",[84,1755,1756],{"class":90},">Cargando producto...\u003C\u002F",[84,1758,15],{"class":94},[84,1760,102],{"class":90},[84,1762,1764,1766,1768],{"class":86,"line":1763},56,[84,1765,324],{"class":90},[84,1767,1626],{"class":94},[84,1769,102],{"class":90},[84,1771,1773,1775,1777],{"class":86,"line":1772},57,[84,1774,274],{"class":90},[84,1776,291],{"class":94},[84,1778,102],{"class":90},[74,1780,1783],{"className":76,"code":1781,"filename":1782,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nimport { defineComponent } from 'vue'\n\ntype Product = {\n  id: number\n  name: string\n  price: number\n  stock: number\n}\n\nexport default defineComponent({\n  name: 'ProductCardSsr',\n\n  data() {\n    return {\n      product: null as Product | null,\n      errorMessage: ''\n    }\n  },\n\n  methods: {\n    async fetchProduct() {\n      const response = await fetch('https:\u002F\u002Fapi.example.com\u002Fproducts\u002F42')\n\n      if (!response.ok) {\n        throw new Error('No fue posible cargar el producto.')\n      }\n\n      this.product = (await response.json()) as Product\n    }\n  },\n\n  async serverPrefetch() {\n    try {\n      await this.fetchProduct()\n    } catch (error) {\n      this.errorMessage =\n        error instanceof Error ? error.message : 'Error inesperado en SSR.'\n    }\n  },\n\n  async mounted() {\n    if (this.product || this.errorMessage) return\n\n    try {\n      await this.fetchProduct()\n    } catch (error) {\n      this.errorMessage =\n        error instanceof Error ? error.message : 'Error inesperado en cliente.'\n    }\n  }\n})\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Carticle class=\"product-card\">\n    \u003Cp v-if=\"errorMessage\">{{ errorMessage }}\u003C\u002Fp>\n\n    \u003Ctemplate v-else-if=\"product\">\n      \u003Ch1>{{ product.name }}\u003C\u002Fh1>\n      \u003Cp>Precio: {{ product.price }} USD\u003C\u002Fp>\n      \u003Cp>Stock: {{ product.stock }}\u003C\u002Fp>\n    \u003C\u002Ftemplate>\n\n    \u003Cp v-else>Cargando producto...\u003C\u002Fp>\n  \u003C\u002Farticle>\n\u003C\u002Ftemplate>\n","Options API",[22,1784,1785,1799,1810,1814,1824,1832,1840,1848,1856,1860,1864,1877,1888,1892,1899,1906,1924,1932,1937,1942,1946,1951,1960,1979,1983,1994,2009,2014,2018,2042,2046,2050,2054,2064,2071,2086,2095,2104,2121,2125,2129,2133,2142,2163,2167,2173,2185,2193,2201,2217,2221,2225,2229,2237,2241,2249,2263,2281,2286,2305,2318,2331,2344,2353,2358,2373,2382],{"__ignoreMap":80},[84,1786,1787,1789,1791,1793,1795,1797],{"class":86,"line":87},[84,1788,91],{"class":90},[84,1790,95],{"class":94},[84,1792,1161],{"class":98},[84,1794,184],{"class":90},[84,1796,1166],{"class":118},[84,1798,102],{"class":90},[84,1800,1801,1803,1806,1808],{"class":86,"line":105},[84,1802,109],{"class":108},[84,1804,1805],{"class":90}," { defineComponent } ",[84,1807,115],{"class":108},[84,1809,119],{"class":118},[84,1811,1812],{"class":86,"line":122},[84,1813,126],{"emptyLinePlaceholder":125},[84,1815,1816,1818,1820,1822],{"class":86,"line":129},[84,1817,1188],{"class":108},[84,1819,1191],{"class":98},[84,1821,139],{"class":108},[84,1823,175],{"class":90},[84,1825,1826,1828,1830],{"class":86,"line":154},[84,1827,1200],{"class":429},[84,1829,1203],{"class":108},[84,1831,1206],{"class":135},[84,1833,1834,1836,1838],{"class":86,"line":159},[84,1835,1211],{"class":429},[84,1837,1203],{"class":108},[84,1839,1216],{"class":135},[84,1841,1842,1844,1846],{"class":86,"line":178},[84,1843,1221],{"class":429},[84,1845,1203],{"class":108},[84,1847,1206],{"class":135},[84,1849,1850,1852,1854],{"class":86,"line":190},[84,1851,1230],{"class":429},[84,1853,1203],{"class":108},[84,1855,1206],{"class":135},[84,1857,1858],{"class":86,"line":196},[84,1859,193],{"class":90},[84,1861,1862],{"class":86,"line":201},[84,1863,126],{"emptyLinePlaceholder":125},[84,1865,1866,1868,1871,1874],{"class":86,"line":217},[84,1867,418],{"class":108},[84,1869,1870],{"class":108}," default",[84,1872,1873],{"class":98}," defineComponent",[84,1875,1876],{"class":90},"({\n",[84,1878,1879,1882,1885],{"class":86,"line":227},[84,1880,1881],{"class":90},"  name: ",[84,1883,1884],{"class":118},"'ProductCardSsr'",[84,1886,1887],{"class":90},",\n",[84,1889,1890],{"class":86,"line":232},[84,1891,126],{"emptyLinePlaceholder":125},[84,1893,1894,1897],{"class":86,"line":237},[84,1895,1896],{"class":98},"  data",[84,1898,1307],{"class":90},[84,1900,1901,1904],{"class":86,"line":253},[84,1902,1903],{"class":108},"    return",[84,1905,175],{"class":90},[84,1907,1908,1911,1913,1916,1918,1920,1922],{"class":86,"line":266},[84,1909,1910],{"class":90},"      product: ",[84,1912,1270],{"class":135},[84,1914,1915],{"class":108}," as",[84,1917,1191],{"class":98},[84,1919,1261],{"class":108},[84,1921,1264],{"class":135},[84,1923,1887],{"class":90},[84,1925,1926,1929],{"class":86,"line":271},[84,1927,1928],{"class":90},"      errorMessage: ",[84,1930,1931],{"class":118},"''\n",[84,1933,1934],{"class":86,"line":281},[84,1935,1936],{"class":90},"    }\n",[84,1938,1939],{"class":86,"line":286},[84,1940,1941],{"class":90},"  },\n",[84,1943,1944],{"class":86,"line":296},[84,1945,126],{"emptyLinePlaceholder":125},[84,1947,1948],{"class":86,"line":315},[84,1949,1950],{"class":90},"  methods: {\n",[84,1952,1953,1956,1958],{"class":86,"line":321},[84,1954,1955],{"class":108},"    async",[84,1957,1304],{"class":98},[84,1959,1307],{"class":90},[84,1961,1962,1965,1967,1969,1971,1973,1975,1977],{"class":86,"line":331},[84,1963,1964],{"class":108},"      const",[84,1966,1314],{"class":135},[84,1968,139],{"class":108},[84,1970,1319],{"class":108},[84,1972,1322],{"class":98},[84,1974,145],{"class":90},[84,1976,1327],{"class":118},[84,1978,151],{"class":90},[84,1980,1981],{"class":86,"line":336},[84,1982,126],{"emptyLinePlaceholder":125},[84,1984,1985,1988,1990,1992],{"class":86,"line":354},[84,1986,1987],{"class":108},"      if",[84,1989,1341],{"class":90},[84,1991,1344],{"class":108},[84,1993,1347],{"class":90},[84,1995,1996,1999,2001,2003,2005,2007],{"class":86,"line":360},[84,1997,1998],{"class":108},"        throw",[84,2000,1355],{"class":108},[84,2002,1358],{"class":98},[84,2004,145],{"class":90},[84,2006,1363],{"class":118},[84,2008,151],{"class":90},[84,2010,2011],{"class":86,"line":369},[84,2012,2013],{"class":90},"      }\n",[84,2015,2016],{"class":86,"line":1453},[84,2017,126],{"emptyLinePlaceholder":125},[84,2019,2020,2023,2026,2028,2030,2032,2034,2036,2038,2040],{"class":86,"line":1462},[84,2021,2022],{"class":135},"      this",[84,2024,2025],{"class":90},".product ",[84,2027,184],{"class":108},[84,2029,1341],{"class":90},[84,2031,1385],{"class":108},[84,2033,1388],{"class":90},[84,2035,1391],{"class":98},[84,2037,1394],{"class":90},[84,2039,1397],{"class":108},[84,2041,1400],{"class":98},[84,2043,2044],{"class":86,"line":1484},[84,2045,1936],{"class":90},[84,2047,2048],{"class":86,"line":1489},[84,2049,1941],{"class":90},[84,2051,2052],{"class":86,"line":1495},[84,2053,126],{"emptyLinePlaceholder":125},[84,2055,2056,2059,2062],{"class":86,"line":1500},[84,2057,2058],{"class":108},"  async",[84,2060,2061],{"class":98}," serverPrefetch",[84,2063,1307],{"class":90},[84,2065,2066,2069],{"class":86,"line":1516},[84,2067,2068],{"class":108},"    try",[84,2070,175],{"class":90},[84,2072,2073,2076,2079,2081,2084],{"class":86,"line":1533},[84,2074,2075],{"class":108},"      await",[84,2077,2078],{"class":135}," this",[84,2080,764],{"class":90},[84,2082,2083],{"class":98},"fetchProduct",[84,2085,635],{"class":90},[84,2087,2088,2091,2093],{"class":86,"line":1538},[84,2089,2090],{"class":90},"    } ",[84,2092,1447],{"class":108},[84,2094,1450],{"class":90},[84,2096,2097,2099,2102],{"class":86,"line":1545},[84,2098,2022],{"class":135},[84,2100,2101],{"class":90},".errorMessage ",[84,2103,1459],{"class":108},[84,2105,2106,2109,2111,2113,2115,2117,2119],{"class":86,"line":1554},[84,2107,2108],{"class":90},"        error ",[84,2110,1468],{"class":108},[84,2112,1358],{"class":98},[84,2114,1473],{"class":108},[84,2116,1476],{"class":90},[84,2118,1203],{"class":108},[84,2120,1481],{"class":118},[84,2122,2123],{"class":86,"line":1563},[84,2124,1936],{"class":90},[84,2126,2127],{"class":86,"line":1570},[84,2128,1941],{"class":90},[84,2130,2131],{"class":86,"line":1588},[84,2132,126],{"emptyLinePlaceholder":125},[84,2134,2135,2137,2140],{"class":86,"line":1593},[84,2136,2058],{"class":108},[84,2138,2139],{"class":98}," mounted",[84,2141,1307],{"class":90},[84,2143,2144,2147,2149,2152,2154,2156,2158,2161],{"class":86,"line":1598},[84,2145,2146],{"class":108},"    if",[84,2148,1341],{"class":90},[84,2150,2151],{"class":135},"this",[84,2153,2025],{"class":90},[84,2155,1524],{"class":108},[84,2157,2078],{"class":135},[84,2159,2160],{"class":90},".errorMessage) ",[84,2162,1530],{"class":108},[84,2164,2165],{"class":86,"line":1607},[84,2166,126],{"emptyLinePlaceholder":125},[84,2168,2169,2171],{"class":86,"line":1612},[84,2170,2068],{"class":108},[84,2172,175],{"class":90},[84,2174,2175,2177,2179,2181,2183],{"class":86,"line":1621},[84,2176,2075],{"class":108},[84,2178,2078],{"class":135},[84,2180,764],{"class":90},[84,2182,2083],{"class":98},[84,2184,635],{"class":90},[84,2186,2187,2189,2191],{"class":86,"line":1639},[84,2188,2090],{"class":90},[84,2190,1447],{"class":108},[84,2192,1450],{"class":90},[84,2194,2195,2197,2199],{"class":86,"line":1661},[84,2196,2022],{"class":135},[84,2198,2101],{"class":90},[84,2200,1459],{"class":108},[84,2202,2203,2205,2207,2209,2211,2213,2215],{"class":86,"line":1666},[84,2204,2108],{"class":90},[84,2206,1468],{"class":108},[84,2208,1358],{"class":98},[84,2210,1473],{"class":108},[84,2212,1476],{"class":90},[84,2214,1203],{"class":108},[84,2216,1585],{"class":118},[84,2218,2219],{"class":86,"line":1688},[84,2220,1936],{"class":90},[84,2222,2223],{"class":86,"line":1703},[84,2224,485],{"class":90},[84,2226,2227],{"class":86,"line":1717},[84,2228,1492],{"class":90},[84,2230,2231,2233,2235],{"class":86,"line":1731},[84,2232,274],{"class":90},[84,2234,95],{"class":94},[84,2236,102],{"class":90},[84,2238,2239],{"class":86,"line":1741},[84,2240,126],{"emptyLinePlaceholder":125},[84,2242,2243,2245,2247],{"class":86,"line":1746},[84,2244,91],{"class":90},[84,2246,291],{"class":94},[84,2248,102],{"class":90},[84,2250,2251,2253,2255,2257,2259,2261],{"class":86,"line":1763},[84,2252,299],{"class":90},[84,2254,1626],{"class":94},[84,2256,1629],{"class":98},[84,2258,184],{"class":90},[84,2260,1634],{"class":118},[84,2262,102],{"class":90},[84,2264,2265,2267,2269,2271,2273,2275,2277,2279],{"class":86,"line":1772},[84,2266,1642],{"class":90},[84,2268,15],{"class":94},[84,2270,344],{"class":98},[84,2272,184],{"class":90},[84,2274,1651],{"class":118},[84,2276,1654],{"class":90},[84,2278,15],{"class":94},[84,2280,102],{"class":90},[84,2282,2284],{"class":86,"line":2283},58,[84,2285,126],{"emptyLinePlaceholder":125},[84,2287,2289,2291,2293,2295,2297,2299,2301,2303],{"class":86,"line":2288},59,[84,2290,1642],{"class":90},[84,2292,291],{"class":94},[84,2294,1673],{"class":108},[84,2296,184],{"class":90},[84,2298,1678],{"class":118},[84,2300,1681],{"class":90},[84,2302,1678],{"class":118},[84,2304,102],{"class":90},[84,2306,2308,2310,2312,2314,2316],{"class":86,"line":2307},60,[84,2309,1691],{"class":90},[84,2311,11],{"class":94},[84,2313,1696],{"class":90},[84,2315,11],{"class":94},[84,2317,102],{"class":90},[84,2319,2321,2323,2325,2327,2329],{"class":86,"line":2320},61,[84,2322,1691],{"class":90},[84,2324,15],{"class":94},[84,2326,1710],{"class":90},[84,2328,15],{"class":94},[84,2330,102],{"class":90},[84,2332,2334,2336,2338,2340,2342],{"class":86,"line":2333},62,[84,2335,1691],{"class":90},[84,2337,15],{"class":94},[84,2339,1724],{"class":90},[84,2341,15],{"class":94},[84,2343,102],{"class":90},[84,2345,2347,2349,2351],{"class":86,"line":2346},63,[84,2348,1734],{"class":90},[84,2350,291],{"class":94},[84,2352,102],{"class":90},[84,2354,2356],{"class":86,"line":2355},64,[84,2357,126],{"emptyLinePlaceholder":125},[84,2359,2361,2363,2365,2367,2369,2371],{"class":86,"line":2360},65,[84,2362,1642],{"class":90},[84,2364,15],{"class":94},[84,2366,1753],{"class":98},[84,2368,1756],{"class":90},[84,2370,15],{"class":94},[84,2372,102],{"class":90},[84,2374,2376,2378,2380],{"class":86,"line":2375},66,[84,2377,324],{"class":90},[84,2379,1626],{"class":94},[84,2381,102],{"class":90},[84,2383,2385,2387,2389],{"class":86,"line":2384},67,[84,2386,274],{"class":90},[84,2388,291],{"class":94},[84,2390,102],{"class":90},[15,2392,2393,2394,2396],{},"Este patrón permite que el servidor entregue el contenido resuelto en la primera carga. Si el componente se renderiza posteriormente en una navegación cliente, ",[22,2395,1092],{}," actúa como fallback sin duplicar la petición.",[15,2398,2399,2400,2402],{},"Esta versión mantiene la misma intención: resolver los datos antes del render SSR y usar ",[22,2401,1085],{}," como respaldo en escenarios donde no hay estado previo.",[34,2404,2406],{"id":2405},"resumen","Resumen",[15,2408,2409,2411],{},[22,2410,908],{}," permite adelantar datos críticos al render del servidor y generar HTML útil desde la primera respuesta. Su valor está en mejorar el primer render, no en reemplazar toda la estrategia de fetching.",[15,2413,2414],{},"En Vue SSR “manual”, es una herramienta precisa y potente. En Nuxt, suele ser preferible usar utilidades de más alto nivel. En ambos casos, la idea clave es la misma: el contenido importante debe estar listo antes de renderizar la página inicial.",[835,2416,2417],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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);}",{"title":80,"searchDepth":105,"depth":105,"links":2419},[2420,2421,2422,2423,2424,2430,2431],{"id":920,"depth":105,"text":921},{"id":946,"depth":105,"text":947},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":783,"depth":105,"text":784,"children":2425},[2426,2427,2428,2429],{"id":1076,"depth":122,"text":1077},{"id":1099,"depth":122,"text":1100},{"id":1119,"depth":122,"text":1120},{"id":1131,"depth":122,"text":1132},{"id":1144,"depth":105,"text":1145},{"id":2405,"depth":105,"text":2406},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1774051488\u002Fvue-lifecycle-ssr-serverprefetch_averlr.png","Ilustración de un servidor entregando HTML con datos ya resueltos, mientras un cliente hidrata sin necesidad de fetch adicional.","2026-03-21","Cómo usar serverPrefetch y onServerPrefetch para cargar datos antes del render SSR, evitar HTML incompleto y coordinar el primer render del servidor con la hidratación del cliente.",{"updatedAt":2437,"readingTime":190,"coverCaption":2438,"author":868,"keywords":2439},"2026-03-20T20:00:00-05:00","Con `serverPrefetch`, el servidor puede entregar HTML ya completo, mejorando la experiencia y el SEO desde el primer render.",[870,908,1413,2440,2441],"SSR","hidratación","\u002Fblog\u002Fvue-lifecycle-ssr-serverprefetch.es",[2444],{"headline":899,"author":2445,"datePublished":2437,"@type":880},{"name":868,"@type":879},{"title":899,"description":2435},"vue-lifecycle-hooks","Serie práctica para dominar cada hook del ciclo de vida de Vue, desde los básicos hasta los avanzados.","Ciclos de vida en Vue","blog\u002Fvue-lifecycle-ssr-serverprefetch.es",[2452,2455,2457,2460,2461],{"tag":2453,"color":2454},"Ciclo de Vida","#FF6B6B",{"tag":2440,"color":2456},"#0E9AA7",{"tag":2458,"color":2459},"Arquitectura","#4CAF50",{"tag":888,"color":889},{"tag":2462,"color":2463},"Avanzado","#F54927","gpVQi88PJ9GPzNJNjmGEweIYhWKcd-KIwq-VxiZMkTQ",{"id":2466,"title":2467,"body":2468,"cover":3922,"coverAlt":3923,"date":3924,"description":3925,"draft":852,"extension":853,"lab":882,"locale":864,"meta":3926,"navigation":125,"path":3930,"schemaOrg":3931,"seo":3934,"series":2447,"seriesDescription":2448,"seriesOrder":190,"seriesTitle":2449,"slug":882,"stem":3935,"tags":3936,"__hash__":3948},"blog\u002Fblog\u002Fvue-lifecycle-render-debug-rendertracked-rendertriggered.es.md","Ciclos de vida en Vue: depuración del render (renderTracked, renderTriggered)",{"type":8,"value":2469,"toc":3903},[2470,2480,2483,2492,2495,2503,2505,2508,2528,2536,2538,2544,2547,2565,2568,2609,2612,2627,2630,2632,2635,2638,2655,2658,2660,2663,2666,2693,2696,2698,2702,2709,2713,2719,2723,2726,2730,2733,2737,2741,2747,2751,2756,2760,2763,2767,3337,3856,3859,3870,3872,3879,3882,3895,3900],[11,2471,2473,2474,754,2477,909],{"id":2472},"ciclos-de-vida-en-vue-depuración-del-render-rendertracked-rendertriggered","Ciclos de vida en Vue: depuración del render (",[22,2475,2476],{},"renderTracked",[22,2478,2479],{},"renderTriggered",[15,2481,2482],{},"Hay bugs que no están en la lógica de negocio ni en una API externa. Están en otro nivel: un componente que se vuelve a renderizar demasiadas veces, una lista que recalcula de más o una vista que depende de un estado reactivo que ni siquiera sabías que estaba leyendo.",[15,2484,2485,2486,2488,2489,2491],{},"Este tipo de problema suele ser difícil de detectar porque Vue abstrae muy bien el sistema reactivo. Actualiza cuando corresponde y, desde fuera, parece magia. Precisamente por eso existen ",[22,2487,2476],{}," y ",[22,2490,2479],{},": para abrir esa “caja negra” y entender qué está ocurriendo dentro del ciclo de render.",[15,2493,2494],{},"No son hooks para lógica de aplicación. Son herramientas de diagnóstico. Cuando un componente se actualiza “sin razón aparente”, ayudan a responder dos preguntas clave:",[737,2496,2497,2500],{},[740,2498,2499],{},"¿Qué dependencias reactivas se registraron durante el render?",[740,2501,2502],{},"¿Qué cambio concreto disparó el siguiente render?",[34,2504,921],{"id":920},[15,2506,2507],{},"A medida que una interfaz crece, el coste de renderizar “un poco de más” deja de ser invisible. Empiezan a aparecer síntomas claros:",[737,2509,2510,2513,2516,2519],{},[740,2511,2512],{},"Inputs que se sienten lentos.",[740,2514,2515],{},"Tablas que se recalculan o reordenan innecesariamente.",[740,2517,2518],{},"Componentes hijos que se actualizan por cambios irrelevantes.",[740,2520,2521,2488,2524,2527],{},[22,2522,2523],{},"computed",[22,2525,2526],{},"watch"," que parecen correctos, pero participan en renders excesivos.",[15,2529,2530,2531,2488,2533,2535],{},"En estos casos, leer únicamente el template no es suficiente. Necesitas entender la relación entre el render y el sistema reactivo. Aquí es donde ",[22,2532,2476],{},[22,2534,2479],{}," aportan valor: muestran qué dependencias se registraron y qué mutaciones provocaron nuevas actualizaciones.",[34,2537,947],{"id":946},[15,2539,2540,2541,2543],{},"Vue registra dependencias reactivas mientras renderiza un componente. Si durante ese proceso el template, un ",[22,2542,2523],{}," o cualquier expresión reactiva accede a una propiedad, Vue la asocia al efecto de render.",[15,2545,2546],{},"Los hooks de depuración permiten observar este proceso:",[737,2548,2549,2557],{},[740,2550,2551,952,2553,2556],{},[22,2552,2476],{},[22,2554,2555],{},"onRenderTracked()"," (Composition API) se ejecutan cuando una dependencia se registra durante el render.",[740,2558,2559,952,2561,2564],{},[22,2560,2479],{},[22,2562,2563],{},"onRenderTriggered()"," (Composition API) se ejecutan cuando una de esas dependencias cambia y provoca un nuevo render.",[15,2566,2567],{},"Ambos reciben un objeto de depuración con información como:",[737,2569,2570,2576,2582,2600],{},[740,2571,2572,2575],{},[22,2573,2574],{},"target",": el objeto reactivo implicado.",[740,2577,2578,2581],{},[22,2579,2580],{},"key",": la propiedad accedida o modificada.",[740,2583,2584,2586,2587,754,2590,754,2593,754,2596,2599],{},[22,2585,1188],{},": el tipo de operación (",[22,2588,2589],{},"get",[22,2591,2592],{},"set",[22,2594,2595],{},"add",[22,2597,2598],{},"delete",", etc.).",[740,2601,2602,2488,2605,2608],{},[22,2603,2604],{},"newValue",[22,2606,2607],{},"oldValue",", cuando aplica.",[15,2610,2611],{},"Dos matices importantes:",[737,2613,2614,2617],{},[740,2615,2616],{},"Son hooks pensados para desarrollo. No deben formar parte de la lógica de negocio.",[740,2618,2619,2620,50,2623,2626],{},"Su uso típico es con ",[22,2621,2622],{},"console.log()",[22,2624,2625],{},"debugger",", no mutando estado reactivo.",[15,2628,2629],{},"Intentar integrarlos en la lógica de la aplicación suele generar más problemas de los que resuelve.",[34,2631,1013],{"id":1012},[15,2633,2634],{},"Estos hooks tienen sentido cuando necesitas entender por qué un componente renderiza (o re-renderiza).",[15,2636,2637],{},"Casos comunes:",[737,2639,2640,2643,2646,2649],{},[740,2641,2642],{},"Un componente cambia de forma inesperada al modificar un estado aparentemente no relacionado.",[740,2644,2645],{},"Una vista compleja se actualiza demasiadas veces.",[740,2647,2648],{},"Estás optimizando rendimiento y sospechas dependencias innecesarias.",[740,2650,2651,2652,2654],{},"Un ",[22,2653,2523],{}," aparentemente simple provoca renders amplios.",[15,2656,2657],{},"Regla práctica: si la pregunta es “¿por qué este componente se está renderizando?”, estos hooks encajan perfectamente.",[34,2659,1040],{"id":1039},[15,2661,2662],{},"No son una herramienta permanente ni sustituyen una arquitectura clara.",[15,2664,2665],{},"Evítalos cuando:",[737,2667,2668,2681,2687,2690],{},[740,2669,2670,2671,754,2674,754,2677,50,2679,764],{},"El problema se entiende mejor revisando ",[22,2672,2673],{},"props",[22,2675,2676],{},"emits",[22,2678,2523],{},[22,2680,2526],{},[740,2682,2683,2684,2686],{},"Solo necesitas reaccionar a cambios específicos (usa ",[22,2685,2526],{},").",[740,2688,2689],{},"Pretendes almacenar trazas en estado reactivo del mismo componente.",[740,2691,2692],{},"Quieres usarlos como telemetría en producción.",[15,2694,2695],{},"También evita dejarlos en el código una vez terminado el debugging: generan ruido innecesario.",[34,2697,784],{"id":783},[1074,2699,2701],{"id":2700},"_1-usarlos-para-lógica-de-negocio","1. Usarlos para lógica de negocio",[15,2703,2704,2705,50,2707,764],{},"No están diseñados para disparar efectos funcionales. Si necesitas reaccionar a datos, usa ",[22,2706,2526],{},[22,2708,2523],{},[1074,2710,2712],{"id":2711},"_2-mutar-estado-dentro-del-hook","2. Mutar estado dentro del hook",[15,2714,2715,2716,2718],{},"Guardar eventos en un ",[22,2717,24],{}," puede introducir renders adicionales y contaminar la depuración.",[1074,2720,2722],{"id":2721},"_3-culpar-a-vue-en-lugar-del-alcance-reactivo","3. Culpar a Vue en lugar del alcance reactivo",[15,2724,2725],{},"Si el template accede a un objeto grande, Vue hará lo correcto: suscribirse a todo lo que se use.",[1074,2727,2729],{"id":2728},"_4-asumir-comportamiento-estable-en-producción","4. Asumir comportamiento estable en producción",[15,2731,2732],{},"Son herramientas de debugging, no API para comportamiento funcional.",[34,2734,2736],{"id":2735},"ejemplos-prácticos","Ejemplos prácticos",[1074,2738,2740],{"id":2739},"detectar-dependencias-accidentales","Detectar dependencias accidentales",[15,2742,2743,2744,2746],{},"Una tabla puede estar leyendo más estado del necesario (filtros, flags, metadatos). ",[22,2745,2476],{}," permite verlo claramente.",[1074,2748,2750],{"id":2749},"identificar-qué-dispara-un-render","Identificar qué dispara un render",[15,2752,2753,2755],{},[22,2754,2479],{}," muestra la clave exacta que provocó la actualización, eliminando suposiciones.",[1074,2757,2759],{"id":2758},"optimizar-componentes-conectados-a-stores","Optimizar componentes conectados a stores",[15,2761,2762],{},"Permite validar si el componente depende solo de lo necesario o si está sobre-suscrito a estado global.",[34,2764,2766],{"id":2765},"ejemplo-completo","Ejemplo completo",[74,2768,2770],{"className":76,"code":2769,"filename":873,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { computed, onRenderTracked, onRenderTriggered, reactive, ref } from 'vue'\n\nconst filters = reactive({\n  search: '',\n  showOnlyOpen: false\n})\n\nconst ui = reactive({\n  selectedId: 1,\n  panelOpen: true\n})\n\nconst tasks = ref([\n  { id: 1, title: 'Revisar PR', done: false, owner: 'Ana' },\n  { id: 2, title: 'Actualizar dependencias', done: true, owner: 'Luis' },\n  { id: 3, title: 'Documentar composable', done: false, owner: 'Ana' }\n])\n\nconst visibleTasks = computed(() => {\n  return tasks.value.filter(task => {\n    const matchesSearch = task.title\n      .toLowerCase()\n      .includes(filters.search.toLowerCase())\n\n    const matchesStatus = filters.showOnlyOpen ? !task.done : true\n\n    return matchesSearch && matchesStatus\n  })\n})\n\nonRenderTracked((event) => {\n  console.log('[renderTracked]', {\n    type: event.type,\n    key: String(event.key),\n    target: event.target\n  })\n})\n\nonRenderTriggered((event) => {\n  console.log('[renderTriggered]', {\n    type: event.type,\n    key: String(event.key),\n    oldValue: event.oldValue,\n    newValue: event.newValue\n  })\n})\n\nfunction toggleTask(taskId: number) {\n  const task = tasks.value.find(item => item.id === taskId)\n\n  if (!task) return\n\n  task.done = !task.done\n}\n\u003C\u002Fscript>\n",[22,2771,2772,2788,2799,2803,2817,2826,2834,2838,2842,2855,2865,2873,2877,2881,2895,2922,2946,2969,2974,2978,2997,3017,3030,3040,3055,3059,3083,3087,3100,3105,3109,3113,3131,3147,3152,3163,3168,3172,3176,3180,3195,3208,3212,3220,3225,3230,3234,3238,3242,3262,3292,3296,3309,3313,3325,3329],{"__ignoreMap":80},[84,2773,2774,2776,2778,2780,2782,2784,2786],{"class":86,"line":87},[84,2775,91],{"class":90},[84,2777,95],{"class":94},[84,2779,99],{"class":98},[84,2781,1161],{"class":98},[84,2783,184],{"class":90},[84,2785,1166],{"class":118},[84,2787,102],{"class":90},[84,2789,2790,2792,2795,2797],{"class":86,"line":105},[84,2791,109],{"class":108},[84,2793,2794],{"class":90}," { computed, onRenderTracked, onRenderTriggered, reactive, ref } ",[84,2796,115],{"class":108},[84,2798,119],{"class":118},[84,2800,2801],{"class":86,"line":122},[84,2802,126],{"emptyLinePlaceholder":125},[84,2804,2805,2807,2810,2812,2815],{"class":86,"line":129},[84,2806,132],{"class":108},[84,2808,2809],{"class":135}," filters",[84,2811,139],{"class":108},[84,2813,2814],{"class":98}," reactive",[84,2816,1876],{"class":90},[84,2818,2819,2822,2824],{"class":86,"line":154},[84,2820,2821],{"class":90},"  search: ",[84,2823,1288],{"class":118},[84,2825,1887],{"class":90},[84,2827,2828,2831],{"class":86,"line":159},[84,2829,2830],{"class":90},"  showOnlyOpen: ",[84,2832,2833],{"class":135},"false\n",[84,2835,2836],{"class":86,"line":178},[84,2837,1492],{"class":90},[84,2839,2840],{"class":86,"line":190},[84,2841,126],{"emptyLinePlaceholder":125},[84,2843,2844,2846,2849,2851,2853],{"class":86,"line":196},[84,2845,132],{"class":108},[84,2847,2848],{"class":135}," ui",[84,2850,139],{"class":108},[84,2852,2814],{"class":98},[84,2854,1876],{"class":90},[84,2856,2857,2860,2863],{"class":86,"line":201},[84,2858,2859],{"class":90},"  selectedId: ",[84,2861,2862],{"class":135},"1",[84,2864,1887],{"class":90},[84,2866,2867,2870],{"class":86,"line":217},[84,2868,2869],{"class":90},"  panelOpen: ",[84,2871,2872],{"class":135},"true\n",[84,2874,2875],{"class":86,"line":227},[84,2876,1492],{"class":90},[84,2878,2879],{"class":86,"line":232},[84,2880,126],{"emptyLinePlaceholder":125},[84,2882,2883,2885,2888,2890,2892],{"class":86,"line":237},[84,2884,132],{"class":108},[84,2886,2887],{"class":135}," tasks",[84,2889,139],{"class":108},[84,2891,142],{"class":98},[84,2893,2894],{"class":90},"([\n",[84,2896,2897,2900,2902,2905,2908,2911,2913,2916,2919],{"class":86,"line":253},[84,2898,2899],{"class":90},"  { id: ",[84,2901,2862],{"class":135},[84,2903,2904],{"class":90},", title: ",[84,2906,2907],{"class":118},"'Revisar PR'",[84,2909,2910],{"class":90},", done: ",[84,2912,148],{"class":135},[84,2914,2915],{"class":90},", owner: ",[84,2917,2918],{"class":118},"'Ana'",[84,2920,2921],{"class":90}," },\n",[84,2923,2924,2926,2929,2931,2934,2936,2939,2941,2944],{"class":86,"line":266},[84,2925,2899],{"class":90},[84,2927,2928],{"class":135},"2",[84,2930,2904],{"class":90},[84,2932,2933],{"class":118},"'Actualizar dependencias'",[84,2935,2910],{"class":90},[84,2937,2938],{"class":135},"true",[84,2940,2915],{"class":90},[84,2942,2943],{"class":118},"'Luis'",[84,2945,2921],{"class":90},[84,2947,2948,2950,2953,2955,2958,2960,2962,2964,2966],{"class":86,"line":271},[84,2949,2899],{"class":90},[84,2951,2952],{"class":135},"3",[84,2954,2904],{"class":90},[84,2956,2957],{"class":118},"'Documentar composable'",[84,2959,2910],{"class":90},[84,2961,148],{"class":135},[84,2963,2915],{"class":90},[84,2965,2918],{"class":118},[84,2967,2968],{"class":90}," }\n",[84,2970,2971],{"class":86,"line":281},[84,2972,2973],{"class":90},"])\n",[84,2975,2976],{"class":86,"line":286},[84,2977,126],{"emptyLinePlaceholder":125},[84,2979,2980,2982,2985,2987,2990,2993,2995],{"class":86,"line":296},[84,2981,132],{"class":108},[84,2983,2984],{"class":135}," visibleTasks",[84,2986,139],{"class":108},[84,2988,2989],{"class":98}," computed",[84,2991,2992],{"class":90},"(() ",[84,2994,172],{"class":108},[84,2996,175],{"class":90},[84,2998,2999,3001,3004,3007,3009,3012,3015],{"class":86,"line":315},[84,3000,557],{"class":108},[84,3002,3003],{"class":90}," tasks.value.",[84,3005,3006],{"class":98},"filter",[84,3008,145],{"class":90},[84,3010,3011],{"class":429},"task",[84,3013,3014],{"class":108}," =>",[84,3016,175],{"class":90},[84,3018,3019,3022,3025,3027],{"class":86,"line":321},[84,3020,3021],{"class":108},"    const",[84,3023,3024],{"class":135}," matchesSearch",[84,3026,139],{"class":108},[84,3028,3029],{"class":90}," task.title\n",[84,3031,3032,3035,3038],{"class":86,"line":331},[84,3033,3034],{"class":90},"      .",[84,3036,3037],{"class":98},"toLowerCase",[84,3039,635],{"class":90},[84,3041,3042,3044,3047,3050,3052],{"class":86,"line":336},[84,3043,3034],{"class":90},[84,3045,3046],{"class":98},"includes",[84,3048,3049],{"class":90},"(filters.search.",[84,3051,3037],{"class":98},[84,3053,3054],{"class":90},"())\n",[84,3056,3057],{"class":86,"line":354},[84,3058,126],{"emptyLinePlaceholder":125},[84,3060,3061,3063,3066,3068,3071,3074,3076,3079,3081],{"class":86,"line":360},[84,3062,3021],{"class":108},[84,3064,3065],{"class":135}," matchesStatus",[84,3067,139],{"class":108},[84,3069,3070],{"class":90}," filters.showOnlyOpen ",[84,3072,3073],{"class":108},"?",[84,3075,260],{"class":108},[84,3077,3078],{"class":90},"task.done ",[84,3080,1203],{"class":108},[84,3082,187],{"class":135},[84,3084,3085],{"class":86,"line":369},[84,3086,126],{"emptyLinePlaceholder":125},[84,3088,3089,3091,3094,3097],{"class":86,"line":1453},[84,3090,1903],{"class":108},[84,3092,3093],{"class":90}," matchesSearch ",[84,3095,3096],{"class":108},"&&",[84,3098,3099],{"class":90}," matchesStatus\n",[84,3101,3102],{"class":86,"line":1462},[84,3103,3104],{"class":90},"  })\n",[84,3106,3107],{"class":86,"line":1484},[84,3108,1492],{"class":90},[84,3110,3111],{"class":86,"line":1489},[84,3112,126],{"emptyLinePlaceholder":125},[84,3114,3115,3118,3121,3124,3127,3129],{"class":86,"line":1495},[84,3116,3117],{"class":98},"onRenderTracked",[84,3119,3120],{"class":90},"((",[84,3122,3123],{"class":429},"event",[84,3125,3126],{"class":90},") ",[84,3128,172],{"class":108},[84,3130,175],{"class":90},[84,3132,3133,3136,3139,3141,3144],{"class":86,"line":1500},[84,3134,3135],{"class":90},"  console.",[84,3137,3138],{"class":98},"log",[84,3140,145],{"class":90},[84,3142,3143],{"class":118},"'[renderTracked]'",[84,3145,3146],{"class":90},", {\n",[84,3148,3149],{"class":86,"line":1516},[84,3150,3151],{"class":90},"    type: event.type,\n",[84,3153,3154,3157,3160],{"class":86,"line":1533},[84,3155,3156],{"class":90},"    key: ",[84,3158,3159],{"class":98},"String",[84,3161,3162],{"class":90},"(event.key),\n",[84,3164,3165],{"class":86,"line":1538},[84,3166,3167],{"class":90},"    target: event.target\n",[84,3169,3170],{"class":86,"line":1545},[84,3171,3104],{"class":90},[84,3173,3174],{"class":86,"line":1554},[84,3175,1492],{"class":90},[84,3177,3178],{"class":86,"line":1563},[84,3179,126],{"emptyLinePlaceholder":125},[84,3181,3182,3185,3187,3189,3191,3193],{"class":86,"line":1570},[84,3183,3184],{"class":98},"onRenderTriggered",[84,3186,3120],{"class":90},[84,3188,3123],{"class":429},[84,3190,3126],{"class":90},[84,3192,172],{"class":108},[84,3194,175],{"class":90},[84,3196,3197,3199,3201,3203,3206],{"class":86,"line":1588},[84,3198,3135],{"class":90},[84,3200,3138],{"class":98},[84,3202,145],{"class":90},[84,3204,3205],{"class":118},"'[renderTriggered]'",[84,3207,3146],{"class":90},[84,3209,3210],{"class":86,"line":1593},[84,3211,3151],{"class":90},[84,3213,3214,3216,3218],{"class":86,"line":1598},[84,3215,3156],{"class":90},[84,3217,3159],{"class":98},[84,3219,3162],{"class":90},[84,3221,3222],{"class":86,"line":1607},[84,3223,3224],{"class":90},"    oldValue: event.oldValue,\n",[84,3226,3227],{"class":86,"line":1612},[84,3228,3229],{"class":90},"    newValue: event.newValue\n",[84,3231,3232],{"class":86,"line":1621},[84,3233,3104],{"class":90},[84,3235,3236],{"class":86,"line":1639},[84,3237,1492],{"class":90},[84,3239,3240],{"class":86,"line":1661},[84,3241,126],{"emptyLinePlaceholder":125},[84,3243,3244,3247,3250,3252,3255,3257,3260],{"class":86,"line":1666},[84,3245,3246],{"class":108},"function",[84,3248,3249],{"class":98}," toggleTask",[84,3251,145],{"class":90},[84,3253,3254],{"class":429},"taskId",[84,3256,1203],{"class":108},[84,3258,3259],{"class":135}," number",[84,3261,438],{"class":90},[84,3263,3264,3266,3269,3271,3273,3276,3278,3281,3283,3286,3289],{"class":86,"line":1688},[84,3265,443],{"class":108},[84,3267,3268],{"class":135}," task",[84,3270,139],{"class":108},[84,3272,3003],{"class":90},[84,3274,3275],{"class":98},"find",[84,3277,145],{"class":90},[84,3279,3280],{"class":429},"item",[84,3282,3014],{"class":108},[84,3284,3285],{"class":90}," item.id ",[84,3287,3288],{"class":108},"===",[84,3290,3291],{"class":90}," taskId)\n",[84,3293,3294],{"class":86,"line":1703},[84,3295,126],{"emptyLinePlaceholder":125},[84,3297,3298,3300,3302,3304,3307],{"class":86,"line":1717},[84,3299,1338],{"class":108},[84,3301,1341],{"class":90},[84,3303,1344],{"class":108},[84,3305,3306],{"class":90},"task) ",[84,3308,1530],{"class":108},[84,3310,3311],{"class":86,"line":1731},[84,3312,126],{"emptyLinePlaceholder":125},[84,3314,3315,3318,3320,3322],{"class":86,"line":1741},[84,3316,3317],{"class":90},"  task.done ",[84,3319,184],{"class":108},[84,3321,260],{"class":108},[84,3323,3324],{"class":90},"task.done\n",[84,3326,3327],{"class":86,"line":1746},[84,3328,193],{"class":90},[84,3330,3331,3333,3335],{"class":86,"line":1763},[84,3332,274],{"class":90},[84,3334,95],{"class":94},[84,3336,102],{"class":90},[74,3338,3340],{"className":76,"code":3339,"filename":1782,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nexport default {\n  name: 'TaskRenderDebugger',\n\n  data() {\n    return {\n      filters: {\n        search: '',\n        showOnlyOpen: false\n      },\n      ui: {\n        selectedId: 1,\n        panelOpen: true\n      },\n      tasks: [\n        { id: 1, title: 'Revisar PR', done: false, owner: 'Ana' },\n        { id: 2, title: 'Actualizar dependencias', done: true, owner: 'Luis' },\n        { id: 3, title: 'Documentar composable', done: false, owner: 'Ana' }\n      ]\n    }\n  },\n\n  computed: {\n    visibleTasks() {\n      return this.tasks.filter(task => {\n        const matchesSearch = task.title\n          .toLowerCase()\n          .includes(this.filters.search.toLowerCase())\n\n        const matchesStatus = this.filters.showOnlyOpen ? !task.done : true\n\n        return matchesSearch && matchesStatus\n      })\n    }\n  },\n\n  renderTracked(event) {\n    console.log('[renderTracked]', {\n      type: event.type,\n      key: String(event.key),\n      target: event.target\n    })\n  },\n\n  renderTriggered(event) {\n    console.log('[renderTriggered]', {\n      type: event.type,\n      key: String(event.key),\n      oldValue: event.oldValue,\n      newValue: event.newValue\n    })\n  },\n\n  methods: {\n    toggleTask(taskId) {\n      const task = this.tasks.find(item => item.id === taskId)\n\n      if (!task) return\n\n      task.done = !task.done\n    }\n  }\n}\n\u003C\u002Fscript>\n",[22,3341,3342,3356,3364,3373,3377,3383,3389,3394,3403,3410,3415,3420,3429,3436,3440,3445,3466,3486,3506,3511,3515,3519,3523,3528,3535,3555,3566,3575,3592,3596,3619,3623,3634,3639,3643,3647,3651,3662,3675,3680,3689,3694,3699,3703,3707,3718,3730,3734,3742,3747,3752,3756,3760,3764,3768,3779,3805,3809,3821,3825,3836,3840,3844,3848],{"__ignoreMap":80},[84,3343,3344,3346,3348,3350,3352,3354],{"class":86,"line":87},[84,3345,91],{"class":90},[84,3347,95],{"class":94},[84,3349,1161],{"class":98},[84,3351,184],{"class":90},[84,3353,1166],{"class":118},[84,3355,102],{"class":90},[84,3357,3358,3360,3362],{"class":86,"line":105},[84,3359,418],{"class":108},[84,3361,1870],{"class":108},[84,3363,175],{"class":90},[84,3365,3366,3368,3371],{"class":86,"line":122},[84,3367,1881],{"class":90},[84,3369,3370],{"class":118},"'TaskRenderDebugger'",[84,3372,1887],{"class":90},[84,3374,3375],{"class":86,"line":129},[84,3376,126],{"emptyLinePlaceholder":125},[84,3378,3379,3381],{"class":86,"line":154},[84,3380,1896],{"class":98},[84,3382,1307],{"class":90},[84,3384,3385,3387],{"class":86,"line":159},[84,3386,1903],{"class":108},[84,3388,175],{"class":90},[84,3390,3391],{"class":86,"line":178},[84,3392,3393],{"class":90},"      filters: {\n",[84,3395,3396,3399,3401],{"class":86,"line":190},[84,3397,3398],{"class":90},"        search: ",[84,3400,1288],{"class":118},[84,3402,1887],{"class":90},[84,3404,3405,3408],{"class":86,"line":196},[84,3406,3407],{"class":90},"        showOnlyOpen: ",[84,3409,2833],{"class":135},[84,3411,3412],{"class":86,"line":201},[84,3413,3414],{"class":90},"      },\n",[84,3416,3417],{"class":86,"line":217},[84,3418,3419],{"class":90},"      ui: {\n",[84,3421,3422,3425,3427],{"class":86,"line":227},[84,3423,3424],{"class":90},"        selectedId: ",[84,3426,2862],{"class":135},[84,3428,1887],{"class":90},[84,3430,3431,3434],{"class":86,"line":232},[84,3432,3433],{"class":90},"        panelOpen: ",[84,3435,2872],{"class":135},[84,3437,3438],{"class":86,"line":237},[84,3439,3414],{"class":90},[84,3441,3442],{"class":86,"line":253},[84,3443,3444],{"class":90},"      tasks: [\n",[84,3446,3447,3450,3452,3454,3456,3458,3460,3462,3464],{"class":86,"line":266},[84,3448,3449],{"class":90},"        { id: ",[84,3451,2862],{"class":135},[84,3453,2904],{"class":90},[84,3455,2907],{"class":118},[84,3457,2910],{"class":90},[84,3459,148],{"class":135},[84,3461,2915],{"class":90},[84,3463,2918],{"class":118},[84,3465,2921],{"class":90},[84,3467,3468,3470,3472,3474,3476,3478,3480,3482,3484],{"class":86,"line":271},[84,3469,3449],{"class":90},[84,3471,2928],{"class":135},[84,3473,2904],{"class":90},[84,3475,2933],{"class":118},[84,3477,2910],{"class":90},[84,3479,2938],{"class":135},[84,3481,2915],{"class":90},[84,3483,2943],{"class":118},[84,3485,2921],{"class":90},[84,3487,3488,3490,3492,3494,3496,3498,3500,3502,3504],{"class":86,"line":281},[84,3489,3449],{"class":90},[84,3491,2952],{"class":135},[84,3493,2904],{"class":90},[84,3495,2957],{"class":118},[84,3497,2910],{"class":90},[84,3499,148],{"class":135},[84,3501,2915],{"class":90},[84,3503,2918],{"class":118},[84,3505,2968],{"class":90},[84,3507,3508],{"class":86,"line":286},[84,3509,3510],{"class":90},"      ]\n",[84,3512,3513],{"class":86,"line":296},[84,3514,1936],{"class":90},[84,3516,3517],{"class":86,"line":315},[84,3518,1941],{"class":90},[84,3520,3521],{"class":86,"line":321},[84,3522,126],{"emptyLinePlaceholder":125},[84,3524,3525],{"class":86,"line":331},[84,3526,3527],{"class":90},"  computed: {\n",[84,3529,3530,3533],{"class":86,"line":336},[84,3531,3532],{"class":98},"    visibleTasks",[84,3534,1307],{"class":90},[84,3536,3537,3540,3542,3545,3547,3549,3551,3553],{"class":86,"line":354},[84,3538,3539],{"class":108},"      return",[84,3541,2078],{"class":135},[84,3543,3544],{"class":90},".tasks.",[84,3546,3006],{"class":98},[84,3548,145],{"class":90},[84,3550,3011],{"class":429},[84,3552,3014],{"class":108},[84,3554,175],{"class":90},[84,3556,3557,3560,3562,3564],{"class":86,"line":360},[84,3558,3559],{"class":108},"        const",[84,3561,3024],{"class":135},[84,3563,139],{"class":108},[84,3565,3029],{"class":90},[84,3567,3568,3571,3573],{"class":86,"line":369},[84,3569,3570],{"class":90},"          .",[84,3572,3037],{"class":98},[84,3574,635],{"class":90},[84,3576,3577,3579,3581,3583,3585,3588,3590],{"class":86,"line":1453},[84,3578,3570],{"class":90},[84,3580,3046],{"class":98},[84,3582,145],{"class":90},[84,3584,2151],{"class":135},[84,3586,3587],{"class":90},".filters.search.",[84,3589,3037],{"class":98},[84,3591,3054],{"class":90},[84,3593,3594],{"class":86,"line":1462},[84,3595,126],{"emptyLinePlaceholder":125},[84,3597,3598,3600,3602,3604,3606,3609,3611,3613,3615,3617],{"class":86,"line":1484},[84,3599,3559],{"class":108},[84,3601,3065],{"class":135},[84,3603,139],{"class":108},[84,3605,2078],{"class":135},[84,3607,3608],{"class":90},".filters.showOnlyOpen ",[84,3610,3073],{"class":108},[84,3612,260],{"class":108},[84,3614,3078],{"class":90},[84,3616,1203],{"class":108},[84,3618,187],{"class":135},[84,3620,3621],{"class":86,"line":1489},[84,3622,126],{"emptyLinePlaceholder":125},[84,3624,3625,3628,3630,3632],{"class":86,"line":1495},[84,3626,3627],{"class":108},"        return",[84,3629,3093],{"class":90},[84,3631,3096],{"class":108},[84,3633,3099],{"class":90},[84,3635,3636],{"class":86,"line":1500},[84,3637,3638],{"class":90},"      })\n",[84,3640,3641],{"class":86,"line":1516},[84,3642,1936],{"class":90},[84,3644,3645],{"class":86,"line":1533},[84,3646,1941],{"class":90},[84,3648,3649],{"class":86,"line":1538},[84,3650,126],{"emptyLinePlaceholder":125},[84,3652,3653,3656,3658,3660],{"class":86,"line":1545},[84,3654,3655],{"class":98},"  renderTracked",[84,3657,145],{"class":90},[84,3659,3123],{"class":429},[84,3661,438],{"class":90},[84,3663,3664,3667,3669,3671,3673],{"class":86,"line":1554},[84,3665,3666],{"class":90},"    console.",[84,3668,3138],{"class":98},[84,3670,145],{"class":90},[84,3672,3143],{"class":118},[84,3674,3146],{"class":90},[84,3676,3677],{"class":86,"line":1563},[84,3678,3679],{"class":90},"      type: event.type,\n",[84,3681,3682,3685,3687],{"class":86,"line":1570},[84,3683,3684],{"class":90},"      key: ",[84,3686,3159],{"class":98},[84,3688,3162],{"class":90},[84,3690,3691],{"class":86,"line":1588},[84,3692,3693],{"class":90},"      target: event.target\n",[84,3695,3696],{"class":86,"line":1593},[84,3697,3698],{"class":90},"    })\n",[84,3700,3701],{"class":86,"line":1598},[84,3702,1941],{"class":90},[84,3704,3705],{"class":86,"line":1607},[84,3706,126],{"emptyLinePlaceholder":125},[84,3708,3709,3712,3714,3716],{"class":86,"line":1612},[84,3710,3711],{"class":98},"  renderTriggered",[84,3713,145],{"class":90},[84,3715,3123],{"class":429},[84,3717,438],{"class":90},[84,3719,3720,3722,3724,3726,3728],{"class":86,"line":1621},[84,3721,3666],{"class":90},[84,3723,3138],{"class":98},[84,3725,145],{"class":90},[84,3727,3205],{"class":118},[84,3729,3146],{"class":90},[84,3731,3732],{"class":86,"line":1639},[84,3733,3679],{"class":90},[84,3735,3736,3738,3740],{"class":86,"line":1661},[84,3737,3684],{"class":90},[84,3739,3159],{"class":98},[84,3741,3162],{"class":90},[84,3743,3744],{"class":86,"line":1666},[84,3745,3746],{"class":90},"      oldValue: event.oldValue,\n",[84,3748,3749],{"class":86,"line":1688},[84,3750,3751],{"class":90},"      newValue: event.newValue\n",[84,3753,3754],{"class":86,"line":1703},[84,3755,3698],{"class":90},[84,3757,3758],{"class":86,"line":1717},[84,3759,1941],{"class":90},[84,3761,3762],{"class":86,"line":1731},[84,3763,126],{"emptyLinePlaceholder":125},[84,3765,3766],{"class":86,"line":1741},[84,3767,1950],{"class":90},[84,3769,3770,3773,3775,3777],{"class":86,"line":1746},[84,3771,3772],{"class":98},"    toggleTask",[84,3774,145],{"class":90},[84,3776,3254],{"class":429},[84,3778,438],{"class":90},[84,3780,3781,3783,3785,3787,3789,3791,3793,3795,3797,3799,3801,3803],{"class":86,"line":1763},[84,3782,1964],{"class":108},[84,3784,3268],{"class":135},[84,3786,139],{"class":108},[84,3788,2078],{"class":135},[84,3790,3544],{"class":90},[84,3792,3275],{"class":98},[84,3794,145],{"class":90},[84,3796,3280],{"class":429},[84,3798,3014],{"class":108},[84,3800,3285],{"class":90},[84,3802,3288],{"class":108},[84,3804,3291],{"class":90},[84,3806,3807],{"class":86,"line":1772},[84,3808,126],{"emptyLinePlaceholder":125},[84,3810,3811,3813,3815,3817,3819],{"class":86,"line":2283},[84,3812,1987],{"class":108},[84,3814,1341],{"class":90},[84,3816,1344],{"class":108},[84,3818,3306],{"class":90},[84,3820,1530],{"class":108},[84,3822,3823],{"class":86,"line":2288},[84,3824,126],{"emptyLinePlaceholder":125},[84,3826,3827,3830,3832,3834],{"class":86,"line":2307},[84,3828,3829],{"class":90},"      task.done ",[84,3831,184],{"class":108},[84,3833,260],{"class":108},[84,3835,3324],{"class":90},[84,3837,3838],{"class":86,"line":2320},[84,3839,1936],{"class":90},[84,3841,3842],{"class":86,"line":2333},[84,3843,485],{"class":90},[84,3845,3846],{"class":86,"line":2346},[84,3847,193],{"class":90},[84,3849,3850,3852,3854],{"class":86,"line":2355},[84,3851,274],{"class":90},[84,3853,95],{"class":94},[84,3855,102],{"class":90},[15,3857,3858],{},"Este ejemplo permite observar claramente:",[737,3860,3861,3864,3867],{},[740,3862,3863],{},"Qué dependencias se registran al renderizar.",[740,3865,3866],{},"Qué cambios provocan nuevas actualizaciones.",[740,3868,3869],{},"Cómo el alcance del componente afecta su reactividad.",[34,3871,2406],{"id":2405},[15,3873,3874,2488,3876,3878],{},[22,3875,2476],{},[22,3877,2479],{}," no son herramientas decorativas ni de observabilidad general. Son instrumentos de diagnóstico para entender el render desde dentro.",[15,3880,3881],{},"Bien utilizados, permiten:",[737,3883,3884,3887,3890],{},[740,3885,3886],{},"Detectar dependencias accidentales.",[740,3888,3889],{},"Reducir renders innecesarios.",[740,3891,3892,3893,764],{},"Comprender mejor la relación entre template, estado reactivo y ",[22,3894,2523],{},[823,3896,3897],{},[15,3898,3899],{},"Antes de optimizar a ciegas, observa qué dependencias se registran y qué cambios están disparando el render.",[835,3901,3902],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}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);}",{"title":80,"searchDepth":105,"depth":105,"links":3904},[3905,3906,3907,3908,3909,3915,3920,3921],{"id":920,"depth":105,"text":921},{"id":946,"depth":105,"text":947},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":783,"depth":105,"text":784,"children":3910},[3911,3912,3913,3914],{"id":2700,"depth":122,"text":2701},{"id":2711,"depth":122,"text":2712},{"id":2721,"depth":122,"text":2722},{"id":2728,"depth":122,"text":2729},{"id":2735,"depth":105,"text":2736,"children":3916},[3917,3918,3919],{"id":2739,"depth":122,"text":2740},{"id":2749,"depth":122,"text":2750},{"id":2758,"depth":122,"text":2759},{"id":2765,"depth":105,"text":2766},{"id":2405,"depth":105,"text":2406},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1773802976\u002Fvue-lifecycle-render-debug-rendertracked-rendertriggered_ekkgg1.png","Ilustración de depuración del render en Vue con renderTracked y renderTriggered","2026-03-18","Cómo usar renderTracked, renderTriggered, onRenderTracked y onRenderTriggered para entender qué dependencias entran en un render y qué cambios están forzando nuevas actualizaciones.",{"updatedAt":3927,"coverCaption":3928,"author":868,"keywords":3929},"2026-03-17T22:00:00-05:00","renderTracked y renderTriggered ayudan a ver qué dependencia entra al render y cuál lo vuelve a disparar.",[870,2476,2479,3117,3184],"\u002Fblog\u002Fvue-lifecycle-render-debug-rendertracked-rendertriggered.es",[3932],{"headline":2467,"author":3933,"datePublished":3927,"@type":880},{"name":868,"@type":879},{"title":2467,"description":3925},"blog\u002Fvue-lifecycle-render-debug-rendertracked-rendertriggered.es",[3937,3938,3941,3944,3947],{"tag":2453,"color":2454},{"tag":3939,"color":3940},"Depuración","#C44569",{"tag":3942,"color":3943},"Renderizado","#E17055",{"tag":3945,"color":3946},"Reactividad","#1D5BA1",{"tag":2462,"color":2463},"5mr-vMalD_jw1VlwSiz5cmZRVM9obP8ZlRFNu2rgR88",{"id":3950,"title":3951,"body":3952,"cover":5906,"coverAlt":5907,"date":5908,"description":5909,"draft":852,"extension":853,"lab":882,"locale":864,"meta":5910,"navigation":125,"path":5916,"schemaOrg":5917,"seo":5920,"series":2447,"seriesDescription":2448,"seriesOrder":178,"seriesTitle":2449,"slug":882,"stem":5921,"tags":5922,"__hash__":5929},"blog\u002Fblog\u002Fvue-lifecycle-error-handling-errorcaptured.es.md","Ciclos de vida en Vue: manejo de errores con errorCaptured",{"type":8,"value":3953,"toc":5886},[3954,3961,3964,3970,3972,3975,3981,3983,3996,3999,4023,4026,4046,4049,4066,4074,4076,4081,4084,4098,4104,4106,4112,4114,4141,4146,4148,4152,4155,4158,4165,4171,4174,4178,4181,4184,4188,4194,4196,4200,4203,4207,4210,4214,4217,4219,5119,5866,5869,5874,5876,5881,5884],[11,3955,3957,3958],{"id":3956},"ciclos-de-vida-en-vue-manejo-de-errores-con-errorcaptured","Ciclos de vida en Vue: manejo de errores con ",[22,3959,3960],{},"errorCaptured",[15,3962,3963],{},"Los errores en la interfaz rara vez avisan. Un widget deja de renderizar, una dependencia de terceros lanza una excepción o una vista hija falla durante una actualización, y de pronto el usuario se queda con un bloque en blanco o una pantalla incompleta.",[15,3965,3966,3967,3969],{},"Ahí es donde ",[22,3968,3960],{}," cobra valor. No evita que ocurran errores, pero te permite contenerlos en el lugar adecuado, registrar contexto útil y ofrecer una salida digna sin comprometer toda la UI.",[34,3971,921],{"id":920},[15,3973,3974],{},"A medida que una aplicación crece, no todos los componentes tienen el mismo nivel de confianza. Hay piezas muy estables y otras más frágiles: integraciones con librerías externas, widgets complejos, paneles que dependen de datos cambiantes o componentes en evolución constante.",[15,3976,3977,3978,3980],{},"Si los fallos se propagan sin control, el impacto suele ser desproporcionado. Un error en una tarjeta secundaria puede terminar afectando toda una pantalla. ",[22,3979,3960],{}," permite establecer límites: este bloque puede fallar, pero el resto de la página debe seguir funcionando.",[34,3982,947],{"id":946},[15,3984,3985,3987,3988,3991,3992,3995],{},[22,3986,3960],{}," es un hook de la Options API, y ",[22,3989,3990],{},"onErrorCaptured()"," es su equivalente en Composition API. Ambos permiten interceptar errores que ocurren en ",[958,3993,3994],{},"componentes descendientes"," del componente actual.",[15,3997,3998],{},"Esto incluye errores originados en partes habituales del flujo de Vue, como:",[737,4000,4001,4003,4006,4009,4014,4017,4020],{},[740,4002,3942],{},[740,4004,4005],{},"Event handlers",[740,4007,4008],{},"Hooks del ciclo de vida",[740,4010,4011],{},[22,4012,4013],{},"setup()",[740,4015,4016],{},"Watchers",[740,4018,4019],{},"Directivas personalizadas",[740,4021,4022],{},"Hooks de transición",[15,4024,4025],{},"El hook recibe tres argumentos:",[737,4027,4028,4034,4040],{},[740,4029,4030,4033],{},[22,4031,4032],{},"err",": el error capturado",[740,4035,4036,4039],{},[22,4037,4038],{},"instance",": la instancia del componente que lanzó el error",[740,4041,4042,4045],{},[22,4043,4044],{},"info",": una pista sobre el origen (por ejemplo, si ocurrió en render o en un evento)",[15,4047,4048],{},"Hay dos aspectos clave a tener en cuenta:",[737,4050,4051,4054],{},[740,4052,4053],{},"Solo captura errores de componentes hijos (y descendientes). No intercepta errores del mismo componente donde se declara.",[740,4055,4056,4057,4059,4060,4062,4063,764],{},"Si devuelve ",[22,4058,148],{},", detiene la propagación del error hacia otros hooks ",[22,4061,3960],{}," superiores y hacia ",[22,4064,4065],{},"app.config.errorHandler",[15,4067,4068,4069,4073],{},"En la práctica, funciona como un ",[4070,4071,4072],"em",{},"error boundary"," local. Lo habitual es usarlo para tres objetivos simultáneos: registrar el error, mostrar un fallback y evitar que una parte aislada de la interfaz derribe el resto.",[34,4075,1013],{"id":1012},[15,4077,4078,4080],{},[22,4079,3960],{}," encaja bien cuando necesitas aislar fallos en una zona concreta de la UI.",[15,4082,4083],{},"Casos típicos:",[737,4085,4086,4089,4092,4095],{},[740,4087,4088],{},"Un dashboard con widgets independientes donde una tarjeta puede fallar sin romper toda la vista.",[740,4090,4091],{},"Un editor, gráfico o componente de terceros que conviene encapsular detrás de un fallback.",[740,4093,4094],{},"Un área de administración donde ciertos módulos se cargan de forma condicional y no deberían comprometer la navegación principal.",[740,4096,4097],{},"Un layout con bloques reutilizables donde quieres centralizar logging y mostrar mensajes útiles al usuario.",[15,4099,4100,4101,4103],{},"Regla práctica: si un componente hijo puede fallar y quieres contener el impacto, ",[22,4102,3960],{}," es una buena solución.",[34,4105,1040],{"id":1039},[15,4107,4108,4109,4111],{},"No conviene usar ",[22,4110,3960],{}," como solución universal.",[15,4113,1046],{},[737,4115,4116,4128,4135,4138],{},[740,4117,4118,4119,754,4122,754,4125,2686],{},"El problema es un error esperado de negocio; en ese caso es mejor modelarlo como estado (",[22,4120,4121],{},"loading",[22,4123,4124],{},"empty",[22,4126,4127],{},"error",[740,4129,4130,4131,4134],{},"Solo necesitas manejar errores de una operación concreta; un ",[22,4132,4133],{},"try\u002Fcatch"," suele ser más claro.",[740,4136,4137],{},"Se utiliza para ocultar errores sin registrarlos ni corregir su causa.",[740,4139,4140],{},"La recuperación depende de reiniciar toda la vista; probablemente el boundary está mal ubicado.",[15,4142,4143,4145],{},[22,4144,3960],{}," no reemplaza una estrategia de manejo de errores: la complementa.",[34,4147,784],{"id":783},[1074,4149,4151],{"id":4150},"_1-esperar-que-capture-errores-del-mismo-componente","1. Esperar que capture errores del mismo componente",[15,4153,4154],{},"Este hook está diseñado para descendientes. Si el error ocurre en el mismo componente donde se declara, no será interceptado.",[15,4156,4157],{},"La solución es mover el boundary un nivel superior o encapsular la parte frágil en un componente hijo.",[1074,4159,4161,4162,4164],{"id":4160},"_2-devolver-false-siempre","2. Devolver ",[22,4163,148],{}," siempre",[15,4166,4167,4168,4170],{},"Devolver ",[22,4169,148],{}," detiene la propagación. Puede ser útil si el error ya fue manejado, pero hacerlo sin criterio puede impedir el monitoreo global.",[15,4172,4173],{},"Devuélvelo solo cuando realmente hayas absorbido el error y registrado lo necesario.",[1074,4175,4177],{"id":4176},"_3-mostrar-fallback-sin-ofrecer-salida","3. Mostrar fallback sin ofrecer salida",[15,4179,4180],{},"Un mensaje como “algo salió mal” no es suficiente si el usuario no puede actuar.",[15,4182,4183],{},"Siempre que tenga sentido, añade opciones como reintentar, recargar o volver a un estado válido.",[1074,4185,4187],{"id":4186},"_4-usarlo-para-ocultar-código-frágil","4. Usarlo para ocultar código frágil",[15,4189,4190,4191,4193],{},"Si un componente falla con frecuencia, ",[22,4192,3960],{}," no debería convertirse en una solución permanente. Sirve para mitigar impacto, no para normalizar problemas estructurales.",[34,4195,2736],{"id":2735},[1074,4197,4199],{"id":4198},"dashboard-con-tarjetas-independientes","Dashboard con tarjetas independientes",[15,4201,4202],{},"Si una tarjeta falla, puedes reemplazar solo ese bloque y mantener funcional el resto del tablero.",[1074,4204,4206],{"id":4205},"componentes-de-terceros","Componentes de terceros",[15,4208,4209],{},"Algunas librerías no fallan de forma controlada. Encapsularlas en un boundary permite evitar que rompan toda la vista.",[1074,4211,4213],{"id":4212},"módulos-opcionales","Módulos opcionales",[15,4215,4216],{},"En paneles complejos, ciertos módulos no son críticos. Es preferible degradar esa sección sin afectar la navegación principal.",[34,4218,2766],{"id":2765},[74,4220,4222],{"className":76,"code":4221,"filename":873,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { computed, defineComponent, h, onErrorCaptured, ref } from 'vue'\n\nconst hasError = ref(false)\nconst errorMessage = ref('')\nconst errorSource = ref('')\nconst retryKey = ref(0)\n\nconst RiskyStatsPanel = defineComponent({\n  name: 'RiskyStatsPanel',\n  setup() {\n    const shouldFail = ref(false)\n\n    const stats = computed(() => {\n      if (shouldFail.value) {\n        throw new Error('No fue posible calcular las métricas del tablero.')\n      }\n\n      return [\n        { label: 'Pendientes', value: 14 },\n        { label: 'Completadas', value: 29 },\n        { label: 'Bloqueadas', value: 3 }\n      ]\n    })\n\n    return () =>\n      h('section', { class: 'stats-panel' }, [\n        h('h3', 'Resumen de tareas'),\n        h(\n          'button',\n          {\n            type: 'button',\n            onClick: () => {\n              shouldFail.value = true\n            }\n          },\n          'Simular fallo del widget'\n        ),\n        h(\n          'ul',\n          stats.value.map(stat =>\n            h('li', { key: stat.label }, `${stat.label}: ${stat.value}`)\n          )\n        )\n      ])\n  }\n})\n\nonErrorCaptured((error, instance, info) => {\n  hasError.value = true\n  errorMessage.value =\n    error instanceof Error ? error.message : 'Ocurrió un error inesperado.'\n  errorSource.value = info\n\n  console.error('Widget capturado por el boundary del dashboard', {\n    error,\n    component: instance?.type,\n    info\n  })\n\n  return false\n})\n\nfunction retry() {\n  hasError.value = false\n  errorMessage.value = ''\n  errorSource.value = ''\n  retryKey.value += 1\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection class=\"dashboard-card\">\n    \u003Cheader>\n      \u003Ch2>Estado del dashboard\u003C\u002Fh2>\n      \u003Cp>\n        Si un widget falla, el resto de la pantalla puede seguir funcionando.\n      \u003C\u002Fp>\n    \u003C\u002Fheader>\n\n    \u003Cdiv v-if=\"hasError\" class=\"error-box\">\n      \u003Cstrong>Este bloque no pudo renderizarse.\u003C\u002Fstrong>\n      \u003Cp>{{ errorMessage }}\u003C\u002Fp>\n      \u003Csmall>Origen: {{ errorSource }}\u003C\u002Fsmall>\n      \u003Cbutton type=\"button\" @click=\"retry\">Reintentar\u003C\u002Fbutton>\n    \u003C\u002Fdiv>\n\n    \u003CRiskyStatsPanel v-else :key=\"retryKey\" \u002F>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[22,4223,4224,4240,4251,4255,4272,4288,4305,4323,4327,4340,4349,4356,4373,4377,4394,4401,4416,4420,4424,4431,4447,4461,4474,4478,4482,4486,4495,4514,4532,4539,4546,4551,4561,4573,4582,4587,4592,4597,4602,4608,4615,4631,4669,4674,4679,4684,4688,4692,4696,4719,4728,4735,4753,4763,4767,4780,4785,4790,4795,4799,4803,4809,4813,4817,4826,4834,4843,4851,4863,4868,4877,4882,4891,4908,4918,4932,4941,4947,4957,4966,4971,4995,5009,5022,5037,5066,5075,5080,5101,5110],{"__ignoreMap":80},[84,4225,4226,4228,4230,4232,4234,4236,4238],{"class":86,"line":87},[84,4227,91],{"class":90},[84,4229,95],{"class":94},[84,4231,99],{"class":98},[84,4233,1161],{"class":98},[84,4235,184],{"class":90},[84,4237,1166],{"class":118},[84,4239,102],{"class":90},[84,4241,4242,4244,4247,4249],{"class":86,"line":105},[84,4243,109],{"class":108},[84,4245,4246],{"class":90}," { computed, defineComponent, h, onErrorCaptured, ref } ",[84,4248,115],{"class":108},[84,4250,119],{"class":118},[84,4252,4253],{"class":86,"line":122},[84,4254,126],{"emptyLinePlaceholder":125},[84,4256,4257,4259,4262,4264,4266,4268,4270],{"class":86,"line":129},[84,4258,132],{"class":108},[84,4260,4261],{"class":135}," hasError",[84,4263,139],{"class":108},[84,4265,142],{"class":98},[84,4267,145],{"class":90},[84,4269,148],{"class":135},[84,4271,151],{"class":90},[84,4273,4274,4276,4278,4280,4282,4284,4286],{"class":86,"line":154},[84,4275,132],{"class":108},[84,4277,1279],{"class":135},[84,4279,139],{"class":108},[84,4281,142],{"class":98},[84,4283,145],{"class":90},[84,4285,1288],{"class":118},[84,4287,151],{"class":90},[84,4289,4290,4292,4295,4297,4299,4301,4303],{"class":86,"line":159},[84,4291,132],{"class":108},[84,4293,4294],{"class":135}," errorSource",[84,4296,139],{"class":108},[84,4298,142],{"class":98},[84,4300,145],{"class":90},[84,4302,1288],{"class":118},[84,4304,151],{"class":90},[84,4306,4307,4309,4312,4314,4316,4318,4321],{"class":86,"line":178},[84,4308,132],{"class":108},[84,4310,4311],{"class":135}," retryKey",[84,4313,139],{"class":108},[84,4315,142],{"class":98},[84,4317,145],{"class":90},[84,4319,4320],{"class":135},"0",[84,4322,151],{"class":90},[84,4324,4325],{"class":86,"line":190},[84,4326,126],{"emptyLinePlaceholder":125},[84,4328,4329,4331,4334,4336,4338],{"class":86,"line":196},[84,4330,132],{"class":108},[84,4332,4333],{"class":135}," RiskyStatsPanel",[84,4335,139],{"class":108},[84,4337,1873],{"class":98},[84,4339,1876],{"class":90},[84,4341,4342,4344,4347],{"class":86,"line":201},[84,4343,1881],{"class":90},[84,4345,4346],{"class":118},"'RiskyStatsPanel'",[84,4348,1887],{"class":90},[84,4350,4351,4354],{"class":86,"line":217},[84,4352,4353],{"class":98},"  setup",[84,4355,1307],{"class":90},[84,4357,4358,4360,4363,4365,4367,4369,4371],{"class":86,"line":227},[84,4359,3021],{"class":108},[84,4361,4362],{"class":135}," shouldFail",[84,4364,139],{"class":108},[84,4366,142],{"class":98},[84,4368,145],{"class":90},[84,4370,148],{"class":135},[84,4372,151],{"class":90},[84,4374,4375],{"class":86,"line":232},[84,4376,126],{"emptyLinePlaceholder":125},[84,4378,4379,4381,4384,4386,4388,4390,4392],{"class":86,"line":237},[84,4380,3021],{"class":108},[84,4382,4383],{"class":135}," stats",[84,4385,139],{"class":108},[84,4387,2989],{"class":98},[84,4389,2992],{"class":90},[84,4391,172],{"class":108},[84,4393,175],{"class":90},[84,4395,4396,4398],{"class":86,"line":253},[84,4397,1987],{"class":108},[84,4399,4400],{"class":90}," (shouldFail.value) {\n",[84,4402,4403,4405,4407,4409,4411,4414],{"class":86,"line":266},[84,4404,1998],{"class":108},[84,4406,1355],{"class":108},[84,4408,1358],{"class":98},[84,4410,145],{"class":90},[84,4412,4413],{"class":118},"'No fue posible calcular las métricas del tablero.'",[84,4415,151],{"class":90},[84,4417,4418],{"class":86,"line":271},[84,4419,2013],{"class":90},[84,4421,4422],{"class":86,"line":281},[84,4423,126],{"emptyLinePlaceholder":125},[84,4425,4426,4428],{"class":86,"line":286},[84,4427,3539],{"class":108},[84,4429,4430],{"class":90}," [\n",[84,4432,4433,4436,4439,4442,4445],{"class":86,"line":296},[84,4434,4435],{"class":90},"        { label: ",[84,4437,4438],{"class":118},"'Pendientes'",[84,4440,4441],{"class":90},", value: ",[84,4443,4444],{"class":135},"14",[84,4446,2921],{"class":90},[84,4448,4449,4451,4454,4456,4459],{"class":86,"line":315},[84,4450,4435],{"class":90},[84,4452,4453],{"class":118},"'Completadas'",[84,4455,4441],{"class":90},[84,4457,4458],{"class":135},"29",[84,4460,2921],{"class":90},[84,4462,4463,4465,4468,4470,4472],{"class":86,"line":321},[84,4464,4435],{"class":90},[84,4466,4467],{"class":118},"'Bloqueadas'",[84,4469,4441],{"class":90},[84,4471,2952],{"class":135},[84,4473,2968],{"class":90},[84,4475,4476],{"class":86,"line":331},[84,4477,3510],{"class":90},[84,4479,4480],{"class":86,"line":336},[84,4481,3698],{"class":90},[84,4483,4484],{"class":86,"line":354},[84,4485,126],{"emptyLinePlaceholder":125},[84,4487,4488,4490,4492],{"class":86,"line":360},[84,4489,1903],{"class":108},[84,4491,169],{"class":90},[84,4493,4494],{"class":108},"=>\n",[84,4496,4497,4500,4502,4505,4508,4511],{"class":86,"line":369},[84,4498,4499],{"class":98},"      h",[84,4501,145],{"class":90},[84,4503,4504],{"class":118},"'section'",[84,4506,4507],{"class":90},", { class: ",[84,4509,4510],{"class":118},"'stats-panel'",[84,4512,4513],{"class":90}," }, [\n",[84,4515,4516,4519,4521,4524,4526,4529],{"class":86,"line":1453},[84,4517,4518],{"class":98},"        h",[84,4520,145],{"class":90},[84,4522,4523],{"class":118},"'h3'",[84,4525,754],{"class":90},[84,4527,4528],{"class":118},"'Resumen de tareas'",[84,4530,4531],{"class":90},"),\n",[84,4533,4534,4536],{"class":86,"line":1462},[84,4535,4518],{"class":98},[84,4537,4538],{"class":90},"(\n",[84,4540,4541,4544],{"class":86,"line":1484},[84,4542,4543],{"class":118},"          'button'",[84,4545,1887],{"class":90},[84,4547,4548],{"class":86,"line":1489},[84,4549,4550],{"class":90},"          {\n",[84,4552,4553,4556,4559],{"class":86,"line":1495},[84,4554,4555],{"class":90},"            type: ",[84,4557,4558],{"class":118},"'button'",[84,4560,1887],{"class":90},[84,4562,4563,4566,4569,4571],{"class":86,"line":1500},[84,4564,4565],{"class":98},"            onClick",[84,4567,4568],{"class":90},": () ",[84,4570,172],{"class":108},[84,4572,175],{"class":90},[84,4574,4575,4578,4580],{"class":86,"line":1516},[84,4576,4577],{"class":90},"              shouldFail.value ",[84,4579,184],{"class":108},[84,4581,187],{"class":135},[84,4583,4584],{"class":86,"line":1533},[84,4585,4586],{"class":90},"            }\n",[84,4588,4589],{"class":86,"line":1538},[84,4590,4591],{"class":90},"          },\n",[84,4593,4594],{"class":86,"line":1545},[84,4595,4596],{"class":118},"          'Simular fallo del widget'\n",[84,4598,4599],{"class":86,"line":1554},[84,4600,4601],{"class":90},"        ),\n",[84,4603,4604,4606],{"class":86,"line":1563},[84,4605,4518],{"class":98},[84,4607,4538],{"class":90},[84,4609,4610,4613],{"class":86,"line":1570},[84,4611,4612],{"class":118},"          'ul'",[84,4614,1887],{"class":90},[84,4616,4617,4620,4623,4625,4628],{"class":86,"line":1588},[84,4618,4619],{"class":90},"          stats.value.",[84,4621,4622],{"class":98},"map",[84,4624,145],{"class":90},[84,4626,4627],{"class":429},"stat",[84,4629,4630],{"class":108}," =>\n",[84,4632,4633,4636,4638,4641,4644,4647,4649,4651,4654,4657,4659,4661,4664,4667],{"class":86,"line":1593},[84,4634,4635],{"class":98},"            h",[84,4637,145],{"class":90},[84,4639,4640],{"class":118},"'li'",[84,4642,4643],{"class":90},", { key: stat.label }, ",[84,4645,4646],{"class":118},"`${",[84,4648,4627],{"class":90},[84,4650,764],{"class":118},[84,4652,4653],{"class":90},"label",[84,4655,4656],{"class":118},"}: ${",[84,4658,4627],{"class":90},[84,4660,764],{"class":118},[84,4662,4663],{"class":90},"value",[84,4665,4666],{"class":118},"}`",[84,4668,151],{"class":90},[84,4670,4671],{"class":86,"line":1598},[84,4672,4673],{"class":90},"          )\n",[84,4675,4676],{"class":86,"line":1607},[84,4677,4678],{"class":90},"        )\n",[84,4680,4681],{"class":86,"line":1612},[84,4682,4683],{"class":90},"      ])\n",[84,4685,4686],{"class":86,"line":1621},[84,4687,485],{"class":90},[84,4689,4690],{"class":86,"line":1639},[84,4691,1492],{"class":90},[84,4693,4694],{"class":86,"line":1661},[84,4695,126],{"emptyLinePlaceholder":125},[84,4697,4698,4701,4703,4705,4707,4709,4711,4713,4715,4717],{"class":86,"line":1666},[84,4699,4700],{"class":98},"onErrorCaptured",[84,4702,3120],{"class":90},[84,4704,4127],{"class":429},[84,4706,754],{"class":90},[84,4708,4038],{"class":429},[84,4710,754],{"class":90},[84,4712,4044],{"class":429},[84,4714,3126],{"class":90},[84,4716,172],{"class":108},[84,4718,175],{"class":90},[84,4720,4721,4724,4726],{"class":86,"line":1688},[84,4722,4723],{"class":90},"  hasError.value ",[84,4725,184],{"class":108},[84,4727,187],{"class":135},[84,4729,4730,4733],{"class":86,"line":1703},[84,4731,4732],{"class":90},"  errorMessage.value ",[84,4734,1459],{"class":108},[84,4736,4737,4740,4742,4744,4746,4748,4750],{"class":86,"line":1717},[84,4738,4739],{"class":90},"    error ",[84,4741,1468],{"class":108},[84,4743,1358],{"class":98},[84,4745,1473],{"class":108},[84,4747,1476],{"class":90},[84,4749,1203],{"class":108},[84,4751,4752],{"class":118}," 'Ocurrió un error inesperado.'\n",[84,4754,4755,4758,4760],{"class":86,"line":1731},[84,4756,4757],{"class":90},"  errorSource.value ",[84,4759,184],{"class":108},[84,4761,4762],{"class":90}," info\n",[84,4764,4765],{"class":86,"line":1741},[84,4766,126],{"emptyLinePlaceholder":125},[84,4768,4769,4771,4773,4775,4778],{"class":86,"line":1746},[84,4770,3135],{"class":90},[84,4772,4127],{"class":98},[84,4774,145],{"class":90},[84,4776,4777],{"class":118},"'Widget capturado por el boundary del dashboard'",[84,4779,3146],{"class":90},[84,4781,4782],{"class":86,"line":1763},[84,4783,4784],{"class":90},"    error,\n",[84,4786,4787],{"class":86,"line":1772},[84,4788,4789],{"class":90},"    component: instance?.type,\n",[84,4791,4792],{"class":86,"line":2283},[84,4793,4794],{"class":90},"    info\n",[84,4796,4797],{"class":86,"line":2288},[84,4798,3104],{"class":90},[84,4800,4801],{"class":86,"line":2307},[84,4802,126],{"emptyLinePlaceholder":125},[84,4804,4805,4807],{"class":86,"line":2320},[84,4806,557],{"class":108},[84,4808,224],{"class":135},[84,4810,4811],{"class":86,"line":2333},[84,4812,1492],{"class":90},[84,4814,4815],{"class":86,"line":2346},[84,4816,126],{"emptyLinePlaceholder":125},[84,4818,4819,4821,4824],{"class":86,"line":2355},[84,4820,3246],{"class":108},[84,4822,4823],{"class":98}," retry",[84,4825,1307],{"class":90},[84,4827,4828,4830,4832],{"class":86,"line":2360},[84,4829,4723],{"class":90},[84,4831,184],{"class":108},[84,4833,224],{"class":135},[84,4835,4836,4838,4840],{"class":86,"line":2375},[84,4837,4732],{"class":90},[84,4839,184],{"class":108},[84,4841,4842],{"class":118}," ''\n",[84,4844,4845,4847,4849],{"class":86,"line":2384},[84,4846,4757],{"class":90},[84,4848,184],{"class":108},[84,4850,4842],{"class":118},[84,4852,4854,4857,4860],{"class":86,"line":4853},68,[84,4855,4856],{"class":90},"  retryKey.value ",[84,4858,4859],{"class":108},"+=",[84,4861,4862],{"class":135}," 1\n",[84,4864,4866],{"class":86,"line":4865},69,[84,4867,193],{"class":90},[84,4869,4871,4873,4875],{"class":86,"line":4870},70,[84,4872,274],{"class":90},[84,4874,95],{"class":94},[84,4876,102],{"class":90},[84,4878,4880],{"class":86,"line":4879},71,[84,4881,126],{"emptyLinePlaceholder":125},[84,4883,4885,4887,4889],{"class":86,"line":4884},72,[84,4886,91],{"class":90},[84,4888,291],{"class":94},[84,4890,102],{"class":90},[84,4892,4894,4896,4899,4901,4903,4906],{"class":86,"line":4893},73,[84,4895,299],{"class":90},[84,4897,4898],{"class":94},"section",[84,4900,1629],{"class":98},[84,4902,184],{"class":90},[84,4904,4905],{"class":118},"\"dashboard-card\"",[84,4907,102],{"class":90},[84,4909,4911,4913,4916],{"class":86,"line":4910},74,[84,4912,1642],{"class":90},[84,4914,4915],{"class":94},"header",[84,4917,102],{"class":90},[84,4919,4921,4923,4925,4928,4930],{"class":86,"line":4920},75,[84,4922,1691],{"class":90},[84,4924,34],{"class":94},[84,4926,4927],{"class":90},">Estado del dashboard\u003C\u002F",[84,4929,34],{"class":94},[84,4931,102],{"class":90},[84,4933,4935,4937,4939],{"class":86,"line":4934},76,[84,4936,1691],{"class":90},[84,4938,15],{"class":94},[84,4940,102],{"class":90},[84,4942,4944],{"class":86,"line":4943},77,[84,4945,4946],{"class":90},"        Si un widget falla, el resto de la pantalla puede seguir funcionando.\n",[84,4948,4950,4953,4955],{"class":86,"line":4949},78,[84,4951,4952],{"class":90},"      \u003C\u002F",[84,4954,15],{"class":94},[84,4956,102],{"class":90},[84,4958,4960,4962,4964],{"class":86,"line":4959},79,[84,4961,1734],{"class":90},[84,4963,4915],{"class":94},[84,4965,102],{"class":90},[84,4967,4969],{"class":86,"line":4968},80,[84,4970,126],{"emptyLinePlaceholder":125},[84,4972,4974,4976,4979,4981,4983,4986,4988,4990,4993],{"class":86,"line":4973},81,[84,4975,1642],{"class":90},[84,4977,4978],{"class":94},"div",[84,4980,344],{"class":98},[84,4982,184],{"class":90},[84,4984,4985],{"class":118},"\"hasError\"",[84,4987,1629],{"class":98},[84,4989,184],{"class":90},[84,4991,4992],{"class":118},"\"error-box\"",[84,4994,102],{"class":90},[84,4996,4998,5000,5002,5005,5007],{"class":86,"line":4997},82,[84,4999,1691],{"class":90},[84,5001,958],{"class":94},[84,5003,5004],{"class":90},">Este bloque no pudo renderizarse.\u003C\u002F",[84,5006,958],{"class":94},[84,5008,102],{"class":90},[84,5010,5012,5014,5016,5018,5020],{"class":86,"line":5011},83,[84,5013,1691],{"class":90},[84,5015,15],{"class":94},[84,5017,1654],{"class":90},[84,5019,15],{"class":94},[84,5021,102],{"class":90},[84,5023,5025,5027,5030,5033,5035],{"class":86,"line":5024},84,[84,5026,1691],{"class":90},[84,5028,5029],{"class":94},"small",[84,5031,5032],{"class":90},">Origen: {{ errorSource }}\u003C\u002F",[84,5034,5029],{"class":94},[84,5036,102],{"class":90},[84,5038,5040,5042,5044,5047,5049,5052,5054,5056,5059,5062,5064],{"class":86,"line":5039},85,[84,5041,1691],{"class":90},[84,5043,302],{"class":94},[84,5045,5046],{"class":98}," type",[84,5048,184],{"class":90},[84,5050,5051],{"class":118},"\"button\"",[84,5053,305],{"class":98},[84,5055,184],{"class":90},[84,5057,5058],{"class":118},"\"retry\"",[84,5060,5061],{"class":90},">Reintentar\u003C\u002F",[84,5063,302],{"class":94},[84,5065,102],{"class":90},[84,5067,5069,5071,5073],{"class":86,"line":5068},86,[84,5070,1734],{"class":90},[84,5072,4978],{"class":94},[84,5074,102],{"class":90},[84,5076,5078],{"class":86,"line":5077},87,[84,5079,126],{"emptyLinePlaceholder":125},[84,5081,5083,5085,5088,5090,5093,5095,5098],{"class":86,"line":5082},88,[84,5084,1642],{"class":90},[84,5086,5087],{"class":94},"RiskyStatsPanel",[84,5089,1753],{"class":98},[84,5091,5092],{"class":98}," :key",[84,5094,184],{"class":90},[84,5096,5097],{"class":118},"\"retryKey\"",[84,5099,5100],{"class":90}," \u002F>\n",[84,5102,5104,5106,5108],{"class":86,"line":5103},89,[84,5105,324],{"class":90},[84,5107,4898],{"class":94},[84,5109,102],{"class":90},[84,5111,5113,5115,5117],{"class":86,"line":5112},90,[84,5114,274],{"class":90},[84,5116,291],{"class":94},[84,5118,102],{"class":90},[74,5120,5122],{"className":76,"code":5121,"filename":1782,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nconst RiskyStatsPanel = {\n  name: 'RiskyStatsPanel',\n  data() {\n    return {\n      shouldFail: false\n    }\n  },\n  computed: {\n    stats() {\n      if (this.shouldFail) {\n        throw new Error('No fue posible calcular las métricas del tablero.')\n      }\n\n      return [\n        { label: 'Pendientes', value: 14 },\n        { label: 'Completadas', value: 29 },\n        { label: 'Bloqueadas', value: 3 }\n      ]\n    }\n  },\n  template: `\n    \u003Csection class=\"stats-panel\">\n      \u003Ch3>Resumen de tareas\u003C\u002Fh3>\n      \u003Cbutton\n        type=\"button\"\n        @click=\"shouldFail = true\"\n      >\n        Simular fallo del widget\n      \u003C\u002Fbutton>\n\n      \u003Cul>\n        \u003Cli\n          v-for=\"stat in stats\"\n          :key=\"stat.label\"\n        >\n          {{ stat.label }}: {{ stat.value }}\n        \u003C\u002Fli>\n      \u003C\u002Ful>\n    \u003C\u002Fsection>\n  `\n}\n\nexport default {\n  name: 'DashboardErrorBoundary',\n  components: {\n    RiskyStatsPanel\n  },\n  data() {\n    return {\n      hasError: false,\n      errorMessage: '',\n      errorSource: '',\n      retryKey: 0\n    }\n  },\n  errorCaptured(error, instance, info) {\n    this.hasError = true\n    this.errorMessage =\n      error instanceof Error ? error.message : 'Ocurrió un error inesperado.'\n    this.errorSource = info\n\n    console.error('Widget capturado por el boundary del dashboard', {\n      error,\n      component: instance?.type,\n      info\n    })\n\n    return false\n  },\n  methods: {\n    retry() {\n      this.hasError = false\n      this.errorMessage = ''\n      this.errorSource = ''\n      this.retryKey += 1\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection class=\"dashboard-card\">\n    \u003Cheader>\n      \u003Ch2>Estado del dashboard\u003C\u002Fh2>\n      \u003Cp>Si un widget falla, el resto de la pantalla puede seguir funcionando.\u003C\u002Fp>\n    \u003C\u002Fheader>\n\n    \u003Cdiv v-if=\"hasError\" class=\"error-box\">\n      \u003Cstrong>Este bloque no pudo renderizarse.\u003C\u002Fstrong>\n      \u003Cp>{{ errorMessage }}\u003C\u002Fp>\n      \u003Csmall>Origen: {{ errorSource }}\u003C\u002Fsmall>\n      \u003Cbutton type=\"button\" @click=\"retry\">Reintentar\u003C\u002Fbutton>\n    \u003C\u002Fdiv>\n\n    \u003CRiskyStatsPanel v-else :key=\"retryKey\" \u002F>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[22,5123,5124,5138,5148,5156,5162,5168,5175,5179,5183,5187,5194,5205,5219,5223,5227,5233,5245,5257,5269,5273,5277,5281,5289,5294,5299,5304,5309,5314,5319,5324,5329,5333,5338,5343,5348,5353,5358,5363,5368,5373,5378,5383,5387,5391,5399,5408,5413,5418,5422,5428,5434,5443,5451,5460,5468,5472,5476,5495,5507,5515,5531,5542,5546,5558,5563,5568,5573,5577,5581,5587,5591,5595,5602,5612,5622,5632,5643,5647,5651,5655,5663,5667,5675,5689,5697,5709,5722,5730,5734,5754,5766,5779,5792,5817,5826,5831,5848,5857],{"__ignoreMap":80},[84,5125,5126,5128,5130,5132,5134,5136],{"class":86,"line":87},[84,5127,91],{"class":90},[84,5129,95],{"class":94},[84,5131,1161],{"class":98},[84,5133,184],{"class":90},[84,5135,1166],{"class":118},[84,5137,102],{"class":90},[84,5139,5140,5142,5144,5146],{"class":86,"line":105},[84,5141,132],{"class":108},[84,5143,4333],{"class":135},[84,5145,139],{"class":108},[84,5147,175],{"class":90},[84,5149,5150,5152,5154],{"class":86,"line":122},[84,5151,1881],{"class":90},[84,5153,4346],{"class":118},[84,5155,1887],{"class":90},[84,5157,5158,5160],{"class":86,"line":129},[84,5159,1896],{"class":98},[84,5161,1307],{"class":90},[84,5163,5164,5166],{"class":86,"line":154},[84,5165,1903],{"class":108},[84,5167,175],{"class":90},[84,5169,5170,5173],{"class":86,"line":159},[84,5171,5172],{"class":90},"      shouldFail: ",[84,5174,2833],{"class":135},[84,5176,5177],{"class":86,"line":178},[84,5178,1936],{"class":90},[84,5180,5181],{"class":86,"line":190},[84,5182,1941],{"class":90},[84,5184,5185],{"class":86,"line":196},[84,5186,3527],{"class":90},[84,5188,5189,5192],{"class":86,"line":201},[84,5190,5191],{"class":98},"    stats",[84,5193,1307],{"class":90},[84,5195,5196,5198,5200,5202],{"class":86,"line":217},[84,5197,1987],{"class":108},[84,5199,1341],{"class":90},[84,5201,2151],{"class":135},[84,5203,5204],{"class":90},".shouldFail) {\n",[84,5206,5207,5209,5211,5213,5215,5217],{"class":86,"line":227},[84,5208,1998],{"class":108},[84,5210,1355],{"class":108},[84,5212,1358],{"class":98},[84,5214,145],{"class":90},[84,5216,4413],{"class":118},[84,5218,151],{"class":90},[84,5220,5221],{"class":86,"line":232},[84,5222,2013],{"class":90},[84,5224,5225],{"class":86,"line":237},[84,5226,126],{"emptyLinePlaceholder":125},[84,5228,5229,5231],{"class":86,"line":253},[84,5230,3539],{"class":108},[84,5232,4430],{"class":90},[84,5234,5235,5237,5239,5241,5243],{"class":86,"line":266},[84,5236,4435],{"class":90},[84,5238,4438],{"class":118},[84,5240,4441],{"class":90},[84,5242,4444],{"class":135},[84,5244,2921],{"class":90},[84,5246,5247,5249,5251,5253,5255],{"class":86,"line":271},[84,5248,4435],{"class":90},[84,5250,4453],{"class":118},[84,5252,4441],{"class":90},[84,5254,4458],{"class":135},[84,5256,2921],{"class":90},[84,5258,5259,5261,5263,5265,5267],{"class":86,"line":281},[84,5260,4435],{"class":90},[84,5262,4467],{"class":118},[84,5264,4441],{"class":90},[84,5266,2952],{"class":135},[84,5268,2968],{"class":90},[84,5270,5271],{"class":86,"line":286},[84,5272,3510],{"class":90},[84,5274,5275],{"class":86,"line":296},[84,5276,1936],{"class":90},[84,5278,5279],{"class":86,"line":315},[84,5280,1941],{"class":90},[84,5282,5283,5286],{"class":86,"line":321},[84,5284,5285],{"class":90},"  template: ",[84,5287,5288],{"class":118},"`\n",[84,5290,5291],{"class":86,"line":331},[84,5292,5293],{"class":118},"    \u003Csection class=\"stats-panel\">\n",[84,5295,5296],{"class":86,"line":336},[84,5297,5298],{"class":118},"      \u003Ch3>Resumen de tareas\u003C\u002Fh3>\n",[84,5300,5301],{"class":86,"line":354},[84,5302,5303],{"class":118},"      \u003Cbutton\n",[84,5305,5306],{"class":86,"line":360},[84,5307,5308],{"class":118},"        type=\"button\"\n",[84,5310,5311],{"class":86,"line":369},[84,5312,5313],{"class":118},"        @click=\"shouldFail = true\"\n",[84,5315,5316],{"class":86,"line":1453},[84,5317,5318],{"class":118},"      >\n",[84,5320,5321],{"class":86,"line":1462},[84,5322,5323],{"class":118},"        Simular fallo del widget\n",[84,5325,5326],{"class":86,"line":1484},[84,5327,5328],{"class":118},"      \u003C\u002Fbutton>\n",[84,5330,5331],{"class":86,"line":1489},[84,5332,126],{"emptyLinePlaceholder":125},[84,5334,5335],{"class":86,"line":1495},[84,5336,5337],{"class":118},"      \u003Cul>\n",[84,5339,5340],{"class":86,"line":1500},[84,5341,5342],{"class":118},"        \u003Cli\n",[84,5344,5345],{"class":86,"line":1516},[84,5346,5347],{"class":118},"          v-for=\"stat in stats\"\n",[84,5349,5350],{"class":86,"line":1533},[84,5351,5352],{"class":118},"          :key=\"stat.label\"\n",[84,5354,5355],{"class":86,"line":1538},[84,5356,5357],{"class":118},"        >\n",[84,5359,5360],{"class":86,"line":1545},[84,5361,5362],{"class":118},"          {{ stat.label }}: {{ stat.value }}\n",[84,5364,5365],{"class":86,"line":1554},[84,5366,5367],{"class":118},"        \u003C\u002Fli>\n",[84,5369,5370],{"class":86,"line":1563},[84,5371,5372],{"class":118},"      \u003C\u002Ful>\n",[84,5374,5375],{"class":86,"line":1570},[84,5376,5377],{"class":118},"    \u003C\u002Fsection>\n",[84,5379,5380],{"class":86,"line":1588},[84,5381,5382],{"class":118},"  `\n",[84,5384,5385],{"class":86,"line":1593},[84,5386,193],{"class":90},[84,5388,5389],{"class":86,"line":1598},[84,5390,126],{"emptyLinePlaceholder":125},[84,5392,5393,5395,5397],{"class":86,"line":1607},[84,5394,418],{"class":108},[84,5396,1870],{"class":108},[84,5398,175],{"class":90},[84,5400,5401,5403,5406],{"class":86,"line":1612},[84,5402,1881],{"class":90},[84,5404,5405],{"class":118},"'DashboardErrorBoundary'",[84,5407,1887],{"class":90},[84,5409,5410],{"class":86,"line":1621},[84,5411,5412],{"class":90},"  components: {\n",[84,5414,5415],{"class":86,"line":1639},[84,5416,5417],{"class":90},"    RiskyStatsPanel\n",[84,5419,5420],{"class":86,"line":1661},[84,5421,1941],{"class":90},[84,5423,5424,5426],{"class":86,"line":1666},[84,5425,1896],{"class":98},[84,5427,1307],{"class":90},[84,5429,5430,5432],{"class":86,"line":1688},[84,5431,1903],{"class":108},[84,5433,175],{"class":90},[84,5435,5436,5439,5441],{"class":86,"line":1703},[84,5437,5438],{"class":90},"      hasError: ",[84,5440,148],{"class":135},[84,5442,1887],{"class":90},[84,5444,5445,5447,5449],{"class":86,"line":1717},[84,5446,1928],{"class":90},[84,5448,1288],{"class":118},[84,5450,1887],{"class":90},[84,5452,5453,5456,5458],{"class":86,"line":1731},[84,5454,5455],{"class":90},"      errorSource: ",[84,5457,1288],{"class":118},[84,5459,1887],{"class":90},[84,5461,5462,5465],{"class":86,"line":1741},[84,5463,5464],{"class":90},"      retryKey: ",[84,5466,5467],{"class":135},"0\n",[84,5469,5470],{"class":86,"line":1746},[84,5471,1936],{"class":90},[84,5473,5474],{"class":86,"line":1763},[84,5475,1941],{"class":90},[84,5477,5478,5481,5483,5485,5487,5489,5491,5493],{"class":86,"line":1772},[84,5479,5480],{"class":98},"  errorCaptured",[84,5482,145],{"class":90},[84,5484,4127],{"class":429},[84,5486,754],{"class":90},[84,5488,4038],{"class":429},[84,5490,754],{"class":90},[84,5492,4044],{"class":429},[84,5494,438],{"class":90},[84,5496,5497,5500,5503,5505],{"class":86,"line":2283},[84,5498,5499],{"class":135},"    this",[84,5501,5502],{"class":90},".hasError ",[84,5504,184],{"class":108},[84,5506,187],{"class":135},[84,5508,5509,5511,5513],{"class":86,"line":2288},[84,5510,5499],{"class":135},[84,5512,2101],{"class":90},[84,5514,1459],{"class":108},[84,5516,5517,5519,5521,5523,5525,5527,5529],{"class":86,"line":2307},[84,5518,1465],{"class":90},[84,5520,1468],{"class":108},[84,5522,1358],{"class":98},[84,5524,1473],{"class":108},[84,5526,1476],{"class":90},[84,5528,1203],{"class":108},[84,5530,4752],{"class":118},[84,5532,5533,5535,5538,5540],{"class":86,"line":2320},[84,5534,5499],{"class":135},[84,5536,5537],{"class":90},".errorSource ",[84,5539,184],{"class":108},[84,5541,4762],{"class":90},[84,5543,5544],{"class":86,"line":2333},[84,5545,126],{"emptyLinePlaceholder":125},[84,5547,5548,5550,5552,5554,5556],{"class":86,"line":2346},[84,5549,3666],{"class":90},[84,5551,4127],{"class":98},[84,5553,145],{"class":90},[84,5555,4777],{"class":118},[84,5557,3146],{"class":90},[84,5559,5560],{"class":86,"line":2355},[84,5561,5562],{"class":90},"      error,\n",[84,5564,5565],{"class":86,"line":2360},[84,5566,5567],{"class":90},"      component: instance?.type,\n",[84,5569,5570],{"class":86,"line":2375},[84,5571,5572],{"class":90},"      info\n",[84,5574,5575],{"class":86,"line":2384},[84,5576,3698],{"class":90},[84,5578,5579],{"class":86,"line":4853},[84,5580,126],{"emptyLinePlaceholder":125},[84,5582,5583,5585],{"class":86,"line":4865},[84,5584,1903],{"class":108},[84,5586,224],{"class":135},[84,5588,5589],{"class":86,"line":4870},[84,5590,1941],{"class":90},[84,5592,5593],{"class":86,"line":4879},[84,5594,1950],{"class":90},[84,5596,5597,5600],{"class":86,"line":4884},[84,5598,5599],{"class":98},"    retry",[84,5601,1307],{"class":90},[84,5603,5604,5606,5608,5610],{"class":86,"line":4893},[84,5605,2022],{"class":135},[84,5607,5502],{"class":90},[84,5609,184],{"class":108},[84,5611,224],{"class":135},[84,5613,5614,5616,5618,5620],{"class":86,"line":4910},[84,5615,2022],{"class":135},[84,5617,2101],{"class":90},[84,5619,184],{"class":108},[84,5621,4842],{"class":118},[84,5623,5624,5626,5628,5630],{"class":86,"line":4920},[84,5625,2022],{"class":135},[84,5627,5537],{"class":90},[84,5629,184],{"class":108},[84,5631,4842],{"class":118},[84,5633,5634,5636,5639,5641],{"class":86,"line":4934},[84,5635,2022],{"class":135},[84,5637,5638],{"class":90},".retryKey ",[84,5640,4859],{"class":108},[84,5642,4862],{"class":135},[84,5644,5645],{"class":86,"line":4943},[84,5646,1936],{"class":90},[84,5648,5649],{"class":86,"line":4949},[84,5650,485],{"class":90},[84,5652,5653],{"class":86,"line":4959},[84,5654,193],{"class":90},[84,5656,5657,5659,5661],{"class":86,"line":4968},[84,5658,274],{"class":90},[84,5660,95],{"class":94},[84,5662,102],{"class":90},[84,5664,5665],{"class":86,"line":4973},[84,5666,126],{"emptyLinePlaceholder":125},[84,5668,5669,5671,5673],{"class":86,"line":4997},[84,5670,91],{"class":90},[84,5672,291],{"class":94},[84,5674,102],{"class":90},[84,5676,5677,5679,5681,5683,5685,5687],{"class":86,"line":5011},[84,5678,299],{"class":90},[84,5680,4898],{"class":94},[84,5682,1629],{"class":98},[84,5684,184],{"class":90},[84,5686,4905],{"class":118},[84,5688,102],{"class":90},[84,5690,5691,5693,5695],{"class":86,"line":5024},[84,5692,1642],{"class":90},[84,5694,4915],{"class":94},[84,5696,102],{"class":90},[84,5698,5699,5701,5703,5705,5707],{"class":86,"line":5039},[84,5700,1691],{"class":90},[84,5702,34],{"class":94},[84,5704,4927],{"class":90},[84,5706,34],{"class":94},[84,5708,102],{"class":90},[84,5710,5711,5713,5715,5718,5720],{"class":86,"line":5068},[84,5712,1691],{"class":90},[84,5714,15],{"class":94},[84,5716,5717],{"class":90},">Si un widget falla, el resto de la pantalla puede seguir funcionando.\u003C\u002F",[84,5719,15],{"class":94},[84,5721,102],{"class":90},[84,5723,5724,5726,5728],{"class":86,"line":5077},[84,5725,1734],{"class":90},[84,5727,4915],{"class":94},[84,5729,102],{"class":90},[84,5731,5732],{"class":86,"line":5082},[84,5733,126],{"emptyLinePlaceholder":125},[84,5735,5736,5738,5740,5742,5744,5746,5748,5750,5752],{"class":86,"line":5103},[84,5737,1642],{"class":90},[84,5739,4978],{"class":94},[84,5741,344],{"class":98},[84,5743,184],{"class":90},[84,5745,4985],{"class":118},[84,5747,1629],{"class":98},[84,5749,184],{"class":90},[84,5751,4992],{"class":118},[84,5753,102],{"class":90},[84,5755,5756,5758,5760,5762,5764],{"class":86,"line":5112},[84,5757,1691],{"class":90},[84,5759,958],{"class":94},[84,5761,5004],{"class":90},[84,5763,958],{"class":94},[84,5765,102],{"class":90},[84,5767,5769,5771,5773,5775,5777],{"class":86,"line":5768},91,[84,5770,1691],{"class":90},[84,5772,15],{"class":94},[84,5774,1654],{"class":90},[84,5776,15],{"class":94},[84,5778,102],{"class":90},[84,5780,5782,5784,5786,5788,5790],{"class":86,"line":5781},92,[84,5783,1691],{"class":90},[84,5785,5029],{"class":94},[84,5787,5032],{"class":90},[84,5789,5029],{"class":94},[84,5791,102],{"class":90},[84,5793,5795,5797,5799,5801,5803,5805,5807,5809,5811,5813,5815],{"class":86,"line":5794},93,[84,5796,1691],{"class":90},[84,5798,302],{"class":94},[84,5800,5046],{"class":98},[84,5802,184],{"class":90},[84,5804,5051],{"class":118},[84,5806,305],{"class":98},[84,5808,184],{"class":90},[84,5810,5058],{"class":118},[84,5812,5061],{"class":90},[84,5814,302],{"class":94},[84,5816,102],{"class":90},[84,5818,5820,5822,5824],{"class":86,"line":5819},94,[84,5821,1734],{"class":90},[84,5823,4978],{"class":94},[84,5825,102],{"class":90},[84,5827,5829],{"class":86,"line":5828},95,[84,5830,126],{"emptyLinePlaceholder":125},[84,5832,5834,5836,5838,5840,5842,5844,5846],{"class":86,"line":5833},96,[84,5835,1642],{"class":90},[84,5837,5087],{"class":94},[84,5839,1753],{"class":98},[84,5841,5092],{"class":98},[84,5843,184],{"class":90},[84,5845,5097],{"class":118},[84,5847,5100],{"class":90},[84,5849,5851,5853,5855],{"class":86,"line":5850},97,[84,5852,324],{"class":90},[84,5854,4898],{"class":94},[84,5856,102],{"class":90},[84,5858,5860,5862,5864],{"class":86,"line":5859},98,[84,5861,274],{"class":90},[84,5863,291],{"class":94},[84,5865,102],{"class":90},[15,5867,5868],{},"El patrón clave es claro: el error ocurre en el hijo, el padre lo captura, registra contexto y cambia a un estado de respaldo sin afectar el resto del árbol.",[823,5870,5871],{},[15,5872,5873],{},"En ambos enfoques, la responsabilidad es la misma: el componente padre delimita la zona de riesgo y decide cómo degradar la experiencia si algo falla en su árbol descendiente.",[34,5875,2406],{"id":2405},[15,5877,5878,5880],{},[22,5879,3960],{}," no existe para ocultar excepciones, sino para gestionar mejor su impacto. Bien utilizado, permite construir interfaces más resilientes: una parte puede fallar sin comprometer todo el flujo.",[15,5882,5883],{},"La idea clave: captura localmente, registra con contexto y ofrece una salida clara al usuario.",[835,5885,3902],{},{"title":80,"searchDepth":105,"depth":105,"links":5887},[5888,5889,5890,5891,5892,5899,5904,5905],{"id":920,"depth":105,"text":921},{"id":946,"depth":105,"text":947},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":783,"depth":105,"text":784,"children":5893},[5894,5895,5897,5898],{"id":4150,"depth":122,"text":4151},{"id":4160,"depth":122,"text":5896},"2. Devolver false siempre",{"id":4176,"depth":122,"text":4177},{"id":4186,"depth":122,"text":4187},{"id":2735,"depth":105,"text":2736,"children":5900},[5901,5902,5903],{"id":4198,"depth":122,"text":4199},{"id":4205,"depth":122,"text":4206},{"id":4212,"depth":122,"text":4213},{"id":2765,"depth":105,"text":2766},{"id":2405,"depth":105,"text":2406},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1773714502\u002Fvue-lifecycle-error-handling-errorcaptured_mn62y7.png","Ilustración de un componente de Vue con un escudo de protección, simbolizando el manejo de errores con errorCaptured.","2026-03-17","Cómo usar errorCaptured y onErrorCaptured para aislar fallos en componentes hijos, mostrar estados de respaldo y registrar errores sin romper toda la interfaz.",{"updatedAt":5911,"coverCaption":5912,"author":868,"keywords":5913},"2026-03-16T22:00:00-05:00","Con errorCaptured, puedes proteger partes específicas de tu UI sin comprometer toda la experiencia.",[870,3960,4700,5914,5915],"manejo de errores","error boundaries","\u002Fblog\u002Fvue-lifecycle-error-handling-errorcaptured.es",[5918],{"headline":3951,"author":5919,"datePublished":5911,"@type":880},{"name":868,"@type":879},{"title":3951,"description":5909},"blog\u002Fvue-lifecycle-error-handling-errorcaptured.es",[5923,5924,5927,5928],{"tag":2453,"color":2454},{"tag":5925,"color":5926},"Manejo de Errores","#E55039",{"tag":888,"color":889},{"tag":2462,"color":2463},"epm2rTVpqLV5pyIW1xBngTSC9yZ0Hdu43YNcWNkm4xw",{"id":5931,"title":5932,"body":5933,"cover":8241,"coverAlt":8242,"date":8243,"description":8244,"draft":852,"extension":853,"lab":882,"locale":864,"meta":8245,"navigation":125,"path":8251,"schemaOrg":8252,"seo":8255,"series":2447,"seriesDescription":2448,"seriesOrder":159,"seriesTitle":2449,"slug":882,"stem":8256,"tags":8257,"__hash__":8263},"blog\u002Fblog\u002Fvue-lifecycle-keepalive-activated-deactivated.es.md","Ciclos de vida en Vue: componentes cacheados con \u003CKeepAlive> (activated, deactivated)",{"type":8,"value":5934,"toc":8220},[5935,5939,5952,5958,5961,5969,5971,5976,5979,5990,5993,6004,6007,6024,6027,6039,6042,6065,6067,6074,6076,6090,6093,6105,6107,6113,6116,6130,6133,6155,6159,6245,6248,6250,6256,6262,6267,6271,6278,6287,6294,6300,6306,6310,6315,6318,6320,6324,6333,6337,6343,6347,6356,7335,8173,8193,8195,8218],[34,5936,5938],{"id":5937},"texto-refinado-completo","Texto refinado completo",[11,5940,5942,5943,1341,5946,754,5949,909],{"id":5941},"ciclos-de-vida-en-vue-componentes-cacheados-con-keepalive-activated-deactivated","Ciclos de vida en Vue: componentes cacheados con ",[22,5944,5945],{},"\u003CKeepAlive>",[22,5947,5948],{},"activated",[22,5950,5951],{},"deactivated",[15,5953,5954,5955,5957],{},"No todos los componentes desaparecen realmente cuando dejan de verse. En Vue, un componente envuelto en ",[22,5956,5945],{}," puede salir del DOM activo y, aun así, seguir vivo en memoria. Ese detalle cambia por completo la forma de entender su ciclo de vida.",[15,5959,5960],{},"Si tratas un componente cacheado como si siempre se montara desde cero, es fácil terminar recargando datos sin necesidad, dejando timers o polling corriendo cuando la vista ya no está visible, o mostrando información obsoleta al volver a una pestaña.",[15,5962,5963,5964,2488,5966,5968],{},"Los hooks ",[22,5965,5948],{},[22,5967,5951],{}," existen precisamente para ese escenario: componentes que entran y salen de pantalla sin destruirse en cada cambio.",[34,5970,947],{"id":946},[15,5972,5973,5975],{},[22,5974,5945],{}," cachea instancias de componentes dinámicos para preservar su estado entre cambios. En lugar de desmontar el componente cuando deja de mostrarse, Vue lo mueve a un estado desactivado.",[15,5977,5978],{},"Eso significa que el flujo ya no es solo:",[737,5980,5981,5984,5987],{},[740,5982,5983],{},"Montar",[740,5985,5986],{},"Actualizar",[740,5988,5989],{},"Desmontar",[15,5991,5992],{},"Ahora también aparece un estado intermedio muy importante:",[737,5994,5995,5998,6001],{},[740,5996,5997],{},"Activar",[740,5999,6000],{},"Desactivar",[740,6002,6003],{},"Volver a activar",[15,6005,6006],{},"Los hooks implicados son:",[737,6008,6009,6017],{},[740,6010,6011,6014,6015],{},[22,6012,6013],{},"onActivated()"," \u002F ",[22,6016,5948],{},[740,6018,6019,6014,6022],{},[22,6020,6021],{},"onDeactivated()",[22,6023,5951],{},[15,6025,6026],{},"Hay dos matices clave que conviene tener claros:",[737,6028,6029,6034],{},[740,6030,6031,6033],{},[22,6032,5948],{}," también se ejecuta en el montaje inicial del componente cacheado.",[740,6035,6036,6038],{},[22,6037,5951],{}," se ejecuta cuando el componente sale del DOM activo hacia la caché y también cuando finalmente se desmonta.",[15,6040,6041],{},"En términos prácticos:",[737,6043,6044,6049,6054,6059],{},[740,6045,6046,6048],{},[22,6047,1085],{}," sirve para inicialización única.",[740,6050,6051,6053],{},[22,6052,5948],{}," sirve para cada momento en que la vista vuelve a estar activa.",[740,6055,6056,6058],{},[22,6057,5951],{}," sirve para pausar, guardar o limpiar trabajo mientras la instancia queda en segundo plano.",[740,6060,6061,6064],{},[22,6062,6063],{},"unmounted"," solo entra en juego cuando la instancia realmente deja de existir.",[34,6066,1013],{"id":1012},[15,6068,6069,2488,6071,6073],{},[22,6070,5948],{},[22,6072,5951],{}," encajan bien cuando el componente debe comportarse de forma distinta según esté visible o solo cacheado.",[15,6075,4083],{},[737,6077,6078,6081,6084,6087],{},[740,6079,6080],{},"Revalidar datos al volver a una pestaña sin perder el estado local de formularios o filtros.",[740,6082,6083],{},"Pausar polling, listeners u observadores cuando la vista deja de estar activa.",[740,6085,6086],{},"Retomar scroll, foco o sincronización con librerías externas cuando el componente reaparece.",[740,6088,6089],{},"Mantener una navegación fluida entre tabs, dashboards o vistas dinámicas sin reinstanciar todo desde cero.",[15,6091,6092],{},"La regla práctica es simple:",[737,6094,6095,6100],{},[740,6096,6097,6098,764],{},"Si necesitas reaccionar al regreso del componente, piensa en ",[22,6099,5948],{},[740,6101,6102,6103,764],{},"Si necesitas detener trabajo mientras la instancia queda cacheada, piensa en ",[22,6104,5951],{},[34,6106,1040],{"id":1039},[15,6108,6109,6110,6112],{},"No todo componente necesita ",[22,6111,5945],{}," ni estos hooks.",[15,6114,6115],{},"Conviene evitarlos cuando:",[737,6117,6118,6121,6124,6127],{},[740,6119,6120],{},"El componente debería reiniciarse limpio en cada visita y no conservar estado.",[740,6122,6123],{},"La lógica encaja mejor en estado global o en datos derivados, sin cachear la vista completa.",[740,6125,6126],{},"El problema real es un flujo de navegación confuso, no la pérdida de estado.",[740,6128,6129],{},"Quieres forzar un refresco completo en cada visita; en ese caso, la caché puede jugar en contra.",[15,6131,6132],{},"También conviene no meter aquí lógica que pertenece a otro sitio:",[737,6134,6135,6141,6149],{},[740,6136,6137,6138,6140],{},"Si dependes de un dato concreto, un ",[22,6139,61],{}," suele expresar mejor la intención.",[740,6142,6143,6144,50,6146,6148],{},"Si solo necesitas inicializar una vez, ",[22,6145,1085],{},[22,6147,4013],{}," suelen ser suficientes.",[740,6150,6151,6152,6154],{},"Si el componente no está dentro de ",[22,6153,5945],{},", estos hooks no se dispararán.",[34,6156,6158],{"id":6157},"comparación-rápida","Comparación rápida",[6160,6161,6162,6181],"table",{},[6163,6164,6165],"thead",{},[6166,6167,6168,6172,6175,6178],"tr",{},[6169,6170,6171],"th",{},"Hook",[6169,6173,6174],{},"Cuándo se dispara",[6169,6176,6177],{},"Para qué encaja mejor",[6169,6179,6180],{},"Error habitual",[6182,6183,6184,6200,6215,6230],"tbody",{},[6166,6185,6186,6191,6194,6197],{},[6187,6188,6189],"td",{},[22,6190,1085],{},[6187,6192,6193],{},"Cuando la instancia se monta por primera vez",[6187,6195,6196],{},"Inicialización única",[6187,6198,6199],{},"Poner aquí lógica que debería ejecutarse cada vez que la vista regresa",[6166,6201,6202,6206,6209,6212],{},[6187,6203,6204],{},[22,6205,5948],{},[6187,6207,6208],{},"En el montaje inicial y en cada reactivación desde caché",[6187,6210,6211],{},"Refrescar, resincronizar o retomar trabajo visible",[6187,6213,6214],{},"Asumir que el componente vuelve desde estado limpio",[6166,6216,6217,6221,6224,6227],{},[6187,6218,6219],{},[22,6220,5951],{},[6187,6222,6223],{},"Cuando sale del DOM activo hacia caché y también al desmontarse",[6187,6225,6226],{},"Pausar polling, timers, observers o persistir estado temporal",[6187,6228,6229],{},"Tratarlo como si equivaliera a destrucción completa",[6166,6231,6232,6236,6239,6242],{},[6187,6233,6234],{},[22,6235,6063],{},[6187,6237,6238],{},"Cuando la instancia realmente se destruye",[6187,6240,6241],{},"Limpieza final",[6187,6243,6244],{},"Esperar que ocurra en cada cambio entre vistas cacheadas",[15,6246,6247],{},"La diferencia decisiva es esta: un componente cacheado no muere cuando deja de verse. Simplemente queda en pausa.",[34,6249,784],{"id":783},[1074,6251,6253,6254],{"id":6252},"_1-cargar-datos-solo-en-mounted","1. Cargar datos solo en ",[22,6255,1085],{},[15,6257,6258,6259,6261],{},"Funciona la primera vez, pero suele fallar cuando el usuario sale y vuelve a la vista. Como el componente sigue cacheado, ",[22,6260,1085],{}," no vuelve a ejecutarse y puedes terminar mostrando datos obsoletos.",[15,6263,6264,6265,764],{},"La corrección habitual es mover la revalidación ligera a ",[22,6266,5948],{},[1074,6268,6270],{"id":6269},"_2-dejar-polling-o-timers-activos-mientras-la-vista-está-oculta","2. Dejar polling o timers activos mientras la vista está oculta",[15,6272,6273,6274,6277],{},"Un componente desactivado sigue existiendo en memoria. Si no detienes ",[22,6275,6276],{},"setInterval",", sockets o listeners, el trabajo continúa aunque la pantalla ya no esté visible.",[15,6279,6280,6281,6283,6284,6286],{},"La solución es pausar en ",[22,6282,5951],{}," y reanudar en ",[22,6285,5948],{}," cuando corresponda.",[1074,6288,6290,6291,6293],{"id":6289},"_3-esperar-unmounted-al-cambiar-entre-tabs-cacheadas","3. Esperar ",[22,6292,6063],{}," al cambiar entre tabs cacheadas",[15,6295,6296,6297,6299],{},"Cuando cambias entre componentes dentro de ",[22,6298,5945],{},", muchas veces no hay desmontaje inmediato. Lo que ocurre es una desactivación.",[15,6301,6302,6303,6305],{},"Si toda tu limpieza depende de ",[22,6304,6063],{},", llegará tarde o no ocurrirá cuando esperabas.",[1074,6307,6309],{"id":6308},"_4-confundir-conservar-estado-con-conservar-frescura","4. Confundir conservar estado con conservar frescura",[15,6311,6312,6314],{},[22,6313,5945],{}," conserva estado local, pero no garantiza que los datos sigan actualizados. Puedes volver a un formulario con sus valores intactos y, al mismo tiempo, a una lista basada en datos viejos.",[15,6316,6317],{},"Cachear la instancia no reemplaza una estrategia de refresco.",[34,6319,2736],{"id":2735},[1074,6321,6323],{"id":6322},"volver-a-una-pestaña-sin-perder-filtros","Volver a una pestaña sin perder filtros",[15,6325,6326,6327,6329,6330,6332],{},"Imagina una vista de reportes con filtros, orden y scroll interno. Sin ",[22,6328,5945],{},", cada cambio de tab puede destruir la instancia y obligar al usuario a empezar otra vez. Con caché, mantienes la experiencia. Con ",[22,6331,5948],{},", además, puedes refrescar solo el resumen o la fecha de última sincronización.",[1074,6334,6336],{"id":6335},"pausar-trabajo-en-segundo-plano","Pausar trabajo en segundo plano",[15,6338,6339,6340,6342],{},"Si una vista consulta métrica cada 30 segundos, no conviene que siga haciéndolo cuando el usuario ya se movió a otra sección, pero la instancia quedó cacheada. ",[22,6341,5951],{}," es el lugar natural para detener ese trabajo.",[1074,6344,6346],{"id":6345},"retomar-sincronización-visual","Retomar sincronización visual",[15,6348,6349,6350,6352,6353,6355],{},"Algunas vistas necesitan recalcular tamaños, gráficos o paneles cuando reaparecen. Como el componente no se recrea, ",[22,6351,1085],{}," ya quedó atrás. Ahí ",[22,6354,5948],{}," es el punto correcto para resincronizar la UI.",[74,6357,6359],{"className":76,"code":6358,"filename":873,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { computed, onActivated, onDeactivated, onMounted, ref } from 'vue'\n\ntype Task = {\n  id: number\n  title: string\n  done: boolean\n}\n\nconst tasks = ref\u003CTask[]>([])\nconst filter = ref\u003C'all' | 'pending' | 'done'>('all')\nconst status = ref('Esperando carga...')\nconst lastSync = ref\u003Cstring | null>(null)\nconst poller = ref\u003CReturnType\u003Ctypeof setInterval> | null>(null)\nconst initialized = ref(false)\n\nconst visibleTasks = computed(() => {\n  if (filter.value === 'pending') {\n    return tasks.value.filter(task => !task.done)\n  }\n\n  if (filter.value === 'done') {\n    return tasks.value.filter(task => task.done)\n  }\n\n  return tasks.value\n})\n\nasync function fetchTasks() {\n  status.value = 'Sincronizando...'\n\n  const response = await fetch('\u002Fapi\u002Ftasks')\n  const data = (await response.json()) as { tasks: Task[] }\n\n  tasks.value = data.tasks\n  lastSync.value = new Date().toLocaleTimeString('es-CO')\n  status.value = 'Datos actualizados'\n}\n\nfunction startPolling() {\n  if (poller.value !== null) return\n\n  poller.value = setInterval(() => {\n    void fetchTasks()\n  }, 30000)\n}\n\nfunction stopPolling() {\n  if (poller.value === null) return\n\n  clearInterval(poller.value)\n  poller.value = null\n}\n\nonMounted(() => {\n  initialized.value = true\n})\n\nonActivated(async () => {\n  status.value = initialized.value ? 'Vista reactivada' : 'Cargando vista...'\n  await fetchTasks()\n  startPolling()\n})\n\nonDeactivated(() => {\n  status.value = 'Vista en pausa'\n  stopPolling()\n})\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection class=\"task-report\">\n    \u003Cheader>\n      \u003Ch2>Reporte de tareas\u003C\u002Fh2>\n      \u003Cp>{{ status }}\u003C\u002Fp>\n      \u003Cp v-if=\"lastSync\">Última sincronización: {{ lastSync }}\u003C\u002Fp>\n    \u003C\u002Fheader>\n\n    \u003Cnav class=\"filters\">\n      \u003Cbutton @click=\"filter = 'all'\">Todas\u003C\u002Fbutton>\n      \u003Cbutton @click=\"filter = 'pending'\">Pendientes\u003C\u002Fbutton>\n      \u003Cbutton @click=\"filter = 'done'\">Completadas\u003C\u002Fbutton>\n    \u003C\u002Fnav>\n\n    \u003Cul>\n      \u003Cli\n        v-for=\"task in visibleTasks\"\n        :key=\"task.id\"\n      >\n        {{ task.title }}\n      \u003C\u002Fli>\n    \u003C\u002Ful>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[22,6360,6361,6377,6388,6392,6403,6411,6420,6430,6434,6438,6456,6488,6506,6532,6567,6584,6588,6604,6617,6636,6640,6644,6656,6673,6677,6681,6688,6692,6696,6707,6717,6721,6740,6774,6778,6788,6813,6822,6826,6830,6839,6855,6859,6875,6884,6894,6898,6902,6911,6925,6929,6937,6946,6950,6954,6964,6973,6977,6981,6996,7016,7025,7032,7036,7040,7051,7060,7067,7071,7079,7083,7091,7106,7114,7127,7140,7160,7168,7172,7187,7207,7227,7247,7255,7259,7267,7274,7284,7294,7298,7303,7311,7319,7327],{"__ignoreMap":80},[84,6362,6363,6365,6367,6369,6371,6373,6375],{"class":86,"line":87},[84,6364,91],{"class":90},[84,6366,95],{"class":94},[84,6368,99],{"class":98},[84,6370,1161],{"class":98},[84,6372,184],{"class":90},[84,6374,1166],{"class":118},[84,6376,102],{"class":90},[84,6378,6379,6381,6384,6386],{"class":86,"line":105},[84,6380,109],{"class":108},[84,6382,6383],{"class":90}," { computed, onActivated, onDeactivated, onMounted, ref } ",[84,6385,115],{"class":108},[84,6387,119],{"class":118},[84,6389,6390],{"class":86,"line":122},[84,6391,126],{"emptyLinePlaceholder":125},[84,6393,6394,6396,6399,6401],{"class":86,"line":129},[84,6395,1188],{"class":108},[84,6397,6398],{"class":98}," Task",[84,6400,139],{"class":108},[84,6402,175],{"class":90},[84,6404,6405,6407,6409],{"class":86,"line":154},[84,6406,1200],{"class":429},[84,6408,1203],{"class":108},[84,6410,1206],{"class":135},[84,6412,6413,6416,6418],{"class":86,"line":159},[84,6414,6415],{"class":429},"  title",[84,6417,1203],{"class":108},[84,6419,1216],{"class":135},[84,6421,6422,6425,6427],{"class":86,"line":178},[84,6423,6424],{"class":429},"  done",[84,6426,1203],{"class":108},[84,6428,6429],{"class":135}," boolean\n",[84,6431,6432],{"class":86,"line":190},[84,6433,193],{"class":90},[84,6435,6436],{"class":86,"line":196},[84,6437,126],{"emptyLinePlaceholder":125},[84,6439,6440,6442,6444,6446,6448,6450,6453],{"class":86,"line":201},[84,6441,132],{"class":108},[84,6443,2887],{"class":135},[84,6445,139],{"class":108},[84,6447,142],{"class":98},[84,6449,91],{"class":90},[84,6451,6452],{"class":98},"Task",[84,6454,6455],{"class":90},"[]>([])\n",[84,6457,6458,6460,6463,6465,6467,6469,6472,6474,6477,6479,6482,6484,6486],{"class":86,"line":217},[84,6459,132],{"class":108},[84,6461,6462],{"class":135}," filter",[84,6464,139],{"class":108},[84,6466,142],{"class":98},[84,6468,91],{"class":90},[84,6470,6471],{"class":118},"'all'",[84,6473,1261],{"class":108},[84,6475,6476],{"class":118}," 'pending'",[84,6478,1261],{"class":108},[84,6480,6481],{"class":118}," 'done'",[84,6483,1267],{"class":90},[84,6485,6471],{"class":118},[84,6487,151],{"class":90},[84,6489,6490,6492,6495,6497,6499,6501,6504],{"class":86,"line":227},[84,6491,132],{"class":108},[84,6493,6494],{"class":135}," status",[84,6496,139],{"class":108},[84,6498,142],{"class":98},[84,6500,145],{"class":90},[84,6502,6503],{"class":118},"'Esperando carga...'",[84,6505,151],{"class":90},[84,6507,6508,6510,6513,6515,6517,6519,6522,6524,6526,6528,6530],{"class":86,"line":232},[84,6509,132],{"class":108},[84,6511,6512],{"class":135}," lastSync",[84,6514,139],{"class":108},[84,6516,142],{"class":98},[84,6518,91],{"class":90},[84,6520,6521],{"class":135},"string",[84,6523,1261],{"class":108},[84,6525,1264],{"class":135},[84,6527,1267],{"class":90},[84,6529,1270],{"class":135},[84,6531,151],{"class":90},[84,6533,6534,6536,6539,6541,6543,6545,6548,6550,6553,6556,6559,6561,6563,6565],{"class":86,"line":237},[84,6535,132],{"class":108},[84,6537,6538],{"class":135}," poller",[84,6540,139],{"class":108},[84,6542,142],{"class":98},[84,6544,91],{"class":90},[84,6546,6547],{"class":98},"ReturnType",[84,6549,91],{"class":90},[84,6551,6552],{"class":108},"typeof",[84,6554,6555],{"class":90}," setInterval> ",[84,6557,6558],{"class":108},"|",[84,6560,1264],{"class":135},[84,6562,1267],{"class":90},[84,6564,1270],{"class":135},[84,6566,151],{"class":90},[84,6568,6569,6571,6574,6576,6578,6580,6582],{"class":86,"line":253},[84,6570,132],{"class":108},[84,6572,6573],{"class":135}," initialized",[84,6575,139],{"class":108},[84,6577,142],{"class":98},[84,6579,145],{"class":90},[84,6581,148],{"class":135},[84,6583,151],{"class":90},[84,6585,6586],{"class":86,"line":266},[84,6587,126],{"emptyLinePlaceholder":125},[84,6589,6590,6592,6594,6596,6598,6600,6602],{"class":86,"line":271},[84,6591,132],{"class":108},[84,6593,2984],{"class":135},[84,6595,139],{"class":108},[84,6597,2989],{"class":98},[84,6599,2992],{"class":90},[84,6601,172],{"class":108},[84,6603,175],{"class":90},[84,6605,6606,6608,6611,6613,6615],{"class":86,"line":281},[84,6607,1338],{"class":108},[84,6609,6610],{"class":90}," (filter.value ",[84,6612,3288],{"class":108},[84,6614,6476],{"class":118},[84,6616,438],{"class":90},[84,6618,6619,6621,6623,6625,6627,6629,6631,6633],{"class":86,"line":286},[84,6620,1903],{"class":108},[84,6622,3003],{"class":90},[84,6624,3006],{"class":98},[84,6626,145],{"class":90},[84,6628,3011],{"class":429},[84,6630,3014],{"class":108},[84,6632,260],{"class":108},[84,6634,6635],{"class":90},"task.done)\n",[84,6637,6638],{"class":86,"line":296},[84,6639,485],{"class":90},[84,6641,6642],{"class":86,"line":315},[84,6643,126],{"emptyLinePlaceholder":125},[84,6645,6646,6648,6650,6652,6654],{"class":86,"line":321},[84,6647,1338],{"class":108},[84,6649,6610],{"class":90},[84,6651,3288],{"class":108},[84,6653,6481],{"class":118},[84,6655,438],{"class":90},[84,6657,6658,6660,6662,6664,6666,6668,6670],{"class":86,"line":331},[84,6659,1903],{"class":108},[84,6661,3003],{"class":90},[84,6663,3006],{"class":98},[84,6665,145],{"class":90},[84,6667,3011],{"class":429},[84,6669,3014],{"class":108},[84,6671,6672],{"class":90}," task.done)\n",[84,6674,6675],{"class":86,"line":336},[84,6676,485],{"class":90},[84,6678,6679],{"class":86,"line":354},[84,6680,126],{"emptyLinePlaceholder":125},[84,6682,6683,6685],{"class":86,"line":360},[84,6684,557],{"class":108},[84,6686,6687],{"class":90}," tasks.value\n",[84,6689,6690],{"class":86,"line":369},[84,6691,1492],{"class":90},[84,6693,6694],{"class":86,"line":1453},[84,6695,126],{"emptyLinePlaceholder":125},[84,6697,6698,6700,6702,6705],{"class":86,"line":1462},[84,6699,1299],{"class":108},[84,6701,421],{"class":108},[84,6703,6704],{"class":98}," fetchTasks",[84,6706,1307],{"class":90},[84,6708,6709,6712,6714],{"class":86,"line":1484},[84,6710,6711],{"class":90},"  status.value ",[84,6713,184],{"class":108},[84,6715,6716],{"class":118}," 'Sincronizando...'\n",[84,6718,6719],{"class":86,"line":1489},[84,6720,126],{"emptyLinePlaceholder":125},[84,6722,6723,6725,6727,6729,6731,6733,6735,6738],{"class":86,"line":1495},[84,6724,443],{"class":108},[84,6726,1314],{"class":135},[84,6728,139],{"class":108},[84,6730,1319],{"class":108},[84,6732,1322],{"class":98},[84,6734,145],{"class":90},[84,6736,6737],{"class":118},"'\u002Fapi\u002Ftasks'",[84,6739,151],{"class":90},[84,6741,6742,6744,6747,6749,6751,6753,6755,6757,6759,6761,6764,6767,6769,6771],{"class":86,"line":1500},[84,6743,443],{"class":108},[84,6745,6746],{"class":135}," data",[84,6748,139],{"class":108},[84,6750,1341],{"class":90},[84,6752,1385],{"class":108},[84,6754,1388],{"class":90},[84,6756,1391],{"class":98},[84,6758,1394],{"class":90},[84,6760,1397],{"class":108},[84,6762,6763],{"class":90}," { ",[84,6765,6766],{"class":429},"tasks",[84,6768,1203],{"class":108},[84,6770,6398],{"class":98},[84,6772,6773],{"class":90},"[] }\n",[84,6775,6776],{"class":86,"line":1516},[84,6777,126],{"emptyLinePlaceholder":125},[84,6779,6780,6783,6785],{"class":86,"line":1533},[84,6781,6782],{"class":90},"  tasks.value ",[84,6784,184],{"class":108},[84,6786,6787],{"class":90}," data.tasks\n",[84,6789,6790,6793,6795,6797,6800,6803,6806,6808,6811],{"class":86,"line":1538},[84,6791,6792],{"class":90},"  lastSync.value ",[84,6794,184],{"class":108},[84,6796,1355],{"class":108},[84,6798,6799],{"class":98}," Date",[84,6801,6802],{"class":90},"().",[84,6804,6805],{"class":98},"toLocaleTimeString",[84,6807,145],{"class":90},[84,6809,6810],{"class":118},"'es-CO'",[84,6812,151],{"class":90},[84,6814,6815,6817,6819],{"class":86,"line":1545},[84,6816,6711],{"class":90},[84,6818,184],{"class":108},[84,6820,6821],{"class":118}," 'Datos actualizados'\n",[84,6823,6824],{"class":86,"line":1554},[84,6825,193],{"class":90},[84,6827,6828],{"class":86,"line":1563},[84,6829,126],{"emptyLinePlaceholder":125},[84,6831,6832,6834,6837],{"class":86,"line":1570},[84,6833,3246],{"class":108},[84,6835,6836],{"class":98}," startPolling",[84,6838,1307],{"class":90},[84,6840,6841,6843,6846,6849,6851,6853],{"class":86,"line":1588},[84,6842,1338],{"class":108},[84,6844,6845],{"class":90}," (poller.value ",[84,6847,6848],{"class":108},"!==",[84,6850,1264],{"class":135},[84,6852,3126],{"class":90},[84,6854,1530],{"class":108},[84,6856,6857],{"class":86,"line":1593},[84,6858,126],{"emptyLinePlaceholder":125},[84,6860,6861,6864,6866,6869,6871,6873],{"class":86,"line":1598},[84,6862,6863],{"class":90},"  poller.value ",[84,6865,184],{"class":108},[84,6867,6868],{"class":98}," setInterval",[84,6870,2992],{"class":90},[84,6872,172],{"class":108},[84,6874,175],{"class":90},[84,6876,6877,6880,6882],{"class":86,"line":1607},[84,6878,6879],{"class":108},"    void",[84,6881,6704],{"class":98},[84,6883,635],{"class":90},[84,6885,6886,6889,6892],{"class":86,"line":1612},[84,6887,6888],{"class":90},"  }, ",[84,6890,6891],{"class":135},"30000",[84,6893,151],{"class":90},[84,6895,6896],{"class":86,"line":1621},[84,6897,193],{"class":90},[84,6899,6900],{"class":86,"line":1639},[84,6901,126],{"emptyLinePlaceholder":125},[84,6903,6904,6906,6909],{"class":86,"line":1661},[84,6905,3246],{"class":108},[84,6907,6908],{"class":98}," stopPolling",[84,6910,1307],{"class":90},[84,6912,6913,6915,6917,6919,6921,6923],{"class":86,"line":1666},[84,6914,1338],{"class":108},[84,6916,6845],{"class":90},[84,6918,3288],{"class":108},[84,6920,1264],{"class":135},[84,6922,3126],{"class":90},[84,6924,1530],{"class":108},[84,6926,6927],{"class":86,"line":1688},[84,6928,126],{"emptyLinePlaceholder":125},[84,6930,6931,6934],{"class":86,"line":1703},[84,6932,6933],{"class":98},"  clearInterval",[84,6935,6936],{"class":90},"(poller.value)\n",[84,6938,6939,6941,6943],{"class":86,"line":1717},[84,6940,6863],{"class":90},[84,6942,184],{"class":108},[84,6944,6945],{"class":135}," null\n",[84,6947,6948],{"class":86,"line":1731},[84,6949,193],{"class":90},[84,6951,6952],{"class":86,"line":1741},[84,6953,126],{"emptyLinePlaceholder":125},[84,6955,6956,6958,6960,6962],{"class":86,"line":1746},[84,6957,1503],{"class":98},[84,6959,2992],{"class":90},[84,6961,172],{"class":108},[84,6963,175],{"class":90},[84,6965,6966,6969,6971],{"class":86,"line":1763},[84,6967,6968],{"class":90},"  initialized.value ",[84,6970,184],{"class":108},[84,6972,187],{"class":135},[84,6974,6975],{"class":86,"line":1772},[84,6976,1492],{"class":90},[84,6978,6979],{"class":86,"line":2283},[84,6980,126],{"emptyLinePlaceholder":125},[84,6982,6983,6986,6988,6990,6992,6994],{"class":86,"line":2288},[84,6984,6985],{"class":98},"onActivated",[84,6987,145],{"class":90},[84,6989,1299],{"class":108},[84,6991,169],{"class":90},[84,6993,172],{"class":108},[84,6995,175],{"class":90},[84,6997,6998,7000,7002,7005,7007,7010,7013],{"class":86,"line":2307},[84,6999,6711],{"class":90},[84,7001,184],{"class":108},[84,7003,7004],{"class":90}," initialized.value ",[84,7006,3073],{"class":108},[84,7008,7009],{"class":118}," 'Vista reactivada'",[84,7011,7012],{"class":108}," :",[84,7014,7015],{"class":118}," 'Cargando vista...'\n",[84,7017,7018,7021,7023],{"class":86,"line":2320},[84,7019,7020],{"class":108},"  await",[84,7022,6704],{"class":98},[84,7024,635],{"class":90},[84,7026,7027,7030],{"class":86,"line":2333},[84,7028,7029],{"class":98},"  startPolling",[84,7031,635],{"class":90},[84,7033,7034],{"class":86,"line":2346},[84,7035,1492],{"class":90},[84,7037,7038],{"class":86,"line":2355},[84,7039,126],{"emptyLinePlaceholder":125},[84,7041,7042,7045,7047,7049],{"class":86,"line":2360},[84,7043,7044],{"class":98},"onDeactivated",[84,7046,2992],{"class":90},[84,7048,172],{"class":108},[84,7050,175],{"class":90},[84,7052,7053,7055,7057],{"class":86,"line":2375},[84,7054,6711],{"class":90},[84,7056,184],{"class":108},[84,7058,7059],{"class":118}," 'Vista en pausa'\n",[84,7061,7062,7065],{"class":86,"line":2384},[84,7063,7064],{"class":98},"  stopPolling",[84,7066,635],{"class":90},[84,7068,7069],{"class":86,"line":4853},[84,7070,1492],{"class":90},[84,7072,7073,7075,7077],{"class":86,"line":4865},[84,7074,274],{"class":90},[84,7076,95],{"class":94},[84,7078,102],{"class":90},[84,7080,7081],{"class":86,"line":4870},[84,7082,126],{"emptyLinePlaceholder":125},[84,7084,7085,7087,7089],{"class":86,"line":4879},[84,7086,91],{"class":90},[84,7088,291],{"class":94},[84,7090,102],{"class":90},[84,7092,7093,7095,7097,7099,7101,7104],{"class":86,"line":4884},[84,7094,299],{"class":90},[84,7096,4898],{"class":94},[84,7098,1629],{"class":98},[84,7100,184],{"class":90},[84,7102,7103],{"class":118},"\"task-report\"",[84,7105,102],{"class":90},[84,7107,7108,7110,7112],{"class":86,"line":4893},[84,7109,1642],{"class":90},[84,7111,4915],{"class":94},[84,7113,102],{"class":90},[84,7115,7116,7118,7120,7123,7125],{"class":86,"line":4910},[84,7117,1691],{"class":90},[84,7119,34],{"class":94},[84,7121,7122],{"class":90},">Reporte de tareas\u003C\u002F",[84,7124,34],{"class":94},[84,7126,102],{"class":90},[84,7128,7129,7131,7133,7136,7138],{"class":86,"line":4920},[84,7130,1691],{"class":90},[84,7132,15],{"class":94},[84,7134,7135],{"class":90},">{{ status }}\u003C\u002F",[84,7137,15],{"class":94},[84,7139,102],{"class":90},[84,7141,7142,7144,7146,7148,7150,7153,7156,7158],{"class":86,"line":4934},[84,7143,1691],{"class":90},[84,7145,15],{"class":94},[84,7147,344],{"class":98},[84,7149,184],{"class":90},[84,7151,7152],{"class":118},"\"lastSync\"",[84,7154,7155],{"class":90},">Última sincronización: {{ lastSync }}\u003C\u002F",[84,7157,15],{"class":94},[84,7159,102],{"class":90},[84,7161,7162,7164,7166],{"class":86,"line":4943},[84,7163,1734],{"class":90},[84,7165,4915],{"class":94},[84,7167,102],{"class":90},[84,7169,7170],{"class":86,"line":4949},[84,7171,126],{"emptyLinePlaceholder":125},[84,7173,7174,7176,7178,7180,7182,7185],{"class":86,"line":4959},[84,7175,1642],{"class":90},[84,7177,341],{"class":94},[84,7179,1629],{"class":98},[84,7181,184],{"class":90},[84,7183,7184],{"class":118},"\"filters\"",[84,7186,102],{"class":90},[84,7188,7189,7191,7193,7195,7197,7200,7203,7205],{"class":86,"line":4968},[84,7190,1691],{"class":90},[84,7192,302],{"class":94},[84,7194,305],{"class":98},[84,7196,184],{"class":90},[84,7198,7199],{"class":118},"\"filter = 'all'\"",[84,7201,7202],{"class":90},">Todas\u003C\u002F",[84,7204,302],{"class":94},[84,7206,102],{"class":90},[84,7208,7209,7211,7213,7215,7217,7220,7223,7225],{"class":86,"line":4973},[84,7210,1691],{"class":90},[84,7212,302],{"class":94},[84,7214,305],{"class":98},[84,7216,184],{"class":90},[84,7218,7219],{"class":118},"\"filter = 'pending'\"",[84,7221,7222],{"class":90},">Pendientes\u003C\u002F",[84,7224,302],{"class":94},[84,7226,102],{"class":90},[84,7228,7229,7231,7233,7235,7237,7240,7243,7245],{"class":86,"line":4997},[84,7230,1691],{"class":90},[84,7232,302],{"class":94},[84,7234,305],{"class":98},[84,7236,184],{"class":90},[84,7238,7239],{"class":118},"\"filter = 'done'\"",[84,7241,7242],{"class":90},">Completadas\u003C\u002F",[84,7244,302],{"class":94},[84,7246,102],{"class":90},[84,7248,7249,7251,7253],{"class":86,"line":5011},[84,7250,1734],{"class":90},[84,7252,341],{"class":94},[84,7254,102],{"class":90},[84,7256,7257],{"class":86,"line":5024},[84,7258,126],{"emptyLinePlaceholder":125},[84,7260,7261,7263,7265],{"class":86,"line":5039},[84,7262,1642],{"class":90},[84,7264,737],{"class":94},[84,7266,102],{"class":90},[84,7268,7269,7271],{"class":86,"line":5068},[84,7270,1691],{"class":90},[84,7272,7273],{"class":94},"li\n",[84,7275,7276,7279,7281],{"class":86,"line":5077},[84,7277,7278],{"class":98},"        v-for",[84,7280,184],{"class":90},[84,7282,7283],{"class":118},"\"task in visibleTasks\"\n",[84,7285,7286,7289,7291],{"class":86,"line":5082},[84,7287,7288],{"class":98},"        :key",[84,7290,184],{"class":90},[84,7292,7293],{"class":118},"\"task.id\"\n",[84,7295,7296],{"class":86,"line":5103},[84,7297,5318],{"class":90},[84,7299,7300],{"class":86,"line":5112},[84,7301,7302],{"class":90},"        {{ task.title }}\n",[84,7304,7305,7307,7309],{"class":86,"line":5768},[84,7306,4952],{"class":90},[84,7308,740],{"class":94},[84,7310,102],{"class":90},[84,7312,7313,7315,7317],{"class":86,"line":5781},[84,7314,1734],{"class":90},[84,7316,737],{"class":94},[84,7318,102],{"class":90},[84,7320,7321,7323,7325],{"class":86,"line":5794},[84,7322,324],{"class":90},[84,7324,4898],{"class":94},[84,7326,102],{"class":90},[84,7328,7329,7331,7333],{"class":86,"line":5819},[84,7330,274],{"class":90},[84,7332,291],{"class":94},[84,7334,102],{"class":90},[74,7336,7339],{"className":76,"code":7337,"filename":7338,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      tasks: [],\n      filter: 'all',\n      status: 'Esperando carga...',\n      lastSync: null,\n      poller: null,\n      initialized: false\n    }\n  },\n\n  computed: {\n    visibleTasks() {\n      if (this.filter === 'pending') {\n        return this.tasks.filter(task => !task.done)\n      }\n\n      if (this.filter === 'done') {\n        return this.tasks.filter(task => task.done)\n      }\n\n      return this.tasks\n    }\n  },\n\n  mounted() {\n    this.initialized = true\n  },\n\n  async activated() {\n    this.status = this.initialized ? 'Vista reactivada' : 'Cargando vista...'\n    await this.fetchTasks()\n    this.startPolling()\n  },\n\n  deactivated() {\n    this.status = 'Vista en pausa'\n    this.stopPolling()\n  },\n\n  methods: {\n    async fetchTasks() {\n      this.status = 'Sincronizando...'\n\n      const response = await fetch('\u002Fapi\u002Ftasks')\n      const data = await response.json()\n\n      this.tasks = data.tasks\n      this.lastSync = new Date().toLocaleTimeString('es-CO')\n      this.status = 'Datos actualizados'\n    },\n\n    startPolling() {\n      if (this.poller !== null) return\n\n      this.poller = setInterval(() => {\n        void this.fetchTasks()\n      }, 30000)\n    },\n\n    stopPolling() {\n      if (this.poller === null) return\n\n      clearInterval(this.poller)\n      this.poller = null\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection class=\"task-report\">\n    \u003Cheader>\n      \u003Ch2>Reporte de tareas\u003C\u002Fh2>\n      \u003Cp>{{ status }}\u003C\u002Fp>\n      \u003Cp v-if=\"lastSync\">Última sincronización: {{ lastSync }}\u003C\u002Fp>\n    \u003C\u002Fheader>\n\n    \u003Cnav class=\"filters\">\n      \u003Cbutton @click=\"filter = 'all'\">Todas\u003C\u002Fbutton>\n      \u003Cbutton @click=\"filter = 'pending'\">Pendientes\u003C\u002Fbutton>\n      \u003Cbutton @click=\"filter = 'done'\">Completadas\u003C\u002Fbutton>\n    \u003C\u002Fnav>\n\n    \u003Cul>\n      \u003Cli\n        v-for=\"task in visibleTasks\"\n        :key=\"task.id\"\n      >\n        {{ task.title }}\n      \u003C\u002Fli>\n    \u003C\u002Ful>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n","Options Api",[22,7340,7341,7349,7357,7363,7369,7374,7383,7392,7401,7410,7417,7421,7425,7429,7433,7439,7456,7476,7480,7484,7500,7518,7522,7526,7535,7539,7543,7547,7554,7565,7569,7573,7582,7603,7616,7627,7631,7635,7642,7652,7663,7667,7671,7675,7683,7693,7697,7715,7731,7735,7746,7769,7779,7784,7788,7795,7814,7818,7834,7847,7856,7860,7864,7871,7889,7893,7905,7915,7919,7923,7927,7935,7939,7947,7961,7969,7981,7993,8011,8019,8023,8037,8055,8073,8091,8099,8103,8111,8117,8125,8133,8137,8141,8149,8157,8165],{"__ignoreMap":80},[84,7342,7343,7345,7347],{"class":86,"line":87},[84,7344,91],{"class":90},[84,7346,95],{"class":94},[84,7348,102],{"class":90},[84,7350,7351,7353,7355],{"class":86,"line":105},[84,7352,418],{"class":108},[84,7354,1870],{"class":108},[84,7356,175],{"class":90},[84,7358,7359,7361],{"class":86,"line":122},[84,7360,1896],{"class":98},[84,7362,1307],{"class":90},[84,7364,7365,7367],{"class":86,"line":129},[84,7366,1903],{"class":108},[84,7368,175],{"class":90},[84,7370,7371],{"class":86,"line":154},[84,7372,7373],{"class":90},"      tasks: [],\n",[84,7375,7376,7379,7381],{"class":86,"line":159},[84,7377,7378],{"class":90},"      filter: ",[84,7380,6471],{"class":118},[84,7382,1887],{"class":90},[84,7384,7385,7388,7390],{"class":86,"line":178},[84,7386,7387],{"class":90},"      status: ",[84,7389,6503],{"class":118},[84,7391,1887],{"class":90},[84,7393,7394,7397,7399],{"class":86,"line":190},[84,7395,7396],{"class":90},"      lastSync: ",[84,7398,1270],{"class":135},[84,7400,1887],{"class":90},[84,7402,7403,7406,7408],{"class":86,"line":196},[84,7404,7405],{"class":90},"      poller: ",[84,7407,1270],{"class":135},[84,7409,1887],{"class":90},[84,7411,7412,7415],{"class":86,"line":201},[84,7413,7414],{"class":90},"      initialized: ",[84,7416,2833],{"class":135},[84,7418,7419],{"class":86,"line":217},[84,7420,1936],{"class":90},[84,7422,7423],{"class":86,"line":227},[84,7424,1941],{"class":90},[84,7426,7427],{"class":86,"line":232},[84,7428,126],{"emptyLinePlaceholder":125},[84,7430,7431],{"class":86,"line":237},[84,7432,3527],{"class":90},[84,7434,7435,7437],{"class":86,"line":253},[84,7436,3532],{"class":98},[84,7438,1307],{"class":90},[84,7440,7441,7443,7445,7447,7450,7452,7454],{"class":86,"line":266},[84,7442,1987],{"class":108},[84,7444,1341],{"class":90},[84,7446,2151],{"class":135},[84,7448,7449],{"class":90},".filter ",[84,7451,3288],{"class":108},[84,7453,6476],{"class":118},[84,7455,438],{"class":90},[84,7457,7458,7460,7462,7464,7466,7468,7470,7472,7474],{"class":86,"line":271},[84,7459,3627],{"class":108},[84,7461,2078],{"class":135},[84,7463,3544],{"class":90},[84,7465,3006],{"class":98},[84,7467,145],{"class":90},[84,7469,3011],{"class":429},[84,7471,3014],{"class":108},[84,7473,260],{"class":108},[84,7475,6635],{"class":90},[84,7477,7478],{"class":86,"line":281},[84,7479,2013],{"class":90},[84,7481,7482],{"class":86,"line":286},[84,7483,126],{"emptyLinePlaceholder":125},[84,7485,7486,7488,7490,7492,7494,7496,7498],{"class":86,"line":296},[84,7487,1987],{"class":108},[84,7489,1341],{"class":90},[84,7491,2151],{"class":135},[84,7493,7449],{"class":90},[84,7495,3288],{"class":108},[84,7497,6481],{"class":118},[84,7499,438],{"class":90},[84,7501,7502,7504,7506,7508,7510,7512,7514,7516],{"class":86,"line":315},[84,7503,3627],{"class":108},[84,7505,2078],{"class":135},[84,7507,3544],{"class":90},[84,7509,3006],{"class":98},[84,7511,145],{"class":90},[84,7513,3011],{"class":429},[84,7515,3014],{"class":108},[84,7517,6672],{"class":90},[84,7519,7520],{"class":86,"line":321},[84,7521,2013],{"class":90},[84,7523,7524],{"class":86,"line":331},[84,7525,126],{"emptyLinePlaceholder":125},[84,7527,7528,7530,7532],{"class":86,"line":336},[84,7529,3539],{"class":108},[84,7531,2078],{"class":135},[84,7533,7534],{"class":90},".tasks\n",[84,7536,7537],{"class":86,"line":354},[84,7538,1936],{"class":90},[84,7540,7541],{"class":86,"line":360},[84,7542,1941],{"class":90},[84,7544,7545],{"class":86,"line":369},[84,7546,126],{"emptyLinePlaceholder":125},[84,7548,7549,7552],{"class":86,"line":1453},[84,7550,7551],{"class":98},"  mounted",[84,7553,1307],{"class":90},[84,7555,7556,7558,7561,7563],{"class":86,"line":1462},[84,7557,5499],{"class":135},[84,7559,7560],{"class":90},".initialized ",[84,7562,184],{"class":108},[84,7564,187],{"class":135},[84,7566,7567],{"class":86,"line":1484},[84,7568,1941],{"class":90},[84,7570,7571],{"class":86,"line":1489},[84,7572,126],{"emptyLinePlaceholder":125},[84,7574,7575,7577,7580],{"class":86,"line":1495},[84,7576,2058],{"class":108},[84,7578,7579],{"class":98}," activated",[84,7581,1307],{"class":90},[84,7583,7584,7586,7589,7591,7593,7595,7597,7599,7601],{"class":86,"line":1500},[84,7585,5499],{"class":135},[84,7587,7588],{"class":90},".status ",[84,7590,184],{"class":108},[84,7592,2078],{"class":135},[84,7594,7560],{"class":90},[84,7596,3073],{"class":108},[84,7598,7009],{"class":118},[84,7600,7012],{"class":108},[84,7602,7015],{"class":118},[84,7604,7605,7607,7609,7611,7614],{"class":86,"line":1516},[84,7606,1435],{"class":108},[84,7608,2078],{"class":135},[84,7610,764],{"class":90},[84,7612,7613],{"class":98},"fetchTasks",[84,7615,635],{"class":90},[84,7617,7618,7620,7622,7625],{"class":86,"line":1533},[84,7619,5499],{"class":135},[84,7621,764],{"class":90},[84,7623,7624],{"class":98},"startPolling",[84,7626,635],{"class":90},[84,7628,7629],{"class":86,"line":1538},[84,7630,1941],{"class":90},[84,7632,7633],{"class":86,"line":1545},[84,7634,126],{"emptyLinePlaceholder":125},[84,7636,7637,7640],{"class":86,"line":1554},[84,7638,7639],{"class":98},"  deactivated",[84,7641,1307],{"class":90},[84,7643,7644,7646,7648,7650],{"class":86,"line":1563},[84,7645,5499],{"class":135},[84,7647,7588],{"class":90},[84,7649,184],{"class":108},[84,7651,7059],{"class":118},[84,7653,7654,7656,7658,7661],{"class":86,"line":1570},[84,7655,5499],{"class":135},[84,7657,764],{"class":90},[84,7659,7660],{"class":98},"stopPolling",[84,7662,635],{"class":90},[84,7664,7665],{"class":86,"line":1588},[84,7666,1941],{"class":90},[84,7668,7669],{"class":86,"line":1593},[84,7670,126],{"emptyLinePlaceholder":125},[84,7672,7673],{"class":86,"line":1598},[84,7674,1950],{"class":90},[84,7676,7677,7679,7681],{"class":86,"line":1607},[84,7678,1955],{"class":108},[84,7680,6704],{"class":98},[84,7682,1307],{"class":90},[84,7684,7685,7687,7689,7691],{"class":86,"line":1612},[84,7686,2022],{"class":135},[84,7688,7588],{"class":90},[84,7690,184],{"class":108},[84,7692,6716],{"class":118},[84,7694,7695],{"class":86,"line":1621},[84,7696,126],{"emptyLinePlaceholder":125},[84,7698,7699,7701,7703,7705,7707,7709,7711,7713],{"class":86,"line":1639},[84,7700,1964],{"class":108},[84,7702,1314],{"class":135},[84,7704,139],{"class":108},[84,7706,1319],{"class":108},[84,7708,1322],{"class":98},[84,7710,145],{"class":90},[84,7712,6737],{"class":118},[84,7714,151],{"class":90},[84,7716,7717,7719,7721,7723,7725,7727,7729],{"class":86,"line":1661},[84,7718,1964],{"class":108},[84,7720,6746],{"class":135},[84,7722,139],{"class":108},[84,7724,1319],{"class":108},[84,7726,1388],{"class":90},[84,7728,1391],{"class":98},[84,7730,635],{"class":90},[84,7732,7733],{"class":86,"line":1666},[84,7734,126],{"emptyLinePlaceholder":125},[84,7736,7737,7739,7742,7744],{"class":86,"line":1688},[84,7738,2022],{"class":135},[84,7740,7741],{"class":90},".tasks ",[84,7743,184],{"class":108},[84,7745,6787],{"class":90},[84,7747,7748,7750,7753,7755,7757,7759,7761,7763,7765,7767],{"class":86,"line":1703},[84,7749,2022],{"class":135},[84,7751,7752],{"class":90},".lastSync ",[84,7754,184],{"class":108},[84,7756,1355],{"class":108},[84,7758,6799],{"class":98},[84,7760,6802],{"class":90},[84,7762,6805],{"class":98},[84,7764,145],{"class":90},[84,7766,6810],{"class":118},[84,7768,151],{"class":90},[84,7770,7771,7773,7775,7777],{"class":86,"line":1717},[84,7772,2022],{"class":135},[84,7774,7588],{"class":90},[84,7776,184],{"class":108},[84,7778,6821],{"class":118},[84,7780,7781],{"class":86,"line":1731},[84,7782,7783],{"class":90},"    },\n",[84,7785,7786],{"class":86,"line":1741},[84,7787,126],{"emptyLinePlaceholder":125},[84,7789,7790,7793],{"class":86,"line":1746},[84,7791,7792],{"class":98},"    startPolling",[84,7794,1307],{"class":90},[84,7796,7797,7799,7801,7803,7806,7808,7810,7812],{"class":86,"line":1763},[84,7798,1987],{"class":108},[84,7800,1341],{"class":90},[84,7802,2151],{"class":135},[84,7804,7805],{"class":90},".poller ",[84,7807,6848],{"class":108},[84,7809,1264],{"class":135},[84,7811,3126],{"class":90},[84,7813,1530],{"class":108},[84,7815,7816],{"class":86,"line":1772},[84,7817,126],{"emptyLinePlaceholder":125},[84,7819,7820,7822,7824,7826,7828,7830,7832],{"class":86,"line":2283},[84,7821,2022],{"class":135},[84,7823,7805],{"class":90},[84,7825,184],{"class":108},[84,7827,6868],{"class":98},[84,7829,2992],{"class":90},[84,7831,172],{"class":108},[84,7833,175],{"class":90},[84,7835,7836,7839,7841,7843,7845],{"class":86,"line":2288},[84,7837,7838],{"class":108},"        void",[84,7840,2078],{"class":135},[84,7842,764],{"class":90},[84,7844,7613],{"class":98},[84,7846,635],{"class":90},[84,7848,7849,7852,7854],{"class":86,"line":2307},[84,7850,7851],{"class":90},"      }, ",[84,7853,6891],{"class":135},[84,7855,151],{"class":90},[84,7857,7858],{"class":86,"line":2320},[84,7859,7783],{"class":90},[84,7861,7862],{"class":86,"line":2333},[84,7863,126],{"emptyLinePlaceholder":125},[84,7865,7866,7869],{"class":86,"line":2346},[84,7867,7868],{"class":98},"    stopPolling",[84,7870,1307],{"class":90},[84,7872,7873,7875,7877,7879,7881,7883,7885,7887],{"class":86,"line":2355},[84,7874,1987],{"class":108},[84,7876,1341],{"class":90},[84,7878,2151],{"class":135},[84,7880,7805],{"class":90},[84,7882,3288],{"class":108},[84,7884,1264],{"class":135},[84,7886,3126],{"class":90},[84,7888,1530],{"class":108},[84,7890,7891],{"class":86,"line":2360},[84,7892,126],{"emptyLinePlaceholder":125},[84,7894,7895,7898,7900,7902],{"class":86,"line":2375},[84,7896,7897],{"class":98},"      clearInterval",[84,7899,145],{"class":90},[84,7901,2151],{"class":135},[84,7903,7904],{"class":90},".poller)\n",[84,7906,7907,7909,7911,7913],{"class":86,"line":2384},[84,7908,2022],{"class":135},[84,7910,7805],{"class":90},[84,7912,184],{"class":108},[84,7914,6945],{"class":135},[84,7916,7917],{"class":86,"line":4853},[84,7918,1936],{"class":90},[84,7920,7921],{"class":86,"line":4865},[84,7922,485],{"class":90},[84,7924,7925],{"class":86,"line":4870},[84,7926,193],{"class":90},[84,7928,7929,7931,7933],{"class":86,"line":4879},[84,7930,274],{"class":90},[84,7932,95],{"class":94},[84,7934,102],{"class":90},[84,7936,7937],{"class":86,"line":4884},[84,7938,126],{"emptyLinePlaceholder":125},[84,7940,7941,7943,7945],{"class":86,"line":4893},[84,7942,91],{"class":90},[84,7944,291],{"class":94},[84,7946,102],{"class":90},[84,7948,7949,7951,7953,7955,7957,7959],{"class":86,"line":4910},[84,7950,299],{"class":90},[84,7952,4898],{"class":94},[84,7954,1629],{"class":98},[84,7956,184],{"class":90},[84,7958,7103],{"class":118},[84,7960,102],{"class":90},[84,7962,7963,7965,7967],{"class":86,"line":4920},[84,7964,1642],{"class":90},[84,7966,4915],{"class":94},[84,7968,102],{"class":90},[84,7970,7971,7973,7975,7977,7979],{"class":86,"line":4934},[84,7972,1691],{"class":90},[84,7974,34],{"class":94},[84,7976,7122],{"class":90},[84,7978,34],{"class":94},[84,7980,102],{"class":90},[84,7982,7983,7985,7987,7989,7991],{"class":86,"line":4943},[84,7984,1691],{"class":90},[84,7986,15],{"class":94},[84,7988,7135],{"class":90},[84,7990,15],{"class":94},[84,7992,102],{"class":90},[84,7994,7995,7997,7999,8001,8003,8005,8007,8009],{"class":86,"line":4949},[84,7996,1691],{"class":90},[84,7998,15],{"class":94},[84,8000,344],{"class":98},[84,8002,184],{"class":90},[84,8004,7152],{"class":118},[84,8006,7155],{"class":90},[84,8008,15],{"class":94},[84,8010,102],{"class":90},[84,8012,8013,8015,8017],{"class":86,"line":4959},[84,8014,1734],{"class":90},[84,8016,4915],{"class":94},[84,8018,102],{"class":90},[84,8020,8021],{"class":86,"line":4968},[84,8022,126],{"emptyLinePlaceholder":125},[84,8024,8025,8027,8029,8031,8033,8035],{"class":86,"line":4973},[84,8026,1642],{"class":90},[84,8028,341],{"class":94},[84,8030,1629],{"class":98},[84,8032,184],{"class":90},[84,8034,7184],{"class":118},[84,8036,102],{"class":90},[84,8038,8039,8041,8043,8045,8047,8049,8051,8053],{"class":86,"line":4997},[84,8040,1691],{"class":90},[84,8042,302],{"class":94},[84,8044,305],{"class":98},[84,8046,184],{"class":90},[84,8048,7199],{"class":118},[84,8050,7202],{"class":90},[84,8052,302],{"class":94},[84,8054,102],{"class":90},[84,8056,8057,8059,8061,8063,8065,8067,8069,8071],{"class":86,"line":5011},[84,8058,1691],{"class":90},[84,8060,302],{"class":94},[84,8062,305],{"class":98},[84,8064,184],{"class":90},[84,8066,7219],{"class":118},[84,8068,7222],{"class":90},[84,8070,302],{"class":94},[84,8072,102],{"class":90},[84,8074,8075,8077,8079,8081,8083,8085,8087,8089],{"class":86,"line":5024},[84,8076,1691],{"class":90},[84,8078,302],{"class":94},[84,8080,305],{"class":98},[84,8082,184],{"class":90},[84,8084,7239],{"class":118},[84,8086,7242],{"class":90},[84,8088,302],{"class":94},[84,8090,102],{"class":90},[84,8092,8093,8095,8097],{"class":86,"line":5039},[84,8094,1734],{"class":90},[84,8096,341],{"class":94},[84,8098,102],{"class":90},[84,8100,8101],{"class":86,"line":5068},[84,8102,126],{"emptyLinePlaceholder":125},[84,8104,8105,8107,8109],{"class":86,"line":5077},[84,8106,1642],{"class":90},[84,8108,737],{"class":94},[84,8110,102],{"class":90},[84,8112,8113,8115],{"class":86,"line":5082},[84,8114,1691],{"class":90},[84,8116,7273],{"class":94},[84,8118,8119,8121,8123],{"class":86,"line":5103},[84,8120,7278],{"class":98},[84,8122,184],{"class":90},[84,8124,7283],{"class":118},[84,8126,8127,8129,8131],{"class":86,"line":5112},[84,8128,7288],{"class":98},[84,8130,184],{"class":90},[84,8132,7293],{"class":118},[84,8134,8135],{"class":86,"line":5768},[84,8136,5318],{"class":90},[84,8138,8139],{"class":86,"line":5781},[84,8140,7302],{"class":90},[84,8142,8143,8145,8147],{"class":86,"line":5794},[84,8144,4952],{"class":90},[84,8146,740],{"class":94},[84,8148,102],{"class":90},[84,8150,8151,8153,8155],{"class":86,"line":5819},[84,8152,1734],{"class":90},[84,8154,737],{"class":94},[84,8156,102],{"class":90},[84,8158,8159,8161,8163],{"class":86,"line":5828},[84,8160,324],{"class":90},[84,8162,4898],{"class":94},[84,8164,102],{"class":90},[84,8166,8167,8169,8171],{"class":86,"line":5833},[84,8168,274],{"class":90},[84,8170,291],{"class":94},[84,8172,102],{"class":90},[737,8174,8175,8180,8185,8188],{},[740,8176,8177,8179],{},[22,8178,6013],{}," cubre tanto la primera activación como cada regreso desde caché.",[740,8181,8182,8184],{},[22,8183,6021],{}," pausa el polling para no seguir consumiendo recursos fuera de pantalla.",[740,8186,8187],{},"El filtro local se conserva porque la instancia no se destruye.",[740,8189,8190,8192],{},[22,8191,1092],{}," queda reservado para trabajo realmente inicial; aquí solo marca que la instancia ya pasó por su montaje inicial.",[34,8194,2406],{"id":2405},[737,8196,8197,8202,8207,8212,8215],{},[740,8198,8199,8201],{},[22,8200,5945],{}," conserva la instancia y su estado local entre cambios de vista.",[740,8203,8204,8206],{},[22,8205,5948],{}," no significa “montar otra vez”, sino “volver a estar activo”.",[740,8208,8209,8211],{},[22,8210,5951],{}," es el hook adecuado para pausar trabajo cuando la instancia queda cacheada.",[740,8213,8214],{},"Conservar estado no evita que tengas que revalidar datos cuando la vista regresa.",[740,8216,8217],{},"Si el componente debe reiniciarse siempre desde cero, probablemente no deberías cachearlo.",[835,8219,2417],{},{"title":80,"searchDepth":105,"depth":105,"links":8221},[8222,8223,8224,8225,8226,8227,8235,8240],{"id":5937,"depth":105,"text":5938},{"id":946,"depth":105,"text":947},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":6157,"depth":105,"text":6158},{"id":783,"depth":105,"text":784,"children":8228},[8229,8231,8232,8234],{"id":6252,"depth":122,"text":8230},"1. Cargar datos solo en mounted",{"id":6269,"depth":122,"text":6270},{"id":6289,"depth":122,"text":8233},"3. Esperar unmounted al cambiar entre tabs cacheadas",{"id":6308,"depth":122,"text":6309},{"id":2735,"depth":105,"text":2736,"children":8236},[8237,8238,8239],{"id":6322,"depth":122,"text":6323},{"id":6335,"depth":122,"text":6336},{"id":6345,"depth":122,"text":6346},{"id":2405,"depth":105,"text":2406},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1773371011\u002Fvue-lifecycle-keepalive-activated-deactivated_abjmwe.png","Ilustración de componentes cacheados con KeepAlive en Vue usando activated y deactivated","2026-03-13","Cómo funcionan activated y deactivated en componentes cacheados con \u003CKeepAlive>, cuándo usarlos y cómo evitar datos obsoletos, timers activos y lógica mal ubicada.",{"updatedAt":8246,"coverCaption":8247,"author":868,"keywords":8248},"2026-03-12T23:00:00-05:00","KeepAlive permite desactivar y reactivar componentes sin destruir su estado local",[870,8249,5948,5951,8250],"KeepAlive","cache de componentes","\u002Fblog\u002Fvue-lifecycle-keepalive-activated-deactivated.es",[8253],{"headline":5932,"author":8254,"datePublished":8246,"@type":880},{"name":868,"@type":879},{"title":5932,"description":8244},"blog\u002Fvue-lifecycle-keepalive-activated-deactivated.es",[8258,8259,8261,8262],{"tag":2453,"color":2454},{"tag":8249,"color":8260},"#27AE60",{"tag":888,"color":889},{"tag":2462,"color":2463},"LTJL6v4mw6lt5Nb8vhKocgwmO5u1q1TkDLjAgpE1abw",{"id":8265,"title":8266,"body":8267,"cover":9810,"coverAlt":9811,"date":9812,"description":9813,"draft":852,"extension":853,"lab":882,"locale":864,"meta":9814,"navigation":125,"path":9819,"schemaOrg":9820,"seo":9823,"series":2447,"seriesDescription":2448,"seriesOrder":154,"seriesTitle":2449,"slug":882,"stem":9824,"tags":9825,"__hash__":9829},"blog\u002Fblog\u002Fvue-lifecycle-unmounting-phase-beforeunmount-unmounted.es.md","Ciclos de vida en Vue: fase de desmontaje (beforeUnmount, unmounted)",{"type":8,"value":8268,"toc":9790},[8269,8278,8284,8292,8294,8304,8307,8324,8327,8339,8342,8354,8359,8361,8364,8366,8396,8399,8418,8420,8423,8431,8448,8451,8470,8473,8477,8526,8533,8535,8542,8545,8548,8572,8575,8581,8589,8595,8599,8608,8616,8619,8623,8629,8632,8634,8638,8641,8645,8651,8655,8664,9225,9751,9768,9770,9788],[11,8270,8272,8273,754,8276,909],{"id":8271},"ciclos-de-vida-en-vue-fase-de-desmontaje-beforeunmount-unmounted","Ciclos de vida en Vue: fase de desmontaje (",[22,8274,8275],{},"beforeUnmount",[22,8277,6063],{},[15,8279,8280,8281,8283],{},"Muchos bugs no nacen cuando un componente aparece, sino cuando desaparece. Un listener global que quedó activo, un ",[22,8282,6276],{}," que nunca se limpió o una petición que sigue en curso cuando el usuario ya cambió de vista suelen empezar ahí.",[15,8285,8286,8287,2488,8289,8291],{},"La fase de desmontaje sirve para cerrar correctamente esa historia. No se trata solo de “borrar cosas”, sino de dejar el componente en orden cuando Vue lo retira del árbol. Si entiendes bien la diferencia entre ",[22,8288,8275],{},[22,8290,6063],{},", puedes evitar fugas de memoria, efectos duplicados y componentes que siguen haciendo trabajo cuando ya no existen en pantalla.",[34,8293,947],{"id":946},[15,8295,8296,8297,8300,8301,8303],{},"El desmontaje ocurre cuando Vue decide retirar un componente del árbol activo. Esto puede pasar, por ejemplo, si un ",[22,8298,8299],{},"v-if"," cambia a ",[22,8302,148],{},", si cambias de ruta o si un componente dinámico deja de renderizarse.",[15,8305,8306],{},"En esa fase aparecen dos hooks:",[737,8308,8309,8317],{},[740,8310,8311,8313,8314,764],{},[22,8312,8275],{},": se ejecuta ",[958,8315,8316],{},"justo antes de que Vue desmonte el componente",[740,8318,8319,8313,8321,764],{},[22,8320,6063],{},[958,8322,8323],{},"cuando el componente ya fue desmontado",[15,8325,8326],{},"En Composition API, los equivalentes son:",[737,8328,8329,8334],{},[740,8330,8331],{},[22,8332,8333],{},"onBeforeUnmount()",[740,8335,8336],{},[22,8337,8338],{},"onUnmounted()",[15,8340,8341],{},"La diferencia importante es esta:",[737,8343,8344,8349],{},[740,8345,995,8346,8348],{},[22,8347,8275],{}," la instancia todavía existe y puedes acceder a su estado, refs y recursos activos para limpiarlos.",[740,8350,995,8351,8353],{},[22,8352,6063],{}," Vue ya terminó el desmontaje y ya detuvo los efectos reactivos del componente. Ese punto sirve más para confirmaciones finales, trazas o integraciones muy concretas.",[15,8355,8356,8357,764],{},"En la práctica, casi toda la limpieza útil ocurre en ",[22,8358,8275],{},[34,8360,1013],{"id":1012},[15,8362,8363],{},"La fase de desmontaje tiene sentido cuando el componente abrió recursos que no deben seguir vivos después.",[15,8365,4083],{},[737,8367,8368,8376,8390,8393],{},[740,8369,8370,8371,754,8373,8375],{},"Quitar listeners registrados sobre ",[22,8372,1106],{},[22,8374,1109],{}," o cualquier objeto externo.",[740,8377,8378,8379,754,8381,754,8384,50,8387,764],{},"Limpiar ",[22,8380,6276],{},[22,8382,8383],{},"setTimeout",[22,8385,8386],{},"requestAnimationFrame",[22,8388,8389],{},"ResizeObserver",[740,8391,8392],{},"Cerrar sockets, desconectar observers o abortar peticiones pendientes.",[740,8394,8395],{},"Guardar una última traza de depuración o telemetría cuando el componente ya terminó de salir.",[15,8397,8398],{},"Una regla sencilla:",[737,8400,8401,8410],{},[740,8402,8403,8404,8407,8408,764],{},"Si necesitas ",[958,8405,8406],{},"desconectar o cancelar algo",", piensa primero en ",[22,8409,8275],{},[740,8411,8403,8412,8415,8416,764],{},[958,8413,8414],{},"saber que el componente ya terminó de salir",", piensa en ",[22,8417,6063],{},[34,8419,1040],{"id":1039},[15,8421,8422],{},"No todo debe ir en estos hooks.",[15,8424,8425,8426,2488,8428,8430],{},"Evita ",[22,8427,8275],{},[22,8429,6063],{}," cuando:",[737,8432,8433,8439,8442,8445],{},[740,8434,8435,8436,764],{},"La lógica puede quedar encapsulada en un composable usando ",[22,8437,8438],{},"onScopeDispose",[740,8440,8441],{},"El recurso ya se limpia automáticamente y no requiere intervención manual.",[740,8443,8444],{},"Estás usando el hook para corregir un problema que en realidad viene de una mala estructura del componente.",[740,8446,8447],{},"El componente no se desmonta realmente, sino que solo se oculta.",[15,8449,8450],{},"Ese último punto importa mucho:",[737,8452,8453,8458,8464],{},[740,8454,8455,8457],{},[22,8456,8299],{}," puede desmontar un componente.",[740,8459,8460,8463],{},[22,8461,8462],{},"v-show"," solo lo oculta.",[740,8465,8466,8467,8469],{},"Un componente cacheado con ",[22,8468,5945],{}," puede desactivarse sin desmontarse.",[15,8471,8472],{},"Si confundes esos casos, esperarás un hook que nunca se ejecutará.",[34,8474,8476],{"id":8475},"comparación","Comparación",[6160,8478,8479,8494],{},[6163,8480,8481],{},[6166,8482,8483,8485,8488,8491],{},[6169,8484,6171],{},[6169,8486,8487],{},"Qué sigue disponible",[6169,8489,8490],{},"Uso natural",[6169,8492,8493],{},"Riesgo habitual",[6182,8495,8496,8511],{},[6166,8497,8498,8502,8505,8508],{},[6187,8499,8500],{},[22,8501,8275],{},[6187,8503,8504],{},"Instancia, refs, estado y recursos activos",[6187,8506,8507],{},"Limpiar listeners, timers, observers o abortar peticiones",[6187,8509,8510],{},"Dejar demasiado trabajo para después",[6166,8512,8513,8517,8520,8523],{},[6187,8514,8515],{},[22,8516,6063],{},[6187,8518,8519],{},"El componente ya salió del árbol y sus efectos fueron detenidos",[6187,8521,8522],{},"Trazas finales o integraciones puntuales",[6187,8524,8525],{},"Intentar hacer limpieza que dependía de la instancia viva",[15,8527,8528,8530,8531,764],{},[22,8529,6063],{}," existe, pero eso no significa que deba cargar con toda la responsabilidad del cierre. Si necesitas tocar algo que el componente abrió, normalmente llegaste tarde si esperas a ",[22,8532,6063],{},[34,8534,784],{"id":783},[1074,8536,8538,8539,8541],{"id":8537},"_1-registrar-recursos-en-mounted-y-olvidarse-del-cierre","1. Registrar recursos en ",[22,8540,1085],{}," y olvidarse del cierre",[15,8543,8544],{},"Es el error más común. El componente se monta correctamente, funciona durante un tiempo y luego empieza a comportarse de forma extraña porque un listener antiguo sigue respondiendo aunque la vista ya cambió.",[15,8546,8547],{},"Esto suele pasar con:",[737,8549,8550,8555,8560,8565,8569],{},[740,8551,8552],{},[22,8553,8554],{},"window.addEventListener()",[740,8556,8557],{},[22,8558,8559],{},"setInterval()",[740,8561,8562],{},[22,8563,8564],{},"IntersectionObserver",[740,8566,8567],{},[22,8568,8389],{},[740,8570,8571],{},"websockets o suscripciones externas",[15,8573,8574],{},"Si lo abriste manualmente, debes asumir que también te corresponde cerrarlo.",[1074,8576,8578,8579],{"id":8577},"_2-dejar-toda-la-limpieza-en-unmounted","2. Dejar toda la limpieza en ",[22,8580,6063],{},[15,8582,8583,8585,8586,8588],{},[22,8584,6063],{}," no es el lugar ideal para todo. Si necesitas abortar una petición, desconectar un observer o retirar listeners mientras la instancia todavía es accesible, ",[22,8587,8275],{}," es más claro y más seguro.",[15,8590,8591,8592,8594],{},"Piensa en ",[22,8593,8275],{}," como el momento de desmontar la mesa antes de sacarla del salón.",[1074,8596,8598],{"id":8597},"_3-confundir-ocultar-con-desmontar","3. Confundir ocultar con desmontar",[15,8600,8601,8602,8604,8605,8607],{},"Muchos desarrolladores esperan que ",[22,8603,8275],{}," se ejecute cuando un panel deja de verse. Pero si ese panel usa ",[22,8606,8462],{},", el componente sigue vivo.",[15,8609,8610,8611,8613,8614,764],{},"También ocurre con ",[22,8612,5945],{},": al cambiar de vista, el componente puede quedar desactivado y luego reactivarse sin pasar por ",[22,8615,6063],{},[15,8617,8618],{},"Si el problema es de activación o desactivación, los hooks correctos pueden ser otros.",[1074,8620,8622],{"id":8621},"_4-lanzar-trabajo-nuevo-cuando-el-componente-ya-se-está-yendo","4. Lanzar trabajo nuevo cuando el componente ya se está yendo",[15,8624,8625,8626,8628],{},"No conviene iniciar nuevas tareas pesadas durante el desmontaje. Si en ",[22,8627,8275],{}," abres otra petición o empiezas otra suscripción, estás complicando justo el momento en que Vue intenta cerrar el componente.",[15,8630,8631],{},"La fase de desmontaje debería reducir trabajo, no crear más.",[34,8633,2736],{"id":2735},[1074,8635,8637],{"id":8636},"limpiar-listeners-globales-al-salir-de-una-vista","Limpiar listeners globales al salir de una vista",[15,8639,8640],{},"Si una vista escucha eventos del navegador, esos listeners deben desaparecer cuando la ruta cambia. De lo contrario, terminarás reaccionando dos veces al mismo evento cuando el usuario vuelva.",[1074,8642,8644],{"id":8643},"abortar-una-petición-pendiente","Abortar una petición pendiente",[15,8646,8647,8648,8650],{},"En componentes con navegación rápida, es normal que una solicitud siga en curso mientras el usuario ya abandonó la página. Cancelarla en ",[22,8649,8275],{}," evita trabajo innecesario y estados inconsistentes.",[1074,8652,8654],{"id":8653},"dejar-una-traza-final-de-depuración","Dejar una traza final de depuración",[15,8656,8657,8659,8660,8663],{},[22,8658,6063],{}," puede ser útil para confirmar que el componente sí salió cuando estás investigando ",[4070,8661,8662],{},"remounts"," inesperados, cacheo o renders condicionales.",[74,8665,8667],{"className":76,"code":8666,"filename":873,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { onBeforeUnmount, onMounted, onUnmounted, ref } from 'vue'\n\nconst status = ref('Cargando estado...')\nconst totalTasks = ref\u003Cnumber | null>(null)\n\nlet controller: AbortController | null = null\n\nfunction syncOnlineStatus() {\n  status.value = navigator.onLine ? 'En línea' : 'Sin conexión'\n}\n\nasync function loadSummary() {\n  controller = new AbortController()\n\n  try {\n    const response = await fetch('\u002Fapi\u002Ftasks\u002Fsummary', {\n      signal: controller.signal\n    })\n\n    const data = await response.json() as { total: number }\n    totalTasks.value = data.total\n  }\n  catch (error) {\n    if (error instanceof DOMException && error.name === 'AbortError') {\n      return\n    }\n\n    console.error('No se pudo cargar el resumen', error)\n  }\n}\n\nonMounted(() => {\n  syncOnlineStatus()\n  window.addEventListener('online', syncOnlineStatus)\n  window.addEventListener('offline', syncOnlineStatus)\n  void loadSummary()\n})\n\nonBeforeUnmount(() => {\n  window.removeEventListener('online', syncOnlineStatus)\n  window.removeEventListener('offline', syncOnlineStatus)\n  controller?.abort()\n})\n\nonUnmounted(() => {\n  console.info('TaskSummary ya salió del árbol')\n})\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection class=\"task-summary\">\n    \u003Cp>{{ status }}\u003C\u002Fp>\n    \u003Cp v-if=\"totalTasks !== null\">\n      Tareas registradas: {{ totalTasks }}\n    \u003C\u002Fp>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[22,8668,8669,8685,8696,8700,8717,8743,8747,8768,8772,8781,8800,8804,8808,8819,8832,8836,8842,8861,8866,8870,8874,8904,8914,8918,8925,8950,8955,8959,8963,8977,8981,8985,8989,8999,9006,9022,9035,9044,9048,9052,9063,9076,9088,9098,9102,9106,9117,9130,9134,9142,9146,9154,9169,9181,9196,9201,9209,9217],{"__ignoreMap":80},[84,8670,8671,8673,8675,8677,8679,8681,8683],{"class":86,"line":87},[84,8672,91],{"class":90},[84,8674,95],{"class":94},[84,8676,99],{"class":98},[84,8678,1161],{"class":98},[84,8680,184],{"class":90},[84,8682,1166],{"class":118},[84,8684,102],{"class":90},[84,8686,8687,8689,8692,8694],{"class":86,"line":105},[84,8688,109],{"class":108},[84,8690,8691],{"class":90}," { onBeforeUnmount, onMounted, onUnmounted, ref } ",[84,8693,115],{"class":108},[84,8695,119],{"class":118},[84,8697,8698],{"class":86,"line":122},[84,8699,126],{"emptyLinePlaceholder":125},[84,8701,8702,8704,8706,8708,8710,8712,8715],{"class":86,"line":129},[84,8703,132],{"class":108},[84,8705,6494],{"class":135},[84,8707,139],{"class":108},[84,8709,142],{"class":98},[84,8711,145],{"class":90},[84,8713,8714],{"class":118},"'Cargando estado...'",[84,8716,151],{"class":90},[84,8718,8719,8721,8724,8726,8728,8730,8733,8735,8737,8739,8741],{"class":86,"line":154},[84,8720,132],{"class":108},[84,8722,8723],{"class":135}," totalTasks",[84,8725,139],{"class":108},[84,8727,142],{"class":98},[84,8729,91],{"class":90},[84,8731,8732],{"class":135},"number",[84,8734,1261],{"class":108},[84,8736,1264],{"class":135},[84,8738,1267],{"class":90},[84,8740,1270],{"class":135},[84,8742,151],{"class":90},[84,8744,8745],{"class":86,"line":159},[84,8746,126],{"emptyLinePlaceholder":125},[84,8748,8749,8752,8755,8757,8760,8762,8764,8766],{"class":86,"line":178},[84,8750,8751],{"class":108},"let",[84,8753,8754],{"class":90}," controller",[84,8756,1203],{"class":108},[84,8758,8759],{"class":98}," AbortController",[84,8761,1261],{"class":108},[84,8763,1264],{"class":135},[84,8765,139],{"class":108},[84,8767,6945],{"class":135},[84,8769,8770],{"class":86,"line":190},[84,8771,126],{"emptyLinePlaceholder":125},[84,8773,8774,8776,8779],{"class":86,"line":196},[84,8775,3246],{"class":108},[84,8777,8778],{"class":98}," syncOnlineStatus",[84,8780,1307],{"class":90},[84,8782,8783,8785,8787,8790,8792,8795,8797],{"class":86,"line":201},[84,8784,6711],{"class":90},[84,8786,184],{"class":108},[84,8788,8789],{"class":90}," navigator.onLine ",[84,8791,3073],{"class":108},[84,8793,8794],{"class":118}," 'En línea'",[84,8796,7012],{"class":108},[84,8798,8799],{"class":118}," 'Sin conexión'\n",[84,8801,8802],{"class":86,"line":217},[84,8803,193],{"class":90},[84,8805,8806],{"class":86,"line":227},[84,8807,126],{"emptyLinePlaceholder":125},[84,8809,8810,8812,8814,8817],{"class":86,"line":232},[84,8811,1299],{"class":108},[84,8813,421],{"class":108},[84,8815,8816],{"class":98}," loadSummary",[84,8818,1307],{"class":90},[84,8820,8821,8824,8826,8828,8830],{"class":86,"line":237},[84,8822,8823],{"class":90},"  controller ",[84,8825,184],{"class":108},[84,8827,1355],{"class":108},[84,8829,8759],{"class":98},[84,8831,635],{"class":90},[84,8833,8834],{"class":86,"line":253},[84,8835,126],{"emptyLinePlaceholder":125},[84,8837,8838,8840],{"class":86,"line":266},[84,8839,1428],{"class":108},[84,8841,175],{"class":90},[84,8843,8844,8846,8848,8850,8852,8854,8856,8859],{"class":86,"line":271},[84,8845,3021],{"class":108},[84,8847,1314],{"class":135},[84,8849,139],{"class":108},[84,8851,1319],{"class":108},[84,8853,1322],{"class":98},[84,8855,145],{"class":90},[84,8857,8858],{"class":118},"'\u002Fapi\u002Ftasks\u002Fsummary'",[84,8860,3146],{"class":90},[84,8862,8863],{"class":86,"line":281},[84,8864,8865],{"class":90},"      signal: controller.signal\n",[84,8867,8868],{"class":86,"line":286},[84,8869,3698],{"class":90},[84,8871,8872],{"class":86,"line":296},[84,8873,126],{"emptyLinePlaceholder":125},[84,8875,8876,8878,8880,8882,8884,8886,8888,8891,8893,8895,8898,8900,8902],{"class":86,"line":315},[84,8877,3021],{"class":108},[84,8879,6746],{"class":135},[84,8881,139],{"class":108},[84,8883,1319],{"class":108},[84,8885,1388],{"class":90},[84,8887,1391],{"class":98},[84,8889,8890],{"class":90},"() ",[84,8892,1397],{"class":108},[84,8894,6763],{"class":90},[84,8896,8897],{"class":429},"total",[84,8899,1203],{"class":108},[84,8901,3259],{"class":135},[84,8903,2968],{"class":90},[84,8905,8906,8909,8911],{"class":86,"line":321},[84,8907,8908],{"class":90},"    totalTasks.value ",[84,8910,184],{"class":108},[84,8912,8913],{"class":90}," data.total\n",[84,8915,8916],{"class":86,"line":331},[84,8917,485],{"class":90},[84,8919,8920,8923],{"class":86,"line":336},[84,8921,8922],{"class":108},"  catch",[84,8924,1450],{"class":90},[84,8926,8927,8929,8932,8934,8937,8940,8943,8945,8948],{"class":86,"line":354},[84,8928,2146],{"class":108},[84,8930,8931],{"class":90}," (error ",[84,8933,1468],{"class":108},[84,8935,8936],{"class":98}," DOMException",[84,8938,8939],{"class":108}," &&",[84,8941,8942],{"class":90}," error.name ",[84,8944,3288],{"class":108},[84,8946,8947],{"class":118}," 'AbortError'",[84,8949,438],{"class":90},[84,8951,8952],{"class":86,"line":360},[84,8953,8954],{"class":108},"      return\n",[84,8956,8957],{"class":86,"line":369},[84,8958,1936],{"class":90},[84,8960,8961],{"class":86,"line":1453},[84,8962,126],{"emptyLinePlaceholder":125},[84,8964,8965,8967,8969,8971,8974],{"class":86,"line":1462},[84,8966,3666],{"class":90},[84,8968,4127],{"class":98},[84,8970,145],{"class":90},[84,8972,8973],{"class":118},"'No se pudo cargar el resumen'",[84,8975,8976],{"class":90},", error)\n",[84,8978,8979],{"class":86,"line":1484},[84,8980,485],{"class":90},[84,8982,8983],{"class":86,"line":1489},[84,8984,193],{"class":90},[84,8986,8987],{"class":86,"line":1495},[84,8988,126],{"emptyLinePlaceholder":125},[84,8990,8991,8993,8995,8997],{"class":86,"line":1500},[84,8992,1503],{"class":98},[84,8994,2992],{"class":90},[84,8996,172],{"class":108},[84,8998,175],{"class":90},[84,9000,9001,9004],{"class":86,"line":1516},[84,9002,9003],{"class":98},"  syncOnlineStatus",[84,9005,635],{"class":90},[84,9007,9008,9011,9014,9016,9019],{"class":86,"line":1533},[84,9009,9010],{"class":90},"  window.",[84,9012,9013],{"class":98},"addEventListener",[84,9015,145],{"class":90},[84,9017,9018],{"class":118},"'online'",[84,9020,9021],{"class":90},", syncOnlineStatus)\n",[84,9023,9024,9026,9028,9030,9033],{"class":86,"line":1538},[84,9025,9010],{"class":90},[84,9027,9013],{"class":98},[84,9029,145],{"class":90},[84,9031,9032],{"class":118},"'offline'",[84,9034,9021],{"class":90},[84,9036,9037,9040,9042],{"class":86,"line":1545},[84,9038,9039],{"class":108},"  void",[84,9041,8816],{"class":98},[84,9043,635],{"class":90},[84,9045,9046],{"class":86,"line":1554},[84,9047,1492],{"class":90},[84,9049,9050],{"class":86,"line":1563},[84,9051,126],{"emptyLinePlaceholder":125},[84,9053,9054,9057,9059,9061],{"class":86,"line":1570},[84,9055,9056],{"class":98},"onBeforeUnmount",[84,9058,2992],{"class":90},[84,9060,172],{"class":108},[84,9062,175],{"class":90},[84,9064,9065,9067,9070,9072,9074],{"class":86,"line":1588},[84,9066,9010],{"class":90},[84,9068,9069],{"class":98},"removeEventListener",[84,9071,145],{"class":90},[84,9073,9018],{"class":118},[84,9075,9021],{"class":90},[84,9077,9078,9080,9082,9084,9086],{"class":86,"line":1593},[84,9079,9010],{"class":90},[84,9081,9069],{"class":98},[84,9083,145],{"class":90},[84,9085,9032],{"class":118},[84,9087,9021],{"class":90},[84,9089,9090,9093,9096],{"class":86,"line":1598},[84,9091,9092],{"class":90},"  controller?.",[84,9094,9095],{"class":98},"abort",[84,9097,635],{"class":90},[84,9099,9100],{"class":86,"line":1607},[84,9101,1492],{"class":90},[84,9103,9104],{"class":86,"line":1612},[84,9105,126],{"emptyLinePlaceholder":125},[84,9107,9108,9111,9113,9115],{"class":86,"line":1621},[84,9109,9110],{"class":98},"onUnmounted",[84,9112,2992],{"class":90},[84,9114,172],{"class":108},[84,9116,175],{"class":90},[84,9118,9119,9121,9123,9125,9128],{"class":86,"line":1639},[84,9120,3135],{"class":90},[84,9122,4044],{"class":98},[84,9124,145],{"class":90},[84,9126,9127],{"class":118},"'TaskSummary ya salió del árbol'",[84,9129,151],{"class":90},[84,9131,9132],{"class":86,"line":1661},[84,9133,1492],{"class":90},[84,9135,9136,9138,9140],{"class":86,"line":1666},[84,9137,274],{"class":90},[84,9139,95],{"class":94},[84,9141,102],{"class":90},[84,9143,9144],{"class":86,"line":1688},[84,9145,126],{"emptyLinePlaceholder":125},[84,9147,9148,9150,9152],{"class":86,"line":1703},[84,9149,91],{"class":90},[84,9151,291],{"class":94},[84,9153,102],{"class":90},[84,9155,9156,9158,9160,9162,9164,9167],{"class":86,"line":1717},[84,9157,299],{"class":90},[84,9159,4898],{"class":94},[84,9161,1629],{"class":98},[84,9163,184],{"class":90},[84,9165,9166],{"class":118},"\"task-summary\"",[84,9168,102],{"class":90},[84,9170,9171,9173,9175,9177,9179],{"class":86,"line":1731},[84,9172,1642],{"class":90},[84,9174,15],{"class":94},[84,9176,7135],{"class":90},[84,9178,15],{"class":94},[84,9180,102],{"class":90},[84,9182,9183,9185,9187,9189,9191,9194],{"class":86,"line":1741},[84,9184,1642],{"class":90},[84,9186,15],{"class":94},[84,9188,344],{"class":98},[84,9190,184],{"class":90},[84,9192,9193],{"class":118},"\"totalTasks !== null\"",[84,9195,102],{"class":90},[84,9197,9198],{"class":86,"line":1746},[84,9199,9200],{"class":90},"      Tareas registradas: {{ totalTasks }}\n",[84,9202,9203,9205,9207],{"class":86,"line":1763},[84,9204,1734],{"class":90},[84,9206,15],{"class":94},[84,9208,102],{"class":90},[84,9210,9211,9213,9215],{"class":86,"line":1772},[84,9212,324],{"class":90},[84,9214,4898],{"class":94},[84,9216,102],{"class":90},[84,9218,9219,9221,9223],{"class":86,"line":2283},[84,9220,274],{"class":90},[84,9222,291],{"class":94},[84,9224,102],{"class":90},[74,9226,9228],{"className":76,"code":9227,"filename":1782,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      status: 'Cargando estado...',\n      totalTasks: null,\n      controller: null\n    }\n  },\n\n  mounted() {\n    this.syncOnlineStatus()\n    window.addEventListener('online', this.syncOnlineStatus)\n    window.addEventListener('offline', this.syncOnlineStatus)\n    void this.loadSummary()\n  },\n\n  beforeUnmount() {\n    window.removeEventListener('online', this.syncOnlineStatus)\n    window.removeEventListener('offline', this.syncOnlineStatus)\n    this.controller?.abort()\n  },\n\n  unmounted() {\n    console.info('TaskSummary ya salió del árbol')\n  },\n\n  methods: {\n    syncOnlineStatus() {\n      this.status = navigator.onLine ? 'En línea' : 'Sin conexión'\n    },\n\n    async loadSummary() {\n      this.controller = new AbortController()\n\n      try {\n        const response = await fetch('\u002Fapi\u002Ftasks\u002Fsummary', {\n          signal: this.controller.signal\n        })\n\n        const data = await response.json()\n        this.totalTasks = data.total\n      }\n      catch (error) {\n        if (error instanceof DOMException && error.name === 'AbortError') {\n          return\n        }\n\n        console.error('No se pudo cargar el resumen', error)\n      }\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection class=\"task-summary\">\n    \u003Cp>{{ status }}\u003C\u002Fp>\n    \u003Cp v-if=\"totalTasks !== null\">\n      Tareas registradas: {{ totalTasks }}\n    \u003C\u002Fp>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[22,9229,9230,9238,9246,9252,9258,9266,9275,9283,9287,9291,9295,9301,9312,9330,9346,9359,9363,9367,9374,9390,9406,9417,9421,9425,9432,9444,9448,9452,9456,9463,9481,9485,9489,9497,9512,9516,9523,9541,9551,9556,9560,9576,9588,9592,9599,9620,9625,9630,9634,9647,9651,9655,9659,9663,9671,9675,9683,9697,9709,9723,9727,9735,9743],{"__ignoreMap":80},[84,9231,9232,9234,9236],{"class":86,"line":87},[84,9233,91],{"class":90},[84,9235,95],{"class":94},[84,9237,102],{"class":90},[84,9239,9240,9242,9244],{"class":86,"line":105},[84,9241,418],{"class":108},[84,9243,1870],{"class":108},[84,9245,175],{"class":90},[84,9247,9248,9250],{"class":86,"line":122},[84,9249,1896],{"class":98},[84,9251,1307],{"class":90},[84,9253,9254,9256],{"class":86,"line":129},[84,9255,1903],{"class":108},[84,9257,175],{"class":90},[84,9259,9260,9262,9264],{"class":86,"line":154},[84,9261,7387],{"class":90},[84,9263,8714],{"class":118},[84,9265,1887],{"class":90},[84,9267,9268,9271,9273],{"class":86,"line":159},[84,9269,9270],{"class":90},"      totalTasks: ",[84,9272,1270],{"class":135},[84,9274,1887],{"class":90},[84,9276,9277,9280],{"class":86,"line":178},[84,9278,9279],{"class":90},"      controller: ",[84,9281,9282],{"class":135},"null\n",[84,9284,9285],{"class":86,"line":190},[84,9286,1936],{"class":90},[84,9288,9289],{"class":86,"line":196},[84,9290,1941],{"class":90},[84,9292,9293],{"class":86,"line":201},[84,9294,126],{"emptyLinePlaceholder":125},[84,9296,9297,9299],{"class":86,"line":217},[84,9298,7551],{"class":98},[84,9300,1307],{"class":90},[84,9302,9303,9305,9307,9310],{"class":86,"line":227},[84,9304,5499],{"class":135},[84,9306,764],{"class":90},[84,9308,9309],{"class":98},"syncOnlineStatus",[84,9311,635],{"class":90},[84,9313,9314,9317,9319,9321,9323,9325,9327],{"class":86,"line":232},[84,9315,9316],{"class":90},"    window.",[84,9318,9013],{"class":98},[84,9320,145],{"class":90},[84,9322,9018],{"class":118},[84,9324,754],{"class":90},[84,9326,2151],{"class":135},[84,9328,9329],{"class":90},".syncOnlineStatus)\n",[84,9331,9332,9334,9336,9338,9340,9342,9344],{"class":86,"line":237},[84,9333,9316],{"class":90},[84,9335,9013],{"class":98},[84,9337,145],{"class":90},[84,9339,9032],{"class":118},[84,9341,754],{"class":90},[84,9343,2151],{"class":135},[84,9345,9329],{"class":90},[84,9347,9348,9350,9352,9354,9357],{"class":86,"line":253},[84,9349,6879],{"class":108},[84,9351,2078],{"class":135},[84,9353,764],{"class":90},[84,9355,9356],{"class":98},"loadSummary",[84,9358,635],{"class":90},[84,9360,9361],{"class":86,"line":266},[84,9362,1941],{"class":90},[84,9364,9365],{"class":86,"line":271},[84,9366,126],{"emptyLinePlaceholder":125},[84,9368,9369,9372],{"class":86,"line":281},[84,9370,9371],{"class":98},"  beforeUnmount",[84,9373,1307],{"class":90},[84,9375,9376,9378,9380,9382,9384,9386,9388],{"class":86,"line":286},[84,9377,9316],{"class":90},[84,9379,9069],{"class":98},[84,9381,145],{"class":90},[84,9383,9018],{"class":118},[84,9385,754],{"class":90},[84,9387,2151],{"class":135},[84,9389,9329],{"class":90},[84,9391,9392,9394,9396,9398,9400,9402,9404],{"class":86,"line":296},[84,9393,9316],{"class":90},[84,9395,9069],{"class":98},[84,9397,145],{"class":90},[84,9399,9032],{"class":118},[84,9401,754],{"class":90},[84,9403,2151],{"class":135},[84,9405,9329],{"class":90},[84,9407,9408,9410,9413,9415],{"class":86,"line":315},[84,9409,5499],{"class":135},[84,9411,9412],{"class":90},".controller?.",[84,9414,9095],{"class":98},[84,9416,635],{"class":90},[84,9418,9419],{"class":86,"line":321},[84,9420,1941],{"class":90},[84,9422,9423],{"class":86,"line":331},[84,9424,126],{"emptyLinePlaceholder":125},[84,9426,9427,9430],{"class":86,"line":336},[84,9428,9429],{"class":98},"  unmounted",[84,9431,1307],{"class":90},[84,9433,9434,9436,9438,9440,9442],{"class":86,"line":354},[84,9435,3666],{"class":90},[84,9437,4044],{"class":98},[84,9439,145],{"class":90},[84,9441,9127],{"class":118},[84,9443,151],{"class":90},[84,9445,9446],{"class":86,"line":360},[84,9447,1941],{"class":90},[84,9449,9450],{"class":86,"line":369},[84,9451,126],{"emptyLinePlaceholder":125},[84,9453,9454],{"class":86,"line":1453},[84,9455,1950],{"class":90},[84,9457,9458,9461],{"class":86,"line":1462},[84,9459,9460],{"class":98},"    syncOnlineStatus",[84,9462,1307],{"class":90},[84,9464,9465,9467,9469,9471,9473,9475,9477,9479],{"class":86,"line":1484},[84,9466,2022],{"class":135},[84,9468,7588],{"class":90},[84,9470,184],{"class":108},[84,9472,8789],{"class":90},[84,9474,3073],{"class":108},[84,9476,8794],{"class":118},[84,9478,7012],{"class":108},[84,9480,8799],{"class":118},[84,9482,9483],{"class":86,"line":1489},[84,9484,7783],{"class":90},[84,9486,9487],{"class":86,"line":1495},[84,9488,126],{"emptyLinePlaceholder":125},[84,9490,9491,9493,9495],{"class":86,"line":1500},[84,9492,1955],{"class":108},[84,9494,8816],{"class":98},[84,9496,1307],{"class":90},[84,9498,9499,9501,9504,9506,9508,9510],{"class":86,"line":1516},[84,9500,2022],{"class":135},[84,9502,9503],{"class":90},".controller ",[84,9505,184],{"class":108},[84,9507,1355],{"class":108},[84,9509,8759],{"class":98},[84,9511,635],{"class":90},[84,9513,9514],{"class":86,"line":1533},[84,9515,126],{"emptyLinePlaceholder":125},[84,9517,9518,9521],{"class":86,"line":1538},[84,9519,9520],{"class":108},"      try",[84,9522,175],{"class":90},[84,9524,9525,9527,9529,9531,9533,9535,9537,9539],{"class":86,"line":1545},[84,9526,3559],{"class":108},[84,9528,1314],{"class":135},[84,9530,139],{"class":108},[84,9532,1319],{"class":108},[84,9534,1322],{"class":98},[84,9536,145],{"class":90},[84,9538,8858],{"class":118},[84,9540,3146],{"class":90},[84,9542,9543,9546,9548],{"class":86,"line":1554},[84,9544,9545],{"class":90},"          signal: ",[84,9547,2151],{"class":135},[84,9549,9550],{"class":90},".controller.signal\n",[84,9552,9553],{"class":86,"line":1563},[84,9554,9555],{"class":90},"        })\n",[84,9557,9558],{"class":86,"line":1570},[84,9559,126],{"emptyLinePlaceholder":125},[84,9561,9562,9564,9566,9568,9570,9572,9574],{"class":86,"line":1588},[84,9563,3559],{"class":108},[84,9565,6746],{"class":135},[84,9567,139],{"class":108},[84,9569,1319],{"class":108},[84,9571,1388],{"class":90},[84,9573,1391],{"class":98},[84,9575,635],{"class":90},[84,9577,9578,9581,9584,9586],{"class":86,"line":1593},[84,9579,9580],{"class":135},"        this",[84,9582,9583],{"class":90},".totalTasks ",[84,9585,184],{"class":108},[84,9587,8913],{"class":90},[84,9589,9590],{"class":86,"line":1598},[84,9591,2013],{"class":90},[84,9593,9594,9597],{"class":86,"line":1607},[84,9595,9596],{"class":108},"      catch",[84,9598,1450],{"class":90},[84,9600,9601,9604,9606,9608,9610,9612,9614,9616,9618],{"class":86,"line":1612},[84,9602,9603],{"class":108},"        if",[84,9605,8931],{"class":90},[84,9607,1468],{"class":108},[84,9609,8936],{"class":98},[84,9611,8939],{"class":108},[84,9613,8942],{"class":90},[84,9615,3288],{"class":108},[84,9617,8947],{"class":118},[84,9619,438],{"class":90},[84,9621,9622],{"class":86,"line":1621},[84,9623,9624],{"class":108},"          return\n",[84,9626,9627],{"class":86,"line":1639},[84,9628,9629],{"class":90},"        }\n",[84,9631,9632],{"class":86,"line":1661},[84,9633,126],{"emptyLinePlaceholder":125},[84,9635,9636,9639,9641,9643,9645],{"class":86,"line":1666},[84,9637,9638],{"class":90},"        console.",[84,9640,4127],{"class":98},[84,9642,145],{"class":90},[84,9644,8973],{"class":118},[84,9646,8976],{"class":90},[84,9648,9649],{"class":86,"line":1688},[84,9650,2013],{"class":90},[84,9652,9653],{"class":86,"line":1703},[84,9654,1936],{"class":90},[84,9656,9657],{"class":86,"line":1717},[84,9658,485],{"class":90},[84,9660,9661],{"class":86,"line":1731},[84,9662,193],{"class":90},[84,9664,9665,9667,9669],{"class":86,"line":1741},[84,9666,274],{"class":90},[84,9668,95],{"class":94},[84,9670,102],{"class":90},[84,9672,9673],{"class":86,"line":1746},[84,9674,126],{"emptyLinePlaceholder":125},[84,9676,9677,9679,9681],{"class":86,"line":1763},[84,9678,91],{"class":90},[84,9680,291],{"class":94},[84,9682,102],{"class":90},[84,9684,9685,9687,9689,9691,9693,9695],{"class":86,"line":1772},[84,9686,299],{"class":90},[84,9688,4898],{"class":94},[84,9690,1629],{"class":98},[84,9692,184],{"class":90},[84,9694,9166],{"class":118},[84,9696,102],{"class":90},[84,9698,9699,9701,9703,9705,9707],{"class":86,"line":2283},[84,9700,1642],{"class":90},[84,9702,15],{"class":94},[84,9704,7135],{"class":90},[84,9706,15],{"class":94},[84,9708,102],{"class":90},[84,9710,9711,9713,9715,9717,9719,9721],{"class":86,"line":2288},[84,9712,1642],{"class":90},[84,9714,15],{"class":94},[84,9716,344],{"class":98},[84,9718,184],{"class":90},[84,9720,9193],{"class":118},[84,9722,102],{"class":90},[84,9724,9725],{"class":86,"line":2307},[84,9726,9200],{"class":90},[84,9728,9729,9731,9733],{"class":86,"line":2320},[84,9730,1734],{"class":90},[84,9732,15],{"class":94},[84,9734,102],{"class":90},[84,9736,9737,9739,9741],{"class":86,"line":2333},[84,9738,324],{"class":90},[84,9740,4898],{"class":94},[84,9742,102],{"class":90},[84,9744,9745,9747,9749],{"class":86,"line":2346},[84,9746,274],{"class":90},[84,9748,291],{"class":94},[84,9750,102],{"class":90},[737,9752,9753,9758,9763],{},[740,9754,9755,9757],{},[22,9756,1092],{}," abre recursos externos.",[740,9759,9760,9762],{},[22,9761,8333],{}," realiza la limpieza real.",[740,9764,9765,9767],{},[22,9766,8338],{}," deja una confirmación final de que el componente ya terminó de salir.",[34,9769,2406],{"id":2405},[737,9771,9772,9777,9782,9785],{},[740,9773,9774,9776],{},[22,9775,8275],{}," es el hook principal para limpiar lo que el componente abrió.",[740,9778,9779,9781],{},[22,9780,6063],{}," confirma que el desmontaje ya terminó.",[740,9783,9784],{},"Si el componente solo se oculta o queda cacheado, estos hooks pueden no ejecutarse.",[740,9786,9787],{},"El criterio más útil es simple: si registraste listeners, timers, observers o peticiones manuales, define también su cierre.",[835,9789,3902],{},{"title":80,"searchDepth":105,"depth":105,"links":9791},[9792,9793,9794,9795,9796,9804,9809],{"id":946,"depth":105,"text":947},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":8475,"depth":105,"text":8476},{"id":783,"depth":105,"text":784,"children":9797},[9798,9800,9802,9803],{"id":8537,"depth":122,"text":9799},"1. Registrar recursos en mounted y olvidarse del cierre",{"id":8577,"depth":122,"text":9801},"2. Dejar toda la limpieza en unmounted",{"id":8597,"depth":122,"text":8598},{"id":8621,"depth":122,"text":8622},{"id":2735,"depth":105,"text":2736,"children":9805},[9806,9807,9808],{"id":8636,"depth":122,"text":8637},{"id":8643,"depth":122,"text":8644},{"id":8653,"depth":122,"text":8654},{"id":2405,"depth":105,"text":2406},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1773284773\u002Fvue-lifecycle-unmounting-phase-beforeunmount-unmounted_f9gqy0.png","Ilustración de la fase de desmontaje del ciclo de vida de Vue con beforeUnmount y unmounted","2026-03-12","Qué ocurre cuando un componente sale de pantalla y cómo usar beforeUnmount y unmounted para limpiar listeners, timers y efectos sin dejar fugas ni comportamientos extraños.",{"updatedAt":9815,"coverCaption":9816,"author":868,"keywords":9817},"2026-03-11T22:00:00-05:00","La fase de desmontaje ocurre cuando Vue retira un componente del árbol activo",[870,8275,6063,9056,9818],"cleanup","\u002Fblog\u002Fvue-lifecycle-unmounting-phase-beforeunmount-unmounted.es",[9821],{"headline":8266,"author":9822,"datePublished":9815,"@type":880},{"name":868,"@type":879},{"title":8266,"description":9813},"blog\u002Fvue-lifecycle-unmounting-phase-beforeunmount-unmounted.es",[9826,9827,9828],{"tag":2453,"color":2454},{"tag":888,"color":889},{"tag":894,"color":895},"smji8WZsDewTRrh-7nuJ-1afgxZeubOV6QESqNZQknk",{"id":9831,"title":9832,"body":9833,"cover":11384,"coverAlt":11385,"date":11386,"description":11387,"draft":852,"extension":853,"lab":882,"locale":864,"meta":11388,"navigation":125,"path":11393,"schemaOrg":11394,"seo":11397,"series":2447,"seriesDescription":2448,"seriesOrder":129,"seriesTitle":2449,"slug":882,"stem":11398,"tags":11399,"__hash__":11405},"blog\u002Fblog\u002Fvue-lifecycle-update-phase-beforeupdate-updated.es.md","Ciclos de vida en Vue: fase de actualización (beforeUpdate, updated)",{"type":8,"value":9834,"toc":11372},[9835,9845,9851,9858,9861,9863,9866,9869,9885,9890,9902,9905,9935,9946,9951,9956,9958,9964,9966,9983,9991,10000,10002,10005,10011,10030,10040,10042,10051,10054,10063,10079,10086,10089,10181,10184,10191,10204,10210,10218,10221,10226,10230,10236,10239,10250,10253,10262,10264,10268,10271,10274,10277,10281,10288,10293,10297,10300,10383,10386,10861,11312,11324,11326,11369],[11,9836,9838,9839,754,9842,909],{"id":9837},"ciclos-de-vida-en-vue-fase-de-actualización-beforeupdate-updated","Ciclos de vida en Vue: fase de actualización (",[22,9840,9841],{},"beforeUpdate",[22,9843,9844],{},"updated",[15,9846,9847,9848,9850],{},"Muchos componentes no fallan al crearse ni al montarse. Fallan después, cuando el estado cambia y la interfaz empieza a re-renderizarse varias veces. Ahí aparecen mediciones incorrectas, efectos duplicados o hooks usados como si fueran un ",[22,9849,2526],{}," global.",[15,9852,9853,9854,9857],{},"La fase de actualización existe precisamente para entender ese momento: ",[958,9855,9856],{},"cuándo Vue todavía no ha reflejado el cambio en el DOM y cuándo ya terminó de hacerlo",". Si manejas bien esa diferencia, evitas código reactivo confuso y componentes que se vuelven difíciles de mantener.",[15,9859,9860],{},"En aplicaciones reales, muchos problemas de UI —scroll roto, mediciones incorrectas o integraciones con librerías externas que se desincronizan— aparecen justo en este punto del ciclo de vida.",[11,9862,947],{"id":946},[15,9864,9865],{},"Cada vez que una dependencia reactiva usada por el componente cambia, Vue programa una nueva renderización.",[15,9867,9868],{},"Durante ese proceso aparecen dos hooks:",[737,9870,9871,9878],{},[740,9872,9873,8313,9875,764],{},[22,9874,9841],{},[958,9876,9877],{},"después de que el estado cambió, pero antes de que Vue actualice el DOM",[740,9879,9880,8313,9882,764],{},[22,9881,9844],{},[958,9883,9884],{},"después de que Vue ya aplicó los cambios al DOM",[15,9886,995,9887,9889],{},[958,9888,873],{},", los equivalentes son:",[737,9891,9892,9897],{},[740,9893,9894],{},[22,9895,9896],{},"onBeforeUpdate()",[740,9898,9899],{},[22,9900,9901],{},"onUpdated()",[15,9903,9904],{},"La idea práctica es bastante simple:",[737,9906,9907,9915,9922],{},[740,9908,8403,9909,754,9912,9914],{},[958,9910,9911],{},"ver el estado anterior del DOM antes de que cambie",[22,9913,9841],{}," es el momento.",[740,9916,8403,9917,754,9920,9914],{},[958,9918,9919],{},"leer o manipular el DOM ya actualizado",[22,9921,9844],{},[740,9923,9924,9925,9928,9929,9931,9932,9934],{},"Si lo que quieres es ",[958,9926,9927],{},"reaccionar a un dato concreto",", normalmente un ",[22,9930,2526],{}," o un ",[22,9933,2523],{}," será más claro que cualquiera de estos hooks.",[15,9936,9937,9938,9941,9942,9945],{},"También conviene recordar algo importante: ",[958,9939,9940],{},"Vue agrupa cambios reactivos y actualizaciones del DOM",". Esto significa que estos hooks no expresan ",[4070,9943,9944],{},"\"cambió esta variable\"",", sino algo más amplio:",[823,9947,9948],{},[15,9949,9950],{},"\"El componente está entrando o saliendo de un ciclo completo de actualización.\"",[15,9952,9953,9954,764],{},"Por eso no son buenos sustitutos de ",[22,9955,2526],{},[11,9957,1013],{"id":1012},[15,9959,9960,9961,764],{},"La fase de actualización encaja bien cuando tu lógica depende del ",[958,9962,9963],{},"paso entre un render y el siguiente",[15,9965,4083],{},[737,9967,9968,9971,9974,9977,9980],{},[740,9969,9970],{},"Comparar el DOM visible antes y después de una actualización.",[740,9972,9973],{},"Ajustar scroll o foco después de que cambió una lista renderizada.",[740,9975,9976],{},"Recalcular una integración con una librería externa cuando el marcado ya está actualizado.",[740,9978,9979],{},"Sincronizar layouts dinámicos.",[740,9981,9982],{},"Depurar renderizados excesivos o entender por qué una vista se está refrescando.",[15,9984,9985,9987,9988,764],{},[22,9986,9841],{}," suele ser útil cuando quieres ",[958,9989,9990],{},"leer o limpiar algo del DOM anterior antes de que Vue lo reemplace",[15,9992,9993,9995,9996,9999],{},[22,9994,9844],{}," tiene sentido cuando necesitas ",[958,9997,9998],{},"confirmar que el HTML ya refleja el nuevo estado"," y solo entonces medir, desplazar o sincronizar una librería.",[11,10001,1040],{"id":1039},[15,10003,10004],{},"No todo cambio reactivo necesita estos hooks.",[15,10006,8425,10007,2488,10009,8430],{},[22,10008,9841],{},[22,10010,9844],{},[737,10012,10013,10016,10021,10024],{},[740,10014,10015],{},"Solo quieres reaccionar a una propiedad concreta.",[740,10017,10018,10019,764],{},"Puedes resolver el problema con ",[22,10020,2523],{},[740,10022,10023],{},"La lógica no depende del DOM.",[740,10025,10026,10027,10029],{},"Estás pensando en ",[22,10028,9844],{}," para disparar más cambios de estado sin una condición clara.",[15,10031,10032,10033,10035,10036,10039],{},"En especial, ",[22,10034,9844],{}," puede volverse peligroso si dentro cambias el mismo estado que provocó el render. Ahí es donde nacen los ",[958,10037,10038],{},"bucles de actualización"," o los renders innecesarios.",[11,10041,784],{"id":783},[34,10043,10045,10046,10048,10049],{"id":10044},"usar-updated-como-reemplazo-de-watch","Usar ",[22,10047,9844],{}," como reemplazo de ",[22,10050,2526],{},[15,10052,10053],{},"Es un error muy frecuente.",[15,10055,10056,10058,10059,10062],{},[22,10057,9844],{}," se ejecuta ",[958,10060,10061],{},"cuando el componente ya se volvió a renderizar",", no cuando una variable específica cambió con intención semántica.",[15,10064,10065,10066,754,10069,754,10072,10075,10076,10078],{},"Si necesitas reaccionar a ",[22,10067,10068],{},"search",[22,10070,10071],{},"page",[22,10073,10074],{},"filters"," o cualquier dato concreto, un ",[22,10077,2526],{}," comunica mejor el objetivo y reduce trabajo innecesario.",[34,10080,10082,10083,10085],{"id":10081},"modificar-estado-dentro-de-updated-sin-control","Modificar estado dentro de ",[22,10084,9844],{}," sin control",[15,10087,10088],{},"Este es el camino clásico hacia un bucle:",[74,10090,10094],{"className":76,"code":10091,"filename":10092,"highlights":10093,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { onUpdated, ref } from 'vue'\n\nconst count = ref(0)\n\nonUpdated(() => {\n  count.value++\n})\n\u003C\u002Fscript>\n","App.vue",[159],[22,10095,10096,10112,10123,10127,10144,10148,10161,10169,10173],{"__ignoreMap":80},[84,10097,10098,10100,10102,10104,10106,10108,10110],{"class":86,"line":87},[84,10099,91],{"class":90},[84,10101,95],{"class":94},[84,10103,99],{"class":98},[84,10105,1161],{"class":98},[84,10107,184],{"class":90},[84,10109,1166],{"class":118},[84,10111,102],{"class":90},[84,10113,10114,10116,10119,10121],{"class":86,"line":105},[84,10115,109],{"class":108},[84,10117,10118],{"class":90}," { onUpdated, ref } ",[84,10120,115],{"class":108},[84,10122,119],{"class":118},[84,10124,10125],{"class":86,"line":122},[84,10126,126],{"emptyLinePlaceholder":125},[84,10128,10129,10131,10134,10136,10138,10140,10142],{"class":86,"line":129},[84,10130,132],{"class":108},[84,10132,10133],{"class":135}," count",[84,10135,139],{"class":108},[84,10137,142],{"class":98},[84,10139,145],{"class":90},[84,10141,4320],{"class":135},[84,10143,151],{"class":90},[84,10145,10146],{"class":86,"line":154},[84,10147,126],{"emptyLinePlaceholder":125},[84,10149,10152,10155,10157,10159],{"class":10150,"line":159},[86,10151],"highlight",[84,10153,10154],{"class":98},"onUpdated",[84,10156,2992],{"class":90},[84,10158,172],{"class":108},[84,10160,175],{"class":90},[84,10162,10163,10166],{"class":86,"line":178},[84,10164,10165],{"class":90},"  count.value",[84,10167,10168],{"class":108},"++\n",[84,10170,10171],{"class":86,"line":190},[84,10172,1492],{"class":90},[84,10174,10175,10177,10179],{"class":86,"line":196},[84,10176,274],{"class":90},[84,10178,95],{"class":94},[84,10180,102],{"class":90},[15,10182,10183],{},"Cada actualización provoca otra actualización.",[15,10185,10186,10187,10190],{},"Si necesitas corregir estado, hazlo con una ",[958,10188,10189],{},"condición muy clara"," o mueve esa lógica a:",[737,10192,10193,10197,10201],{},[740,10194,10195],{},[22,10196,2526],{},[740,10198,10199],{},[22,10200,2523],{},[740,10202,10203],{},"la acción que origina el cambio",[34,10205,10207,10208],{"id":10206},"leer-el-dom-nuevo-en-beforeupdate","Leer el DOM nuevo en ",[22,10209,9841],{},[15,10211,995,10212,10214,10215,764],{},[22,10213,9841],{}," el DOM visible todavía representa el ",[958,10216,10217],{},"render anterior",[15,10219,10220],{},"Si mides ahí esperando el nuevo tamaño, el dato será viejo.",[15,10222,10223,10224,764],{},"Para leer el resultado final del render, usa ",[22,10225,9844],{},[34,10227,10229],{"id":10228},"meter-lógica-pesada-en-cada-actualización","Meter lógica pesada en cada actualización",[15,10231,10232,10233,764],{},"Estos hooks pueden dispararse ",[958,10234,10235],{},"muchas veces",[15,10237,10238],{},"Si dentro colocas:",[737,10240,10241,10244,10247],{},[740,10242,10243],{},"Cálculos costosos",[740,10245,10246],{},"Integraciones pesadas",[740,10248,10249],{},"Consultas repetidas al DOM",[15,10251,10252],{},"El componente se degradará rápido.",[823,10254,10255],{},[15,10256,10257,10258,10261],{},"Si una tarea no necesita ejecutarse en ",[958,10259,10260],{},"cada render",", probablemente no debería vivir aquí.",[11,10263,2736],{"id":2735},[34,10265,10267],{"id":10266},"mantener-el-scroll-pegado-al-final-en-un-chat","Mantener el scroll pegado al final en un chat",[15,10269,10270],{},"Cuando llega un mensaje nuevo, el array cambia primero y el DOM se actualiza después.",[15,10272,10273],{},"Si haces scroll demasiado pronto, todavía no existe la nueva altura del contenedor.",[15,10275,10276],{},"La solución es esperar al momento en que el DOM ya fue actualizado.",[34,10278,10280],{"id":10279},"recalcular-una-librería-visual-después-de-actualizar-una-lista","Recalcular una librería visual después de actualizar una lista",[15,10282,10283,10284,10287],{},"Algunas librerías (diagramas, grids, tooltips o librerías de layout) necesitan que ",[958,10285,10286],{},"el markup ya esté en pantalla"," antes de recalcular posiciones o tamaños.",[15,10289,10290,10292],{},[22,10291,9844],{}," permite ejecutar esa sincronización justo después del render.",[34,10294,10296],{"id":10295},"detectar-renderizados-repetidos-durante-depuración","Detectar renderizados repetidos durante depuración",[15,10298,10299],{},"Estos hooks también sirven para entender si un componente se actualiza más de lo esperado.",[74,10301,10304],{"className":76,"code":10302,"filename":10092,"highlights":10303,"language":79,"meta":80,"style":80},"\u003Cscript>\nonBeforeUpdate(() => {\n  console.log('El componente está a punto de actualizarse')\n})\n\nonUpdated(() => {\n  console.log('El componente terminó de actualizarse')\n})\n\u003C\u002Fscript>\n",[105,159],[22,10305,10306,10314,10326,10339,10343,10347,10358,10371,10375],{"__ignoreMap":80},[84,10307,10308,10310,10312],{"class":86,"line":87},[84,10309,91],{"class":90},[84,10311,95],{"class":94},[84,10313,102],{"class":90},[84,10315,10317,10320,10322,10324],{"class":10316,"line":105},[86,10151],[84,10318,10319],{"class":98},"onBeforeUpdate",[84,10321,2992],{"class":90},[84,10323,172],{"class":108},[84,10325,175],{"class":90},[84,10327,10328,10330,10332,10334,10337],{"class":86,"line":122},[84,10329,3135],{"class":90},[84,10331,3138],{"class":98},[84,10333,145],{"class":90},[84,10335,10336],{"class":118},"'El componente está a punto de actualizarse'",[84,10338,151],{"class":90},[84,10340,10341],{"class":86,"line":129},[84,10342,1492],{"class":90},[84,10344,10345],{"class":86,"line":154},[84,10346,126],{"emptyLinePlaceholder":125},[84,10348,10350,10352,10354,10356],{"class":10349,"line":159},[86,10151],[84,10351,10154],{"class":98},[84,10353,2992],{"class":90},[84,10355,172],{"class":108},[84,10357,175],{"class":90},[84,10359,10360,10362,10364,10366,10369],{"class":86,"line":178},[84,10361,3135],{"class":90},[84,10363,3138],{"class":98},[84,10365,145],{"class":90},[84,10367,10368],{"class":118},"'El componente terminó de actualizarse'",[84,10370,151],{"class":90},[84,10372,10373],{"class":86,"line":190},[84,10374,1492],{"class":90},[84,10376,10377,10379,10381],{"class":86,"line":196},[84,10378,274],{"class":90},[84,10380,95],{"class":94},[84,10382,102],{"class":90},[15,10384,10385],{},"Esto ayuda a detectar dependencias reactivas que provocan renders innecesarios.",[74,10387,10389],{"className":76,"code":10388,"filename":873,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { onBeforeUpdate, onUpdated, ref } from 'vue'\n\nconst messages = ref([\n  { id: 1, text: 'Primer mensaje' },\n  { id: 2, text: 'Segundo mensaje' }\n])\n\nconst listRef = ref\u003CHTMLOListElement | null>(null)\nconst previousHeight = ref(0)\n\nfunction addMessage() {\n  messages.value.push({\n    id: Date.now(),\n    text: `Mensaje ${messages.value.length + 1}`\n  })\n}\n\nonBeforeUpdate(() => {\n  previousHeight.value = listRef.value?.scrollHeight ?? 0\n})\n\nonUpdated(() => {\n  if (!listRef.value) return\n\n  const nextHeight = listRef.value.scrollHeight\n\n  if (nextHeight > previousHeight.value) {\n    listRef.value.scrollTop = nextHeight\n  }\n})\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection class=\"chat-panel\">\n    \u003Cbutton @click=\"addMessage\">\n      Agregar mensaje\n    \u003C\u002Fbutton>\n\n    \u003Col\n      ref=\"listRef\"\n      class=\"messages\"\n    >\n      \u003Cli\n        v-for=\"message in messages\"\n        :key=\"message.id\"\n      >\n        {{ message.text }}\n      \u003C\u002Fli>\n    \u003C\u002Fol>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[22,10390,10391,10407,10418,10422,10435,10449,10462,10466,10470,10496,10513,10517,10526,10536,10547,10576,10580,10584,10588,10598,10614,10618,10622,10632,10645,10649,10661,10665,10678,10688,10692,10696,10704,10708,10716,10731,10746,10751,10759,10763,10770,10780,10790,10795,10801,10810,10819,10823,10828,10836,10845,10853],{"__ignoreMap":80},[84,10392,10393,10395,10397,10399,10401,10403,10405],{"class":86,"line":87},[84,10394,91],{"class":90},[84,10396,95],{"class":94},[84,10398,99],{"class":98},[84,10400,1161],{"class":98},[84,10402,184],{"class":90},[84,10404,1166],{"class":118},[84,10406,102],{"class":90},[84,10408,10409,10411,10414,10416],{"class":86,"line":105},[84,10410,109],{"class":108},[84,10412,10413],{"class":90}," { onBeforeUpdate, onUpdated, ref } ",[84,10415,115],{"class":108},[84,10417,119],{"class":118},[84,10419,10420],{"class":86,"line":122},[84,10421,126],{"emptyLinePlaceholder":125},[84,10423,10424,10426,10429,10431,10433],{"class":86,"line":129},[84,10425,132],{"class":108},[84,10427,10428],{"class":135}," messages",[84,10430,139],{"class":108},[84,10432,142],{"class":98},[84,10434,2894],{"class":90},[84,10436,10437,10439,10441,10444,10447],{"class":86,"line":154},[84,10438,2899],{"class":90},[84,10440,2862],{"class":135},[84,10442,10443],{"class":90},", text: ",[84,10445,10446],{"class":118},"'Primer mensaje'",[84,10448,2921],{"class":90},[84,10450,10451,10453,10455,10457,10460],{"class":86,"line":159},[84,10452,2899],{"class":90},[84,10454,2928],{"class":135},[84,10456,10443],{"class":90},[84,10458,10459],{"class":118},"'Segundo mensaje'",[84,10461,2968],{"class":90},[84,10463,10464],{"class":86,"line":178},[84,10465,2973],{"class":90},[84,10467,10468],{"class":86,"line":190},[84,10469,126],{"emptyLinePlaceholder":125},[84,10471,10472,10474,10477,10479,10481,10483,10486,10488,10490,10492,10494],{"class":86,"line":196},[84,10473,132],{"class":108},[84,10475,10476],{"class":135}," listRef",[84,10478,139],{"class":108},[84,10480,142],{"class":98},[84,10482,91],{"class":90},[84,10484,10485],{"class":98},"HTMLOListElement",[84,10487,1261],{"class":108},[84,10489,1264],{"class":135},[84,10491,1267],{"class":90},[84,10493,1270],{"class":135},[84,10495,151],{"class":90},[84,10497,10498,10500,10503,10505,10507,10509,10511],{"class":86,"line":201},[84,10499,132],{"class":108},[84,10501,10502],{"class":135}," previousHeight",[84,10504,139],{"class":108},[84,10506,142],{"class":98},[84,10508,145],{"class":90},[84,10510,4320],{"class":135},[84,10512,151],{"class":90},[84,10514,10515],{"class":86,"line":217},[84,10516,126],{"emptyLinePlaceholder":125},[84,10518,10519,10521,10524],{"class":86,"line":227},[84,10520,3246],{"class":108},[84,10522,10523],{"class":98}," addMessage",[84,10525,1307],{"class":90},[84,10527,10528,10531,10534],{"class":86,"line":232},[84,10529,10530],{"class":90},"  messages.value.",[84,10532,10533],{"class":98},"push",[84,10535,1876],{"class":90},[84,10537,10538,10541,10544],{"class":86,"line":237},[84,10539,10540],{"class":90},"    id: Date.",[84,10542,10543],{"class":98},"now",[84,10545,10546],{"class":90},"(),\n",[84,10548,10549,10552,10555,10558,10560,10562,10564,10567,10570,10573],{"class":86,"line":253},[84,10550,10551],{"class":90},"    text: ",[84,10553,10554],{"class":118},"`Mensaje ${",[84,10556,10557],{"class":90},"messages",[84,10559,764],{"class":118},[84,10561,4663],{"class":90},[84,10563,764],{"class":118},[84,10565,10566],{"class":135},"length",[84,10568,10569],{"class":108}," +",[84,10571,10572],{"class":135}," 1",[84,10574,10575],{"class":118},"}`\n",[84,10577,10578],{"class":86,"line":266},[84,10579,3104],{"class":90},[84,10581,10582],{"class":86,"line":271},[84,10583,193],{"class":90},[84,10585,10586],{"class":86,"line":281},[84,10587,126],{"emptyLinePlaceholder":125},[84,10589,10590,10592,10594,10596],{"class":86,"line":286},[84,10591,10319],{"class":98},[84,10593,2992],{"class":90},[84,10595,172],{"class":108},[84,10597,175],{"class":90},[84,10599,10600,10603,10605,10608,10611],{"class":86,"line":296},[84,10601,10602],{"class":90},"  previousHeight.value ",[84,10604,184],{"class":108},[84,10606,10607],{"class":90}," listRef.value?.scrollHeight ",[84,10609,10610],{"class":108},"??",[84,10612,10613],{"class":135}," 0\n",[84,10615,10616],{"class":86,"line":315},[84,10617,1492],{"class":90},[84,10619,10620],{"class":86,"line":321},[84,10621,126],{"emptyLinePlaceholder":125},[84,10623,10624,10626,10628,10630],{"class":86,"line":331},[84,10625,10154],{"class":98},[84,10627,2992],{"class":90},[84,10629,172],{"class":108},[84,10631,175],{"class":90},[84,10633,10634,10636,10638,10640,10643],{"class":86,"line":336},[84,10635,1338],{"class":108},[84,10637,1341],{"class":90},[84,10639,1344],{"class":108},[84,10641,10642],{"class":90},"listRef.value) ",[84,10644,1530],{"class":108},[84,10646,10647],{"class":86,"line":354},[84,10648,126],{"emptyLinePlaceholder":125},[84,10650,10651,10653,10656,10658],{"class":86,"line":360},[84,10652,443],{"class":108},[84,10654,10655],{"class":135}," nextHeight",[84,10657,139],{"class":108},[84,10659,10660],{"class":90}," listRef.value.scrollHeight\n",[84,10662,10663],{"class":86,"line":369},[84,10664,126],{"emptyLinePlaceholder":125},[84,10666,10667,10669,10672,10675],{"class":86,"line":1453},[84,10668,1338],{"class":108},[84,10670,10671],{"class":90}," (nextHeight ",[84,10673,10674],{"class":108},">",[84,10676,10677],{"class":90}," previousHeight.value) {\n",[84,10679,10680,10683,10685],{"class":86,"line":1462},[84,10681,10682],{"class":90},"    listRef.value.scrollTop ",[84,10684,184],{"class":108},[84,10686,10687],{"class":90}," nextHeight\n",[84,10689,10690],{"class":86,"line":1484},[84,10691,485],{"class":90},[84,10693,10694],{"class":86,"line":1489},[84,10695,1492],{"class":90},[84,10697,10698,10700,10702],{"class":86,"line":1495},[84,10699,274],{"class":90},[84,10701,95],{"class":94},[84,10703,102],{"class":90},[84,10705,10706],{"class":86,"line":1500},[84,10707,126],{"emptyLinePlaceholder":125},[84,10709,10710,10712,10714],{"class":86,"line":1516},[84,10711,91],{"class":90},[84,10713,291],{"class":94},[84,10715,102],{"class":90},[84,10717,10718,10720,10722,10724,10726,10729],{"class":86,"line":1533},[84,10719,299],{"class":90},[84,10721,4898],{"class":94},[84,10723,1629],{"class":98},[84,10725,184],{"class":90},[84,10727,10728],{"class":118},"\"chat-panel\"",[84,10730,102],{"class":90},[84,10732,10733,10735,10737,10739,10741,10744],{"class":86,"line":1538},[84,10734,1642],{"class":90},[84,10736,302],{"class":94},[84,10738,305],{"class":98},[84,10740,184],{"class":90},[84,10742,10743],{"class":118},"\"addMessage\"",[84,10745,102],{"class":90},[84,10747,10748],{"class":86,"line":1545},[84,10749,10750],{"class":90},"      Agregar mensaje\n",[84,10752,10753,10755,10757],{"class":86,"line":1554},[84,10754,1734],{"class":90},[84,10756,302],{"class":94},[84,10758,102],{"class":90},[84,10760,10761],{"class":86,"line":1563},[84,10762,126],{"emptyLinePlaceholder":125},[84,10764,10765,10767],{"class":86,"line":1570},[84,10766,1642],{"class":90},[84,10768,10769],{"class":94},"ol\n",[84,10771,10772,10775,10777],{"class":86,"line":1588},[84,10773,10774],{"class":98},"      ref",[84,10776,184],{"class":90},[84,10778,10779],{"class":118},"\"listRef\"\n",[84,10781,10782,10785,10787],{"class":86,"line":1593},[84,10783,10784],{"class":98},"      class",[84,10786,184],{"class":90},[84,10788,10789],{"class":118},"\"messages\"\n",[84,10791,10792],{"class":86,"line":1598},[84,10793,10794],{"class":90},"    >\n",[84,10796,10797,10799],{"class":86,"line":1607},[84,10798,1691],{"class":90},[84,10800,7273],{"class":94},[84,10802,10803,10805,10807],{"class":86,"line":1612},[84,10804,7278],{"class":98},[84,10806,184],{"class":90},[84,10808,10809],{"class":118},"\"message in messages\"\n",[84,10811,10812,10814,10816],{"class":86,"line":1621},[84,10813,7288],{"class":98},[84,10815,184],{"class":90},[84,10817,10818],{"class":118},"\"message.id\"\n",[84,10820,10821],{"class":86,"line":1639},[84,10822,5318],{"class":90},[84,10824,10825],{"class":86,"line":1661},[84,10826,10827],{"class":90},"        {{ message.text }}\n",[84,10829,10830,10832,10834],{"class":86,"line":1666},[84,10831,4952],{"class":90},[84,10833,740],{"class":94},[84,10835,102],{"class":90},[84,10837,10838,10840,10843],{"class":86,"line":1688},[84,10839,1734],{"class":90},[84,10841,10842],{"class":94},"ol",[84,10844,102],{"class":90},[84,10846,10847,10849,10851],{"class":86,"line":1703},[84,10848,324],{"class":90},[84,10850,4898],{"class":94},[84,10852,102],{"class":90},[84,10854,10855,10857,10859],{"class":86,"line":1717},[84,10856,274],{"class":90},[84,10858,291],{"class":94},[84,10860,102],{"class":90},[74,10862,10864],{"className":76,"code":10863,"filename":7338,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      messages: [\n        { id: 1, text: 'Primer mensaje' },\n        { id: 2, text: 'Segundo mensaje' }\n      ],\n      previousHeight: 0\n    }\n  },\n\n  methods: {\n    addMessage() {\n      this.messages.push({\n        id: Date.now(),\n        text: `Mensaje ${this.messages.length + 1}`\n      })\n    }\n  },\n\n  beforeUpdate() {\n    if (this.$refs.listRef instanceof HTMLOListElement) {\n      this.previousHeight = this.$refs.listRef.scrollHeight\n    }\n  },\n\n  updated() {\n    if (!(this.$refs.listRef instanceof HTMLOListElement)) {\n      return\n    }\n\n    const nextHeight = this.$refs.listRef.scrollHeight\n\n    if (nextHeight > this.previousHeight) {\n      this.$refs.listRef.scrollTop = nextHeight\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection class=\"chat-panel\">\n    \u003Cbutton @click=\"addMessage\">\n      Agregar mensaje\n    \u003C\u002Fbutton>\n\n    \u003Col\n      ref=\"listRef\"\n      class=\"messages\"\n    >\n      \u003Cli\n        v-for=\"message in messages\"\n        :key=\"message.id\"\n      >\n        {{ message.text }}\n      \u003C\u002Fli>\n    \u003C\u002Fol>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[22,10865,10866,10874,10882,10888,10894,10899,10911,10923,10928,10935,10939,10943,10947,10951,10958,10969,10978,11001,11005,11009,11013,11017,11024,11042,11056,11060,11064,11068,11075,11096,11100,11104,11108,11120,11124,11137,11148,11152,11156,11160,11168,11172,11180,11194,11208,11212,11220,11224,11230,11238,11246,11250,11256,11264,11272,11276,11280,11288,11296,11304],{"__ignoreMap":80},[84,10867,10868,10870,10872],{"class":86,"line":87},[84,10869,91],{"class":90},[84,10871,95],{"class":94},[84,10873,102],{"class":90},[84,10875,10876,10878,10880],{"class":86,"line":105},[84,10877,418],{"class":108},[84,10879,1870],{"class":108},[84,10881,175],{"class":90},[84,10883,10884,10886],{"class":86,"line":122},[84,10885,1896],{"class":98},[84,10887,1307],{"class":90},[84,10889,10890,10892],{"class":86,"line":129},[84,10891,1903],{"class":108},[84,10893,175],{"class":90},[84,10895,10896],{"class":86,"line":154},[84,10897,10898],{"class":90},"      messages: [\n",[84,10900,10901,10903,10905,10907,10909],{"class":86,"line":159},[84,10902,3449],{"class":90},[84,10904,2862],{"class":135},[84,10906,10443],{"class":90},[84,10908,10446],{"class":118},[84,10910,2921],{"class":90},[84,10912,10913,10915,10917,10919,10921],{"class":86,"line":178},[84,10914,3449],{"class":90},[84,10916,2928],{"class":135},[84,10918,10443],{"class":90},[84,10920,10459],{"class":118},[84,10922,2968],{"class":90},[84,10924,10925],{"class":86,"line":190},[84,10926,10927],{"class":90},"      ],\n",[84,10929,10930,10933],{"class":86,"line":196},[84,10931,10932],{"class":90},"      previousHeight: ",[84,10934,5467],{"class":135},[84,10936,10937],{"class":86,"line":201},[84,10938,1936],{"class":90},[84,10940,10941],{"class":86,"line":217},[84,10942,1941],{"class":90},[84,10944,10945],{"class":86,"line":227},[84,10946,126],{"emptyLinePlaceholder":125},[84,10948,10949],{"class":86,"line":232},[84,10950,1950],{"class":90},[84,10952,10953,10956],{"class":86,"line":237},[84,10954,10955],{"class":98},"    addMessage",[84,10957,1307],{"class":90},[84,10959,10960,10962,10965,10967],{"class":86,"line":253},[84,10961,2022],{"class":135},[84,10963,10964],{"class":90},".messages.",[84,10966,10533],{"class":98},[84,10968,1876],{"class":90},[84,10970,10971,10974,10976],{"class":86,"line":266},[84,10972,10973],{"class":90},"        id: Date.",[84,10975,10543],{"class":98},[84,10977,10546],{"class":90},[84,10979,10980,10983,10985,10987,10989,10991,10993,10995,10997,10999],{"class":86,"line":271},[84,10981,10982],{"class":90},"        text: ",[84,10984,10554],{"class":118},[84,10986,2151],{"class":135},[84,10988,764],{"class":118},[84,10990,10557],{"class":90},[84,10992,764],{"class":118},[84,10994,10566],{"class":135},[84,10996,10569],{"class":108},[84,10998,10572],{"class":135},[84,11000,10575],{"class":118},[84,11002,11003],{"class":86,"line":281},[84,11004,3638],{"class":90},[84,11006,11007],{"class":86,"line":286},[84,11008,1936],{"class":90},[84,11010,11011],{"class":86,"line":296},[84,11012,1941],{"class":90},[84,11014,11015],{"class":86,"line":315},[84,11016,126],{"emptyLinePlaceholder":125},[84,11018,11019,11022],{"class":86,"line":321},[84,11020,11021],{"class":98},"  beforeUpdate",[84,11023,1307],{"class":90},[84,11025,11026,11028,11030,11032,11035,11037,11040],{"class":86,"line":331},[84,11027,2146],{"class":108},[84,11029,1341],{"class":90},[84,11031,2151],{"class":135},[84,11033,11034],{"class":90},".$refs.listRef ",[84,11036,1468],{"class":108},[84,11038,11039],{"class":98}," HTMLOListElement",[84,11041,438],{"class":90},[84,11043,11044,11046,11049,11051,11053],{"class":86,"line":336},[84,11045,2022],{"class":135},[84,11047,11048],{"class":90},".previousHeight ",[84,11050,184],{"class":108},[84,11052,2078],{"class":135},[84,11054,11055],{"class":90},".$refs.listRef.scrollHeight\n",[84,11057,11058],{"class":86,"line":354},[84,11059,1936],{"class":90},[84,11061,11062],{"class":86,"line":360},[84,11063,1941],{"class":90},[84,11065,11066],{"class":86,"line":369},[84,11067,126],{"emptyLinePlaceholder":125},[84,11069,11070,11073],{"class":86,"line":1453},[84,11071,11072],{"class":98},"  updated",[84,11074,1307],{"class":90},[84,11076,11077,11079,11081,11083,11085,11087,11089,11091,11093],{"class":86,"line":1462},[84,11078,2146],{"class":108},[84,11080,1341],{"class":90},[84,11082,1344],{"class":108},[84,11084,145],{"class":90},[84,11086,2151],{"class":135},[84,11088,11034],{"class":90},[84,11090,1468],{"class":108},[84,11092,11039],{"class":98},[84,11094,11095],{"class":90},")) {\n",[84,11097,11098],{"class":86,"line":1484},[84,11099,8954],{"class":108},[84,11101,11102],{"class":86,"line":1489},[84,11103,1936],{"class":90},[84,11105,11106],{"class":86,"line":1495},[84,11107,126],{"emptyLinePlaceholder":125},[84,11109,11110,11112,11114,11116,11118],{"class":86,"line":1500},[84,11111,3021],{"class":108},[84,11113,10655],{"class":135},[84,11115,139],{"class":108},[84,11117,2078],{"class":135},[84,11119,11055],{"class":90},[84,11121,11122],{"class":86,"line":1516},[84,11123,126],{"emptyLinePlaceholder":125},[84,11125,11126,11128,11130,11132,11134],{"class":86,"line":1533},[84,11127,2146],{"class":108},[84,11129,10671],{"class":90},[84,11131,10674],{"class":108},[84,11133,2078],{"class":135},[84,11135,11136],{"class":90},".previousHeight) {\n",[84,11138,11139,11141,11144,11146],{"class":86,"line":1538},[84,11140,2022],{"class":135},[84,11142,11143],{"class":90},".$refs.listRef.scrollTop ",[84,11145,184],{"class":108},[84,11147,10687],{"class":90},[84,11149,11150],{"class":86,"line":1545},[84,11151,1936],{"class":90},[84,11153,11154],{"class":86,"line":1554},[84,11155,485],{"class":90},[84,11157,11158],{"class":86,"line":1563},[84,11159,193],{"class":90},[84,11161,11162,11164,11166],{"class":86,"line":1570},[84,11163,274],{"class":90},[84,11165,95],{"class":94},[84,11167,102],{"class":90},[84,11169,11170],{"class":86,"line":1588},[84,11171,126],{"emptyLinePlaceholder":125},[84,11173,11174,11176,11178],{"class":86,"line":1593},[84,11175,91],{"class":90},[84,11177,291],{"class":94},[84,11179,102],{"class":90},[84,11181,11182,11184,11186,11188,11190,11192],{"class":86,"line":1598},[84,11183,299],{"class":90},[84,11185,4898],{"class":94},[84,11187,1629],{"class":98},[84,11189,184],{"class":90},[84,11191,10728],{"class":118},[84,11193,102],{"class":90},[84,11195,11196,11198,11200,11202,11204,11206],{"class":86,"line":1607},[84,11197,1642],{"class":90},[84,11199,302],{"class":94},[84,11201,305],{"class":98},[84,11203,184],{"class":90},[84,11205,10743],{"class":118},[84,11207,102],{"class":90},[84,11209,11210],{"class":86,"line":1612},[84,11211,10750],{"class":90},[84,11213,11214,11216,11218],{"class":86,"line":1621},[84,11215,1734],{"class":90},[84,11217,302],{"class":94},[84,11219,102],{"class":90},[84,11221,11222],{"class":86,"line":1639},[84,11223,126],{"emptyLinePlaceholder":125},[84,11225,11226,11228],{"class":86,"line":1661},[84,11227,1642],{"class":90},[84,11229,10769],{"class":94},[84,11231,11232,11234,11236],{"class":86,"line":1666},[84,11233,10774],{"class":98},[84,11235,184],{"class":90},[84,11237,10779],{"class":118},[84,11239,11240,11242,11244],{"class":86,"line":1688},[84,11241,10784],{"class":98},[84,11243,184],{"class":90},[84,11245,10789],{"class":118},[84,11247,11248],{"class":86,"line":1703},[84,11249,10794],{"class":90},[84,11251,11252,11254],{"class":86,"line":1717},[84,11253,1691],{"class":90},[84,11255,7273],{"class":94},[84,11257,11258,11260,11262],{"class":86,"line":1731},[84,11259,7278],{"class":98},[84,11261,184],{"class":90},[84,11263,10809],{"class":118},[84,11265,11266,11268,11270],{"class":86,"line":1741},[84,11267,7288],{"class":98},[84,11269,184],{"class":90},[84,11271,10818],{"class":118},[84,11273,11274],{"class":86,"line":1746},[84,11275,5318],{"class":90},[84,11277,11278],{"class":86,"line":1763},[84,11279,10827],{"class":90},[84,11281,11282,11284,11286],{"class":86,"line":1772},[84,11283,4952],{"class":90},[84,11285,740],{"class":94},[84,11287,102],{"class":90},[84,11289,11290,11292,11294],{"class":86,"line":2283},[84,11291,1734],{"class":90},[84,11293,10842],{"class":94},[84,11295,102],{"class":90},[84,11297,11298,11300,11302],{"class":86,"line":2288},[84,11299,324],{"class":90},[84,11301,4898],{"class":94},[84,11303,102],{"class":90},[84,11305,11306,11308,11310],{"class":86,"line":2307},[84,11307,274],{"class":90},[84,11309,291],{"class":94},[84,11311,102],{"class":90},[737,11313,11314,11319],{},[740,11315,11316,11318],{},[22,11317,9896],{}," guarda la altura del render anterior.",[740,11320,11321,11323],{},[22,11322,9901],{}," decide si debe ajustar el scroll una vez que el nuevo mensaje ya existe en el DOM.",[11,11325,2406],{"id":2405},[737,11327,11328,11336,11345,11353,11360],{},[740,11329,11330,11332,11333,764],{},[22,11331,9841],{}," te permite observar ",[958,11334,11335],{},"el punto justo antes del parche del DOM",[740,11337,11338,11340,11341,11344],{},[22,11339,9844],{}," sirve cuando ",[958,11342,11343],{},"la interfaz ya refleja el nuevo estado"," y necesitas actuar sobre ese resultado.",[740,11346,11347,11348,764],{},"Si el problema gira alrededor de un dato específico, ",[958,11349,11350,11352],{},[22,11351,2526],{}," suele ser más expresivo",[740,11354,11355,11356,11359],{},"Estos hooks describen ",[958,11357,11358],{},"el ciclo de actualización del componente",", no el cambio de una variable concreta.",[740,11361,11362,11363],{},"La regla más importante es esta: ",[958,11364,11365,11366,11368],{},"no conviertas ",[22,11367,9844],{}," en una máquina de mutar estado después de cada render.",[835,11370,11371],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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);}",{"title":80,"searchDepth":105,"depth":105,"links":11373},[11374,11376,11378,11380,11381,11382,11383],{"id":10044,"depth":105,"text":11375},"Usar updated como reemplazo de watch",{"id":10081,"depth":105,"text":11377},"Modificar estado dentro de updated sin control",{"id":10206,"depth":105,"text":11379},"Leer el DOM nuevo en beforeUpdate",{"id":10228,"depth":105,"text":10229},{"id":10266,"depth":105,"text":10267},{"id":10279,"depth":105,"text":10280},{"id":10295,"depth":105,"text":10296},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1773284616\u002Fvue-lifecycle-update-phase-beforeupdate-updated_qql7os.png","Ilustración de la fase de actualización del ciclo de vida de Vue con beforeUpdate y updated","2026-03-11","Qué ocurre cuando Vue vuelve a renderizar un componente y cómo usar beforeUpdate y updated sin convertirlos en sustitutos de watch o computed.",{"updatedAt":11389,"coverCaption":11390,"author":868,"keywords":11391},"2026-03-10T22:00:00-05:00","La fase de actualización ocurre cuando un cambio reactivo obliga a Vue a volver a renderizar el componente.",[870,9841,9844,10154,11392],"renderizado","\u002Fblog\u002Fvue-lifecycle-update-phase-beforeupdate-updated.es",[11395],{"headline":9832,"author":11396,"datePublished":11389,"@type":880},{"name":868,"@type":879},{"title":9832,"description":11387},"blog\u002Fvue-lifecycle-update-phase-beforeupdate-updated.es",[11400,11401,11402,11403,11404],{"tag":2453,"color":2454},{"tag":888,"color":889},{"tag":3942,"color":3943},{"tag":3945,"color":3946},{"tag":894,"color":895},"98z2JKjTHZwuUniJlvBcSw0oAKPwayH9G9A608P_wSQ",{"id":11407,"title":11408,"body":11409,"cover":12645,"coverAlt":12646,"date":12647,"description":12648,"draft":852,"extension":853,"lab":882,"locale":864,"meta":12649,"navigation":125,"path":12654,"schemaOrg":12655,"seo":12658,"series":2447,"seriesDescription":2448,"seriesOrder":122,"seriesTitle":2449,"slug":882,"stem":12659,"tags":12660,"__hash__":12665},"blog\u002Fblog\u002Fvue-lifecycle-mounting-phase-beforemount-mounted.es.md","Ciclos de vida en Vue: fase de montaje (beforeMount, mounted)",{"type":8,"value":11410,"toc":12624},[11411,11420,11426,11429,11431,11437,11440,11452,11455,11466,11469,11497,11509,11511,11514,11516,11530,11535,11546,11548,11551,11557,11589,11592,11594,11643,11658,11660,11666,11672,11675,11690,11695,11702,11712,11721,11726,11849,11856,11863,11866,11869,11886,11896,12034,12042,12046,12052,12061,12067,12069,12073,12078,12082,12087,12091,12094,12345,12584,12598,12600,12622],[11,11412,11414,11415,754,11418,909],{"id":11413},"ciclos-de-vida-en-vue-fase-de-montaje-beforemount-mounted","Ciclos de vida en Vue: fase de montaje (",[22,11416,11417],{},"beforeMount",[22,11419,1085],{},[15,11421,11422,11423,11425],{},"Muchos problemas cotidianos en Vue tienen el mismo origen: intentar interactuar con el DOM demasiado pronto o concentrar en ",[22,11424,1085],{}," lógica que en realidad podría ejecutarse antes.",[15,11427,11428],{},"La fase de montaje marca justamente esa frontera. Es el momento en el que Vue deja de preparar el componente “por dentro” y finalmente lo inserta en la página. Entender bien esa transición te ayuda a decidir cuándo enfocar un input, cuándo inicializar una librería externa y cuándo, simplemente, no necesitas ningún hook.",[34,11430,947],{"id":946},[15,11432,11433,11434,764],{},"Durante la fase de montaje, Vue ya tiene lista la reactividad del componente: props, estado, watchers y el árbol de renderizado ya están preparados. Lo que cambia en esta etapa es que ",[958,11435,11436],{},"el DOM real pasa a existir",[15,11438,11439],{},"Aquí aparecen dos hooks clásicos del ciclo de vida:",[737,11441,11442,11447],{},[740,11443,11444,11446],{},[22,11445,11417],{},": se ejecuta cuando Vue está a punto de montar el componente, pero el DOM real todavía no ha sido insertado.",[740,11448,11449,11451],{},[22,11450,1085],{},": se ejecuta cuando el componente ya fue montado y puedes interactuar con nodos reales del DOM.",[15,11453,11454],{},"Si trabajas con Composition API, los equivalentes son:",[737,11456,11457,11462],{},[740,11458,11459],{},[22,11460,11461],{},"onBeforeMount()",[740,11463,11464],{},[22,11465,1092],{},[15,11467,11468],{},"Una forma práctica de orientarse:",[737,11470,11471,11481,11489],{},[740,11472,11473,11474,11477,11478,764],{},"Si necesitas preparar ",[958,11475,11476],{},"estado o lógica que no depende del DOM",", normalmente eso pertenece a ",[22,11479,11480],{},"setup",[740,11482,8403,11483,11486,11487,764],{},[958,11484,11485],{},"interactuar con elementos reales de la interfaz",", el punto natural suele ser ",[22,11488,1085],{},[740,11490,11491,11492,11494,11495,764],{},"Si estás considerando ",[22,11493,11417],{},", conviene revisar primero si ese código no encaja mejor antes, por ejemplo dentro de ",[22,11496,11480],{},[15,11498,11499,11500,11508],{},"Además, en aplicaciones con SSR, ",[958,11501,11502,11503,1110,11505,11507],{},"ni ",[22,11504,11417],{},[22,11506,1085],{}," se ejecutan en el servidor",". Son hooks que solo existen en el cliente.",[34,11510,1013],{"id":1012},[15,11512,11513],{},"La fase de montaje tiene sentido cuando el componente necesita cruzar la frontera entre el estado reactivo y el navegador real.",[15,11515,4083],{},[737,11517,11518,11521,11524,11527],{},[740,11519,11520],{},"Enfocar un campo de búsqueda cuando aparece la vista.",[740,11522,11523],{},"Inicializar una librería externa que necesita un contenedor del DOM (por ejemplo, un gráfico o un editor).",[740,11525,11526],{},"Medir tamaños, posiciones o scroll después del primer render.",[740,11528,11529],{},"Registrar integraciones con API del navegador que dependen de nodos reales.",[15,11531,11532,11534],{},[22,11533,11417],{}," tiene menos uso en la práctica, pero puede servir para:",[737,11536,11537,11540,11543],{},[740,11538,11539],{},"Dejar trazas o marcas de depuración antes del montaje.",[740,11541,11542],{},"Ajustar algún estado justo antes de que ocurra el primer render en el navegador.",[740,11544,11545],{},"Preparar integraciones que necesitan saber que el montaje es inminente, aunque todavía no interactúen con el DOM.",[34,11547,1040],{"id":1039},[15,11549,11550],{},"No todo debe resolverse en esta fase.",[15,11552,8425,11553,2488,11555,8430],{},[22,11554,11417],{},[22,11556,1085],{},[737,11558,11559,11565,11577,11583],{},[740,11560,11561,11562,764],{},"Solo estás cargando datos que ",[958,11563,11564],{},"no dependen del DOM",[740,11566,11567,11568,11570,11571,11573,11574,764],{},"La lógica pertenece a un ",[22,11569,2526],{},", un ",[22,11572,2523],{}," o a un ",[958,11575,11576],{},"composable",[740,11578,11579,11580,11582],{},"Estás usando ",[22,11581,1085],{}," como un cajón de sastre para “todo lo que faltó”.",[740,11584,11585,11586,764],{},"Necesitas lógica compatible con ",[958,11587,11588],{},"SSR desde el primer render",[15,11590,11591],{},"En especial, si el trabajo puede hacerse antes del montaje, suele ser mejor hacerlo antes. Así el componente llega más limpio a la pantalla y el primer render no carga con tareas innecesarias.",[34,11593,8476],{"id":8475},[6160,11595,11596,11611],{},[6163,11597,11598],{},[6166,11599,11600,11602,11605,11608],{},[6169,11601,6171],{},[6169,11603,11604],{},"Qué ya existe",[6169,11606,11607],{},"Qué todavía no deberías asumir",[6169,11609,11610],{},"Uso típico",[6182,11612,11613,11628],{},[6166,11614,11615,11619,11622,11625],{},[6187,11616,11617],{},[22,11618,11417],{},[6187,11620,11621],{},"Estado reactivo, props, métodos y render preparado",[6187,11623,11624],{},"DOM real disponible",[6187,11626,11627],{},"Lógica puntual previa al montaje",[6166,11629,11630,11634,11637,11640],{},[6187,11631,11632],{},[22,11633,1085],{},[6187,11635,11636],{},"Componente insertado en el DOM",[6187,11638,11639],{},"Que librerías externas o procesos asíncronos ya hayan terminado",[6187,11641,11642],{},"Enfocar, medir, integrar APIs del navegador",[15,11644,11645,11646,11648,11649,11651,11652,11654,11655,764],{},"En la mayoría de proyectos modernos, ",[22,11647,1085],{}," aparece con frecuencia y ",[22,11650,11417],{}," muy poco. Eso no significa que ",[22,11653,11417],{}," esté mal, sino que ",[958,11656,11657],{},"casi siempre existe un lugar mejor para esa lógica",[34,11659,784],{"id":783},[1074,11661,11663,11664],{"id":11662},"_1-intentar-leer-o-modificar-el-dom-en-beforemount","1. Intentar leer o modificar el DOM en ",[22,11665,11417],{},[15,11667,11668,11669,11671],{},"Es un error clásico. En ",[22,11670,11417],{}," Vue está a punto de montar el componente, pero los nodos reales todavía no existen.",[15,11673,11674],{},"Si necesitas hacer algo como:",[737,11676,11677,11682,11687],{},[740,11678,11679],{},[22,11680,11681],{},"focus()",[740,11683,11684],{},[22,11685,11686],{},"getBoundingClientRect()",[740,11688,11689],{},"inicializar una librería sobre un contenedor",[15,11691,11692,11693,764],{},"Entonces debes esperar a ",[22,11694,1085],{},[1074,11696,11698,11699,11701],{"id":11697},"_2-mandar-a-mounted-cualquier-carga-inicial-por-costumbre","2. Mandar a ",[22,11700,1085],{}," cualquier carga inicial por costumbre",[15,11703,11704,11705,11708,11709,11711],{},"No todo ",[22,11706,11707],{},"fetch"," debería vivir en ",[22,11710,1085],{},". Si la petición no depende del DOM, puedes iniciarla antes y evitar retrasar la experiencia visual por una convención innecesaria.",[15,11713,11714,11716,11717,11720],{},[22,11715,1085],{}," ",[958,11718,11719],{},"no es el hook principal",". Es simplemente el hook correcto cuando el navegador real entra en la conversación.",[15,11722,11723,11724,1203],{},"Por ejemplo, este tipo de lógica no necesita ",[22,11725,1085],{},[74,11727,11729],{"className":76,"code":11728,"filename":10092,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { ref } from 'vue'\n\nconst users = ref([])\n\nasync function loadUsers() {\n  const res = await fetch('\u002Fapi\u002Fusers')\n  users.value = await res.json()\n}\n\nloadUsers()\n\u003C\u002Fscript>\n",[22,11730,11731,11747,11757,11761,11775,11779,11790,11810,11826,11830,11834,11841],{"__ignoreMap":80},[84,11732,11733,11735,11737,11739,11741,11743,11745],{"class":86,"line":87},[84,11734,91],{"class":90},[84,11736,95],{"class":94},[84,11738,99],{"class":98},[84,11740,1161],{"class":98},[84,11742,184],{"class":90},[84,11744,1166],{"class":118},[84,11746,102],{"class":90},[84,11748,11749,11751,11753,11755],{"class":86,"line":105},[84,11750,109],{"class":108},[84,11752,112],{"class":90},[84,11754,115],{"class":108},[84,11756,119],{"class":118},[84,11758,11759],{"class":86,"line":122},[84,11760,126],{"emptyLinePlaceholder":125},[84,11762,11763,11765,11768,11770,11772],{"class":86,"line":129},[84,11764,132],{"class":108},[84,11766,11767],{"class":135}," users",[84,11769,139],{"class":108},[84,11771,142],{"class":98},[84,11773,11774],{"class":90},"([])\n",[84,11776,11777],{"class":86,"line":154},[84,11778,126],{"emptyLinePlaceholder":125},[84,11780,11781,11783,11785,11788],{"class":86,"line":159},[84,11782,1299],{"class":108},[84,11784,421],{"class":108},[84,11786,11787],{"class":98}," loadUsers",[84,11789,1307],{"class":90},[84,11791,11792,11794,11797,11799,11801,11803,11805,11808],{"class":86,"line":178},[84,11793,443],{"class":108},[84,11795,11796],{"class":135}," res",[84,11798,139],{"class":108},[84,11800,1319],{"class":108},[84,11802,1322],{"class":98},[84,11804,145],{"class":90},[84,11806,11807],{"class":118},"'\u002Fapi\u002Fusers'",[84,11809,151],{"class":90},[84,11811,11812,11815,11817,11819,11822,11824],{"class":86,"line":190},[84,11813,11814],{"class":90},"  users.value ",[84,11816,184],{"class":108},[84,11818,1319],{"class":108},[84,11820,11821],{"class":90}," res.",[84,11823,1391],{"class":98},[84,11825,635],{"class":90},[84,11827,11828],{"class":86,"line":196},[84,11829,193],{"class":90},[84,11831,11832],{"class":86,"line":201},[84,11833,126],{"emptyLinePlaceholder":125},[84,11835,11836,11839],{"class":86,"line":217},[84,11837,11838],{"class":98},"loadUsers",[84,11840,635],{"class":90},[84,11842,11843,11845,11847],{"class":86,"line":227},[84,11844,274],{"class":90},[84,11846,95],{"class":94},[84,11848,102],{"class":90},[823,11850,11851],{},[15,11852,11853,11854,764],{},"Aquí la carga puede empezar directamente en ",[22,11855,11480],{},[1074,11857,11859,11860,11862],{"id":11858},"_3-crear-listeners-o-timers-en-mounted-y-olvidarse-de-limpiarlos","3. Crear listeners o timers en ",[22,11861,1085],{}," y olvidarse de limpiarlos",[15,11864,11865],{},"Este error no se nota en el montaje, pero aparece después.",[15,11867,11868],{},"Si registras:",[737,11870,11871,11874,11878,11882],{},[740,11872,11873],{},"eventos globales",[740,11875,11876],{},[22,11877,6276],{},[740,11879,11880],{},[22,11881,8389],{},[740,11883,11884],{},[22,11885,8564],{},[15,11887,11888,11889,11891,11892,50,11894,764],{},"en ",[22,11890,1085],{},", deberías limpiarlos en ",[22,11893,8275],{},[22,11895,9056],{},[74,11897,11899],{"className":76,"code":11898,"filename":10092,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { onMounted, onBeforeUnmount } from 'vue'\n\nlet interval: number\n\nonMounted(() => {\n  interval = window.setInterval(() => {\n    console.log('tick')\n  }, 1000)\n})\n\nonBeforeUnmount(() => {\n  clearInterval(interval)\n})\n\u003C\u002Fscript>\n",[22,11900,11901,11917,11928,11932,11943,11947,11957,11975,11988,11997,12001,12005,12015,12022,12026],{"__ignoreMap":80},[84,11902,11903,11905,11907,11909,11911,11913,11915],{"class":86,"line":87},[84,11904,91],{"class":90},[84,11906,95],{"class":94},[84,11908,99],{"class":98},[84,11910,1161],{"class":98},[84,11912,184],{"class":90},[84,11914,1166],{"class":118},[84,11916,102],{"class":90},[84,11918,11919,11921,11924,11926],{"class":86,"line":105},[84,11920,109],{"class":108},[84,11922,11923],{"class":90}," { onMounted, onBeforeUnmount } ",[84,11925,115],{"class":108},[84,11927,119],{"class":118},[84,11929,11930],{"class":86,"line":122},[84,11931,126],{"emptyLinePlaceholder":125},[84,11933,11934,11936,11939,11941],{"class":86,"line":129},[84,11935,8751],{"class":108},[84,11937,11938],{"class":90}," interval",[84,11940,1203],{"class":108},[84,11942,1206],{"class":135},[84,11944,11945],{"class":86,"line":154},[84,11946,126],{"emptyLinePlaceholder":125},[84,11948,11949,11951,11953,11955],{"class":86,"line":159},[84,11950,1503],{"class":98},[84,11952,2992],{"class":90},[84,11954,172],{"class":108},[84,11956,175],{"class":90},[84,11958,11959,11962,11964,11967,11969,11971,11973],{"class":86,"line":178},[84,11960,11961],{"class":90},"  interval ",[84,11963,184],{"class":108},[84,11965,11966],{"class":90}," window.",[84,11968,6276],{"class":98},[84,11970,2992],{"class":90},[84,11972,172],{"class":108},[84,11974,175],{"class":90},[84,11976,11977,11979,11981,11983,11986],{"class":86,"line":190},[84,11978,3666],{"class":90},[84,11980,3138],{"class":98},[84,11982,145],{"class":90},[84,11984,11985],{"class":118},"'tick'",[84,11987,151],{"class":90},[84,11989,11990,11992,11995],{"class":86,"line":196},[84,11991,6888],{"class":90},[84,11993,11994],{"class":135},"1000",[84,11996,151],{"class":90},[84,11998,11999],{"class":86,"line":201},[84,12000,1492],{"class":90},[84,12002,12003],{"class":86,"line":217},[84,12004,126],{"emptyLinePlaceholder":125},[84,12006,12007,12009,12011,12013],{"class":86,"line":227},[84,12008,9056],{"class":98},[84,12010,2992],{"class":90},[84,12012,172],{"class":108},[84,12014,175],{"class":90},[84,12016,12017,12019],{"class":86,"line":232},[84,12018,6933],{"class":98},[84,12020,12021],{"class":90},"(interval)\n",[84,12023,12024],{"class":86,"line":237},[84,12025,1492],{"class":90},[84,12027,12028,12030,12032],{"class":86,"line":253},[84,12029,274],{"class":90},[84,12031,95],{"class":94},[84,12033,102],{"class":90},[823,12035,12036],{},[15,12037,12038,12039,764],{},"Montar bien también implica ",[958,12040,12041],{},"dejar preparado el desmontaje",[1074,12043,12045],{"id":12044},"_4-asumir-que-estos-hooks-también-corren-en-ssr","4. Asumir que estos hooks también corren en SSR",[15,12047,12048,12049,764],{},"En Nuxt o en cualquier flujo con renderizado del lado del servidor, estos hooks ",[958,12050,12051],{},"solo se ejecutan en el cliente",[15,12053,12054,12055,12057,12058,764],{},"Si colocas lógica crítica del HTML inicial dentro de ",[22,12056,1085],{},", esa lógica ",[958,12059,12060],{},"no formará parte del primer render del servidor",[15,12062,12063,12064,764],{},"En Nuxt, por ejemplo, las cargas de datos iniciales suelen vivir en composables o utilidades como ",[22,12065,12066],{},"useAsyncData",[34,12068,2736],{"id":2735},[1074,12070,12072],{"id":12071},"enfocar-un-input-al-entrar-en-la-vista","Enfocar un input al entrar en la vista",[15,12074,12075,12076,764],{},"Es uno de los ejemplos más simples y útiles: necesitas que el elemento exista antes de llamar a ",[22,12077,11681],{},[1074,12079,12081],{"id":12080},"inicializar-una-librería-de-terceros","Inicializar una librería de terceros",[15,12083,12084,12085,764],{},"Si usas un gráfico, un calendario o un editor enriquecido, la librería normalmente requiere un contenedor del DOM. Ese momento natural es ",[22,12086,1085],{},[1074,12088,12090],{"id":12089},"medir-un-bloque-después-del-primer-render","Medir un bloque después del primer render",[15,12092,12093],{},"Algunos componentes necesitan conocer su alto o ancho para decidir animaciones, layout o comportamiento de scroll. Esa medición también pertenece a la fase de montaje.",[74,12095,12097],{"className":76,"code":12096,"filename":873,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { onBeforeMount, onMounted, ref } from 'vue'\n\nconst searchInput = ref\u003CHTMLInputElement | null>(null)\nconst status = ref('Preparando componente...')\n\nonBeforeMount(() => {\n  status.value = 'Vue ya preparó la instancia, pero el input todavía no existe en el DOM.'\n})\n\nonMounted(() => {\n  searchInput.value?.focus()\n  status.value = 'Componente montado. El input ya puede recibir foco.'\n})\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection class=\"search-panel\">\n    \u003Cp>{{ status }}\u003C\u002Fp>\n\n    \u003Cinput\n      ref=\"searchInput\"\n      type=\"search\"\n      placeholder=\"Buscar tareas\"\n    >\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[22,12098,12099,12115,12126,12130,12156,12173,12177,12188,12197,12201,12205,12215,12225,12234,12238,12246,12250,12258,12273,12285,12289,12296,12305,12315,12325,12329,12337],{"__ignoreMap":80},[84,12100,12101,12103,12105,12107,12109,12111,12113],{"class":86,"line":87},[84,12102,91],{"class":90},[84,12104,95],{"class":94},[84,12106,99],{"class":98},[84,12108,1161],{"class":98},[84,12110,184],{"class":90},[84,12112,1166],{"class":118},[84,12114,102],{"class":90},[84,12116,12117,12119,12122,12124],{"class":86,"line":105},[84,12118,109],{"class":108},[84,12120,12121],{"class":90}," { onBeforeMount, onMounted, ref } ",[84,12123,115],{"class":108},[84,12125,119],{"class":118},[84,12127,12128],{"class":86,"line":122},[84,12129,126],{"emptyLinePlaceholder":125},[84,12131,12132,12134,12137,12139,12141,12143,12146,12148,12150,12152,12154],{"class":86,"line":129},[84,12133,132],{"class":108},[84,12135,12136],{"class":135}," searchInput",[84,12138,139],{"class":108},[84,12140,142],{"class":98},[84,12142,91],{"class":90},[84,12144,12145],{"class":98},"HTMLInputElement",[84,12147,1261],{"class":108},[84,12149,1264],{"class":135},[84,12151,1267],{"class":90},[84,12153,1270],{"class":135},[84,12155,151],{"class":90},[84,12157,12158,12160,12162,12164,12166,12168,12171],{"class":86,"line":154},[84,12159,132],{"class":108},[84,12161,6494],{"class":135},[84,12163,139],{"class":108},[84,12165,142],{"class":98},[84,12167,145],{"class":90},[84,12169,12170],{"class":118},"'Preparando componente...'",[84,12172,151],{"class":90},[84,12174,12175],{"class":86,"line":159},[84,12176,126],{"emptyLinePlaceholder":125},[84,12178,12179,12182,12184,12186],{"class":86,"line":178},[84,12180,12181],{"class":98},"onBeforeMount",[84,12183,2992],{"class":90},[84,12185,172],{"class":108},[84,12187,175],{"class":90},[84,12189,12190,12192,12194],{"class":86,"line":190},[84,12191,6711],{"class":90},[84,12193,184],{"class":108},[84,12195,12196],{"class":118}," 'Vue ya preparó la instancia, pero el input todavía no existe en el DOM.'\n",[84,12198,12199],{"class":86,"line":196},[84,12200,1492],{"class":90},[84,12202,12203],{"class":86,"line":201},[84,12204,126],{"emptyLinePlaceholder":125},[84,12206,12207,12209,12211,12213],{"class":86,"line":217},[84,12208,1503],{"class":98},[84,12210,2992],{"class":90},[84,12212,172],{"class":108},[84,12214,175],{"class":90},[84,12216,12217,12220,12223],{"class":86,"line":227},[84,12218,12219],{"class":90},"  searchInput.value?.",[84,12221,12222],{"class":98},"focus",[84,12224,635],{"class":90},[84,12226,12227,12229,12231],{"class":86,"line":232},[84,12228,6711],{"class":90},[84,12230,184],{"class":108},[84,12232,12233],{"class":118}," 'Componente montado. El input ya puede recibir foco.'\n",[84,12235,12236],{"class":86,"line":237},[84,12237,1492],{"class":90},[84,12239,12240,12242,12244],{"class":86,"line":253},[84,12241,274],{"class":90},[84,12243,95],{"class":94},[84,12245,102],{"class":90},[84,12247,12248],{"class":86,"line":266},[84,12249,126],{"emptyLinePlaceholder":125},[84,12251,12252,12254,12256],{"class":86,"line":271},[84,12253,91],{"class":90},[84,12255,291],{"class":94},[84,12257,102],{"class":90},[84,12259,12260,12262,12264,12266,12268,12271],{"class":86,"line":281},[84,12261,299],{"class":90},[84,12263,4898],{"class":94},[84,12265,1629],{"class":98},[84,12267,184],{"class":90},[84,12269,12270],{"class":118},"\"search-panel\"",[84,12272,102],{"class":90},[84,12274,12275,12277,12279,12281,12283],{"class":86,"line":286},[84,12276,1642],{"class":90},[84,12278,15],{"class":94},[84,12280,7135],{"class":90},[84,12282,15],{"class":94},[84,12284,102],{"class":90},[84,12286,12287],{"class":86,"line":296},[84,12288,126],{"emptyLinePlaceholder":125},[84,12290,12291,12293],{"class":86,"line":315},[84,12292,1642],{"class":90},[84,12294,12295],{"class":94},"input\n",[84,12297,12298,12300,12302],{"class":86,"line":321},[84,12299,10774],{"class":98},[84,12301,184],{"class":90},[84,12303,12304],{"class":118},"\"searchInput\"\n",[84,12306,12307,12310,12312],{"class":86,"line":331},[84,12308,12309],{"class":98},"      type",[84,12311,184],{"class":90},[84,12313,12314],{"class":118},"\"search\"\n",[84,12316,12317,12320,12322],{"class":86,"line":336},[84,12318,12319],{"class":98},"      placeholder",[84,12321,184],{"class":90},[84,12323,12324],{"class":118},"\"Buscar tareas\"\n",[84,12326,12327],{"class":86,"line":354},[84,12328,10794],{"class":90},[84,12330,12331,12333,12335],{"class":86,"line":360},[84,12332,324],{"class":90},[84,12334,4898],{"class":94},[84,12336,102],{"class":90},[84,12338,12339,12341,12343],{"class":86,"line":369},[84,12340,274],{"class":90},[84,12342,291],{"class":94},[84,12344,102],{"class":90},[74,12346,12348],{"className":76,"code":12347,"filename":1782,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      status: 'Preparando componente...'\n    }\n  },\n\n  beforeMount() {\n    this.status = 'Vue está a punto de insertar el DOM del componente.'\n  },\n\n  mounted() {\n    this.status = 'Componente montado. El input ya puede recibir foco.'\n\n    if (this.$refs.searchInput instanceof HTMLInputElement) {\n      this.$refs.searchInput.focus()\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection class=\"search-panel\">\n    \u003Cp>{{ status }}\u003C\u002Fp>\n\n    \u003Cinput\n      ref=\"searchInput\"\n      type=\"search\"\n      placeholder=\"Buscar tareas\"\n    >\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[22,12349,12350,12358,12366,12372,12378,12385,12389,12393,12397,12404,12415,12419,12423,12429,12439,12443,12461,12472,12476,12480,12484,12492,12496,12504,12518,12530,12534,12540,12548,12556,12564,12568,12576],{"__ignoreMap":80},[84,12351,12352,12354,12356],{"class":86,"line":87},[84,12353,91],{"class":90},[84,12355,95],{"class":94},[84,12357,102],{"class":90},[84,12359,12360,12362,12364],{"class":86,"line":105},[84,12361,418],{"class":108},[84,12363,1870],{"class":108},[84,12365,175],{"class":90},[84,12367,12368,12370],{"class":86,"line":122},[84,12369,1896],{"class":98},[84,12371,1307],{"class":90},[84,12373,12374,12376],{"class":86,"line":129},[84,12375,1903],{"class":108},[84,12377,175],{"class":90},[84,12379,12380,12382],{"class":86,"line":154},[84,12381,7387],{"class":90},[84,12383,12384],{"class":118},"'Preparando componente...'\n",[84,12386,12387],{"class":86,"line":159},[84,12388,1936],{"class":90},[84,12390,12391],{"class":86,"line":178},[84,12392,1941],{"class":90},[84,12394,12395],{"class":86,"line":190},[84,12396,126],{"emptyLinePlaceholder":125},[84,12398,12399,12402],{"class":86,"line":196},[84,12400,12401],{"class":98},"  beforeMount",[84,12403,1307],{"class":90},[84,12405,12406,12408,12410,12412],{"class":86,"line":201},[84,12407,5499],{"class":135},[84,12409,7588],{"class":90},[84,12411,184],{"class":108},[84,12413,12414],{"class":118}," 'Vue está a punto de insertar el DOM del componente.'\n",[84,12416,12417],{"class":86,"line":217},[84,12418,1941],{"class":90},[84,12420,12421],{"class":86,"line":227},[84,12422,126],{"emptyLinePlaceholder":125},[84,12424,12425,12427],{"class":86,"line":232},[84,12426,7551],{"class":98},[84,12428,1307],{"class":90},[84,12430,12431,12433,12435,12437],{"class":86,"line":237},[84,12432,5499],{"class":135},[84,12434,7588],{"class":90},[84,12436,184],{"class":108},[84,12438,12233],{"class":118},[84,12440,12441],{"class":86,"line":253},[84,12442,126],{"emptyLinePlaceholder":125},[84,12444,12445,12447,12449,12451,12454,12456,12459],{"class":86,"line":266},[84,12446,2146],{"class":108},[84,12448,1341],{"class":90},[84,12450,2151],{"class":135},[84,12452,12453],{"class":90},".$refs.searchInput ",[84,12455,1468],{"class":108},[84,12457,12458],{"class":98}," HTMLInputElement",[84,12460,438],{"class":90},[84,12462,12463,12465,12468,12470],{"class":86,"line":271},[84,12464,2022],{"class":135},[84,12466,12467],{"class":90},".$refs.searchInput.",[84,12469,12222],{"class":98},[84,12471,635],{"class":90},[84,12473,12474],{"class":86,"line":281},[84,12475,1936],{"class":90},[84,12477,12478],{"class":86,"line":286},[84,12479,485],{"class":90},[84,12481,12482],{"class":86,"line":296},[84,12483,193],{"class":90},[84,12485,12486,12488,12490],{"class":86,"line":315},[84,12487,274],{"class":90},[84,12489,95],{"class":94},[84,12491,102],{"class":90},[84,12493,12494],{"class":86,"line":321},[84,12495,126],{"emptyLinePlaceholder":125},[84,12497,12498,12500,12502],{"class":86,"line":331},[84,12499,91],{"class":90},[84,12501,291],{"class":94},[84,12503,102],{"class":90},[84,12505,12506,12508,12510,12512,12514,12516],{"class":86,"line":336},[84,12507,299],{"class":90},[84,12509,4898],{"class":94},[84,12511,1629],{"class":98},[84,12513,184],{"class":90},[84,12515,12270],{"class":118},[84,12517,102],{"class":90},[84,12519,12520,12522,12524,12526,12528],{"class":86,"line":354},[84,12521,1642],{"class":90},[84,12523,15],{"class":94},[84,12525,7135],{"class":90},[84,12527,15],{"class":94},[84,12529,102],{"class":90},[84,12531,12532],{"class":86,"line":360},[84,12533,126],{"emptyLinePlaceholder":125},[84,12535,12536,12538],{"class":86,"line":369},[84,12537,1642],{"class":90},[84,12539,12295],{"class":94},[84,12541,12542,12544,12546],{"class":86,"line":1453},[84,12543,10774],{"class":98},[84,12545,184],{"class":90},[84,12547,12304],{"class":118},[84,12549,12550,12552,12554],{"class":86,"line":1462},[84,12551,12309],{"class":98},[84,12553,184],{"class":90},[84,12555,12314],{"class":118},[84,12557,12558,12560,12562],{"class":86,"line":1484},[84,12559,12319],{"class":98},[84,12561,184],{"class":90},[84,12563,12324],{"class":118},[84,12565,12566],{"class":86,"line":1489},[84,12567,10794],{"class":90},[84,12569,12570,12572,12574],{"class":86,"line":1495},[84,12571,324],{"class":90},[84,12573,4898],{"class":94},[84,12575,102],{"class":90},[84,12577,12578,12580,12582],{"class":86,"line":1500},[84,12579,274],{"class":90},[84,12581,291],{"class":94},[84,12583,102],{"class":90},[823,12585,12586],{},[15,12587,12588,12589,12591,12592,12594,12595,12597],{},"Aquí ",[22,12590,11461],{}," solo actualiza un estado informativo. En cambio, ",[22,12593,11681],{}," queda en ",[22,12596,1092],{}," porque necesita un nodo real del DOM.",[34,12599,2406],{"id":2405},[737,12601,12602,12607,12616],{},[740,12603,12604,12606],{},[22,12605,11417],{}," existe, pero en la mayoría de componentes no será tu herramienta principal. Si no necesitas el DOM, casi siempre conviene resolver la lógica antes.",[740,12608,12609,12611,12612,12615],{},[22,12610,1085],{},", en cambio, tiene un papel muy claro: ",[958,12613,12614],{},"es el hook donde el componente se encuentra con el navegador real",". Inputs, mediciones, gráficos, observers y librerías de terceros suelen empezar ahí.",[740,12617,12618,12619,764],{},"La mejor forma de usar esta fase no es meter más cosas en ella, sino ",[958,12620,12621],{},"reservarla únicamente para lo que realmente depende del DOM",[835,12623,11371],{},{"title":80,"searchDepth":105,"depth":105,"links":12625},[12626,12627,12628,12629,12630,12639,12644],{"id":946,"depth":105,"text":947},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":8475,"depth":105,"text":8476},{"id":783,"depth":105,"text":784,"children":12631},[12632,12634,12636,12638],{"id":11662,"depth":122,"text":12633},"1. Intentar leer o modificar el DOM en beforeMount",{"id":11697,"depth":122,"text":12635},"2. Mandar a mounted cualquier carga inicial por costumbre",{"id":11858,"depth":122,"text":12637},"3. Crear listeners o timers en mounted y olvidarse de limpiarlos",{"id":12044,"depth":122,"text":12045},{"id":2735,"depth":105,"text":2736,"children":12640},[12641,12642,12643],{"id":12071,"depth":122,"text":12072},{"id":12080,"depth":122,"text":12081},{"id":12089,"depth":122,"text":12090},{"id":2405,"depth":105,"text":2406},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1773284431\u002Fvue-lifecycle-mounting-phase-beforemount-mounted_wkrzal.png","Ilustración del ciclo de vida de un componente Vue enfocada en la fase de montaje del DOM","2026-03-10","Qué ocurre justo antes y justo después de que Vue inserte un componente en el DOM, y cómo usar beforeMount y mounted sin meter lógica donde no corresponde.",{"updatedAt":12650,"coverCaption":12651,"author":868,"keywords":12652},"2026-03-09T22:00:00-05:00","La fase de montaje es el momento en el que Vue crea e inserta el DOM del componente en la página.",[870,11417,1085,1503,12653],"DOM","\u002Fblog\u002Fvue-lifecycle-mounting-phase-beforemount-mounted.es",[12656],{"headline":11408,"author":12657,"datePublished":12650,"@type":880},{"name":868,"@type":879},{"title":11408,"description":12648},"blog\u002Fvue-lifecycle-mounting-phase-beforemount-mounted.es",[12661,12662,12663,12664],{"tag":2453,"color":2454},{"tag":888,"color":889},{"tag":3942,"color":3943},{"tag":894,"color":895},"GQ-lIt1QfPL-Vw50b8qQ3uquMQjxzjBexBGH1U_jPMM",{"id":12667,"title":12668,"body":12669,"cover":13799,"coverAlt":13800,"date":13801,"description":13802,"draft":852,"extension":853,"lab":882,"locale":864,"meta":13803,"navigation":125,"path":13807,"schemaOrg":13808,"seo":13811,"series":2447,"seriesDescription":2448,"seriesOrder":105,"seriesTitle":2449,"slug":882,"stem":13812,"tags":13813,"__hash__":13818},"blog\u002Fblog\u002Fvue-lifecycle-creation-phase-beforecreate-created-setup.es.md","Ciclos de vida en Vue: fase de creación (beforeCreate, created, setup)",{"type":8,"value":12670,"toc":13779},[12671,12683,12689,12697,12707,12711,12717,12734,12751,12754,12777,12783,12790,12793,12809,12816,12822,12883,12889,12902,12905,12916,13029,13035,13043,13049,13071,13080,13228,13239,13303,13307,13316,13325,13328,13340,13347,13360,13364,13371,13375,13382,13569,13740,13744,13776],[11,12672,12674,12675,754,12678,754,12681,909],{"id":12673},"ciclos-de-vida-en-vue-fase-de-creación-beforecreate-created-setup","Ciclos de vida en Vue: fase de creación (",[22,12676,12677],{},"beforeCreate",[22,12679,12680],{},"created",[22,12682,11480],{},[15,12684,12685,12686],{},"Cuando empiezas a escribir un componente en Vue, una de las preguntas más comunes es: ",[958,12687,12688],{},"¿dónde debería colocar la lógica inicial?",[15,12690,12691,12692,12694,12695,764],{},"La respuesta depende principalmente de si estás trabajando con ",[958,12693,1782],{}," o con ",[958,12696,873],{},[15,12698,12699,12700,12703,12704,764],{},"La ",[958,12701,12702],{},"fase de creación"," es el momento en el que Vue construye la instancia del componente, inicializa su sistema de reactividad y prepara su estado interno. En esta etapa, el componente todavía ",[958,12705,12706],{},"no ha sido montado en el DOM",[34,12708,12710],{"id":12709},"qué-ocurre-en-esta-fase","Qué ocurre en esta fase",[15,12712,12713,12714,12716],{},"En términos prácticos, el orden clásico del ciclo de vida con ",[958,12715,1782],{}," es:",[10842,12718,12719,12723,12727],{},[740,12720,12721],{},[22,12722,12677],{},[740,12724,12725],{},[22,12726,12680],{},[740,12728,12729,12730,6014,12732,909],{},"montaje (",[22,12731,11417],{},[22,12733,1085],{},[15,12735,12736,12737,12739,12740,12742,12743,12746,12747,2488,12749,764],{},"Con ",[958,12738,873],{},", el punto de entrada es ",[22,12741,4013],{},", que se ejecuta ",[958,12744,12745],{},"antes de los hooks de ciclo de vida de Options API",", incluidos ",[22,12748,12677],{},[22,12750,12680],{},[15,12752,12753],{},"Si quieres quedarte con una idea simple:",[737,12755,12756,12763,12770],{},[740,12757,12758,12762],{},[958,12759,12760],{},[22,12761,12677],{}," → punto extremadamente temprano; rara vez necesario hoy.",[740,12764,12765,12769],{},[958,12766,12767],{},[22,12768,12680],{}," → estado reactivo disponible en Options API.",[740,12771,12772,12776],{},[958,12773,12774],{},[22,12775,11480],{}," → punto de arranque principal en Composition API.",[34,12778,12780,12782],{"id":12779},"beforecreate-cuándo-aparece-y-por-qué-casi-no-se-usa",[22,12781,12677],{},": cuándo aparece y por qué casi no se usa",[15,12784,12785,10058,12787,764],{},[22,12786,12677],{},[958,12788,12789],{},"antes de que Vue termine de inicializar el estado reactivo y las opciones de la instancia",[15,12791,12792],{},"En este punto:",[737,12794,12795,12800,12804],{},[740,12796,12797],{},[22,12798,12799],{},"data",[740,12801,12802],{},[22,12803,2523],{},[740,12805,12806],{},[22,12807,12808],{},"methods",[15,12810,12811,12812,12815],{},"Todavía ",[958,12813,12814],{},"no están inicializados",", por lo que el acceso a la instancia es muy limitado.",[15,12817,12818,12819,764],{},"Por esta razón, en proyectos modernos con Vue 3 este hook rara vez se utiliza. En la mayoría de casos aparece únicamente en ",[958,12820,12821],{},"código legado o escenarios muy específicos relacionados con plugins o extensiones del framework",[74,12823,12826],{"className":76,"code":12824,"filename":10092,"highlights":12825,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  beforeCreate() {\n    console.log('El componente está arrancando')\n  }\n}\n\u003C\u002Fscript>\n",[122,129,154],[22,12827,12828,12836,12844,12852,12866,12871,12875],{"__ignoreMap":80},[84,12829,12830,12832,12834],{"class":86,"line":87},[84,12831,91],{"class":90},[84,12833,95],{"class":94},[84,12835,102],{"class":90},[84,12837,12838,12840,12842],{"class":86,"line":105},[84,12839,418],{"class":108},[84,12841,1870],{"class":108},[84,12843,175],{"class":90},[84,12845,12847,12850],{"class":12846,"line":122},[86,10151],[84,12848,12849],{"class":98},"  beforeCreate",[84,12851,1307],{"class":90},[84,12853,12855,12857,12859,12861,12864],{"class":12854,"line":129},[86,10151],[84,12856,3666],{"class":90},[84,12858,3138],{"class":98},[84,12860,145],{"class":90},[84,12862,12863],{"class":118},"'El componente está arrancando'",[84,12865,151],{"class":90},[84,12867,12869],{"class":12868,"line":154},[86,10151],[84,12870,485],{"class":90},[84,12872,12873],{"class":86,"line":159},[84,12874,193],{"class":90},[84,12876,12877,12879,12881],{"class":86,"line":178},[84,12878,274],{"class":90},[84,12880,95],{"class":94},[84,12882,102],{"class":90},[34,12884,12886,12888],{"id":12885},"created-el-punto-útil-en-options-api",[22,12887,12680],{},": el punto útil en Options API",[15,12890,12891,12892,12894,12895,12898,12899,764],{},"En el hook ",[22,12893,12680],{},", la instancia del componente ya está completamente inicializada en términos de ",[958,12896,12897],{},"estado reactivo y métodos",", aunque el ",[958,12900,12901],{},"DOM todavía no ha sido renderizado",[15,12903,12904],{},"Esto lo convierte en un buen lugar para:",[737,12906,12907,12910,12913],{},[740,12908,12909],{},"Inicializar estado derivado de configuración.",[740,12911,12912],{},"Cargar datos de forma temprana.",[740,12914,12915],{},"Preparar timers o listeners que no dependan del DOM.",[74,12917,12920],{"className":76,"code":12918,"filename":10092,"highlights":12919,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      users: []\n    }\n  },\n  async created() {\n    this.users = await fetch('\u002Fapi\u002Fusers').then((r) => r.json())\n  }\n}\n\u003C\u002Fscript>\n",[190,196,201],[22,12921,12922,12930,12938,12944,12950,12955,12959,12963,12973,13012,13017,13021],{"__ignoreMap":80},[84,12923,12924,12926,12928],{"class":86,"line":87},[84,12925,91],{"class":90},[84,12927,95],{"class":94},[84,12929,102],{"class":90},[84,12931,12932,12934,12936],{"class":86,"line":105},[84,12933,418],{"class":108},[84,12935,1870],{"class":108},[84,12937,175],{"class":90},[84,12939,12940,12942],{"class":86,"line":122},[84,12941,1896],{"class":98},[84,12943,1307],{"class":90},[84,12945,12946,12948],{"class":86,"line":129},[84,12947,1903],{"class":108},[84,12949,175],{"class":90},[84,12951,12952],{"class":86,"line":154},[84,12953,12954],{"class":90},"      users: []\n",[84,12956,12957],{"class":86,"line":159},[84,12958,1936],{"class":90},[84,12960,12961],{"class":86,"line":178},[84,12962,1941],{"class":90},[84,12964,12966,12968,12971],{"class":12965,"line":190},[86,10151],[84,12967,2058],{"class":108},[84,12969,12970],{"class":98}," created",[84,12972,1307],{"class":90},[84,12974,12976,12978,12981,12983,12985,12987,12989,12991,12993,12996,12998,13001,13003,13005,13008,13010],{"class":12975,"line":196},[86,10151],[84,12977,5499],{"class":135},[84,12979,12980],{"class":90},".users ",[84,12982,184],{"class":108},[84,12984,1319],{"class":108},[84,12986,1322],{"class":98},[84,12988,145],{"class":90},[84,12990,11807],{"class":118},[84,12992,2686],{"class":90},[84,12994,12995],{"class":98},"then",[84,12997,3120],{"class":90},[84,12999,13000],{"class":429},"r",[84,13002,3126],{"class":90},[84,13004,172],{"class":108},[84,13006,13007],{"class":90}," r.",[84,13009,1391],{"class":98},[84,13011,3054],{"class":90},[84,13013,13015],{"class":13014,"line":201},[86,10151],[84,13016,485],{"class":90},[84,13018,13019],{"class":86,"line":217},[84,13020,193],{"class":90},[84,13022,13023,13025,13027],{"class":86,"line":227},[84,13024,274],{"class":90},[84,13026,95],{"class":94},[84,13028,102],{"class":90},[34,13030,13032,13034],{"id":13031},"setup-el-arranque-natural-en-vue-3",[22,13033,11480],{},": el arranque natural en Vue 3",[15,13036,13037,13038,754,13040,13042],{},"Cuando trabajas con ",[958,13039,873],{},[22,13041,4013],{}," es el verdadero punto de entrada del componente.",[15,13044,13045,13046,13048],{},"Dentro de ",[22,13047,11480],{}," defines:",[737,13050,13051,13055,13060,13064,13068],{},[740,13052,13053],{},[22,13054,24],{},[740,13056,13057],{},[22,13058,13059],{},"reactive",[740,13061,13062],{},[22,13063,2523],{},[740,13065,13066],{},[22,13067,2526],{},[740,13069,13070],{},"composables",[15,13072,13073,13074,10058,13076,13079],{},"Además, ",[22,13075,11480],{},[958,13077,13078],{},"antes de que el componente sea montado",", por lo que permite preparar todo el estado que la vista necesitará en su primer render.",[74,13081,13084],{"className":76,"code":13082,"filename":10092,"highlights":13083,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref, computed } from 'vue'\n\nconst count = ref(0)\nconst double = computed(() => count.value * 2)\n\nconsole.log('setup ejecutado')\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"count++\">\n    count: {{ count }} \u002F double: {{ double }}\n  \u003C\u002Fbutton>\n\u003C\u002Ftemplate>\n",[178],[22,13085,13086,13096,13107,13111,13127,13153,13157,13172,13180,13184,13192,13207,13212,13220],{"__ignoreMap":80},[84,13087,13088,13090,13092,13094],{"class":86,"line":87},[84,13089,91],{"class":90},[84,13091,95],{"class":94},[84,13093,99],{"class":98},[84,13095,102],{"class":90},[84,13097,13098,13100,13103,13105],{"class":86,"line":105},[84,13099,109],{"class":108},[84,13101,13102],{"class":90}," { ref, computed } ",[84,13104,115],{"class":108},[84,13106,119],{"class":118},[84,13108,13109],{"class":86,"line":122},[84,13110,126],{"emptyLinePlaceholder":125},[84,13112,13113,13115,13117,13119,13121,13123,13125],{"class":86,"line":129},[84,13114,132],{"class":108},[84,13116,10133],{"class":135},[84,13118,139],{"class":108},[84,13120,142],{"class":98},[84,13122,145],{"class":90},[84,13124,4320],{"class":135},[84,13126,151],{"class":90},[84,13128,13129,13131,13134,13136,13138,13140,13142,13145,13148,13151],{"class":86,"line":154},[84,13130,132],{"class":108},[84,13132,13133],{"class":135}," double",[84,13135,139],{"class":108},[84,13137,2989],{"class":98},[84,13139,2992],{"class":90},[84,13141,172],{"class":108},[84,13143,13144],{"class":90}," count.value ",[84,13146,13147],{"class":108},"*",[84,13149,13150],{"class":135}," 2",[84,13152,151],{"class":90},[84,13154,13155],{"class":86,"line":159},[84,13156,126],{"emptyLinePlaceholder":125},[84,13158,13160,13163,13165,13167,13170],{"class":13159,"line":178},[86,10151],[84,13161,13162],{"class":90},"console.",[84,13164,3138],{"class":98},[84,13166,145],{"class":90},[84,13168,13169],{"class":118},"'setup ejecutado'",[84,13171,151],{"class":90},[84,13173,13174,13176,13178],{"class":86,"line":190},[84,13175,274],{"class":90},[84,13177,95],{"class":94},[84,13179,102],{"class":90},[84,13181,13182],{"class":86,"line":196},[84,13183,126],{"emptyLinePlaceholder":125},[84,13185,13186,13188,13190],{"class":86,"line":201},[84,13187,91],{"class":90},[84,13189,291],{"class":94},[84,13191,102],{"class":90},[84,13193,13194,13196,13198,13200,13202,13205],{"class":86,"line":217},[84,13195,299],{"class":90},[84,13197,302],{"class":94},[84,13199,305],{"class":98},[84,13201,184],{"class":90},[84,13203,13204],{"class":118},"\"count++\"",[84,13206,102],{"class":90},[84,13208,13209],{"class":86,"line":227},[84,13210,13211],{"class":90},"    count: {{ count }} \u002F double: {{ double }}\n",[84,13213,13214,13216,13218],{"class":86,"line":232},[84,13215,324],{"class":90},[84,13217,302],{"class":94},[84,13219,102],{"class":90},[84,13221,13222,13224,13226],{"class":86,"line":237},[84,13223,274],{"class":90},[84,13225,291],{"class":94},[84,13227,102],{"class":90},[34,13229,13231,13232,13234,13235,13234,13237],{"id":13230},"comparación-rápida-beforecreate-vs-created-vs-setup","Comparación rápida: ",[22,13233,12677],{}," vs ",[22,13236,12680],{},[22,13238,11480],{},[6160,13240,13241,13257],{},[6163,13242,13243],{},[6166,13244,13245,13248,13251,13254],{},[6169,13246,13247],{},"Punto",[6169,13249,13250],{},"API",[6169,13252,13253],{},"Qué ya tienes disponible",[6169,13255,13256],{},"Cuándo elegirlo",[6182,13258,13259,13274,13288],{},[6166,13260,13261,13265,13268,13271],{},[6187,13262,13263],{},[22,13264,12677],{},[6187,13266,13267],{},"Options",[6187,13269,13270],{},"Instancia en arranque temprano",[6187,13272,13273],{},"Casos muy puntuales o código legado",[6166,13275,13276,13280,13282,13285],{},[6187,13277,13278],{},[22,13279,12680],{},[6187,13281,13267],{},[6187,13283,13284],{},"Estado y métodos disponibles, sin DOM",[6187,13286,13287],{},"Inicialización de datos o lógica sin DOM",[6166,13289,13290,13294,13297,13300],{},[6187,13291,13292],{},[22,13293,11480],{},[6187,13295,13296],{},"Composition",[6187,13298,13299],{},"Reactividad y composables desde el inicio",[6187,13301,13302],{},"Opción principal en Vue 3 moderno",[34,13304,13306],{"id":13305},"errores-que-se-repiten-con-frecuencia","Errores que se repiten con frecuencia",[1074,13308,13310,13311,13313,13314],{"id":13309},"_1-intentar-manipular-el-dom-en-created-o-al-inicio-de-setup","1) Intentar manipular el DOM en ",[22,13312,12680],{}," o al inicio de ",[22,13315,11480],{},[15,13317,13318,13319,13321,13322,13324],{},"Ni ",[22,13320,12680],{}," ni el inicio de ",[22,13323,11480],{}," garantizan que el DOM exista.",[15,13326,13327],{},"Si necesitas interactuar con elementos reales del DOM, debes usar:",[737,13329,13330,13335],{},[740,13331,13332,13334],{},[22,13333,1085],{}," (Options API)",[740,13336,13337,13339],{},[22,13338,1503],{}," (Composition API)",[1074,13341,13343,13344,13346],{"id":13342},"_2-usar-beforecreate-por-costumbre","2) Usar ",[22,13345,12677],{}," por costumbre",[15,13348,13349,13350,13353,13354,13356,13357,13359],{},"Muchos ejemplos antiguos de Vue lo utilizan, pero en Vue 3 ",[958,13351,13352],{},"rara vez aporta ventajas reales"," frente a ",[22,13355,11480],{}," (Composition API) o ",[22,13358,12680],{}," (Options API).",[1074,13361,13363],{"id":13362},"_3-mezclar-mentalmente-options-api-y-composition-api","3) Mezclar mentalmente Options API y Composition API",[15,13365,13366,13367,13370],{},"Vue permite combinar ambas API en un proyecto, pero dentro de un componente conviene ",[958,13368,13369],{},"tener claro cuál es el punto de entrada principal",". Mezclar ambas sin un criterio claro puede terminar duplicando lógica de inicialización.",[34,13372,13374],{"id":13373},"un-ejemplo-equivalente-en-ambos-estilos","Un ejemplo equivalente en ambos estilos",[15,13376,13377,13378,13381],{},"Supongamos que queremos ",[958,13379,13380],{},"cargar usuarios cuando se crea el componente",", sin depender del DOM.",[74,13383,13385],{"className":76,"code":13384,"filename":873,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst users = ref([])\n\nasync function loadUsers() {\n  users.value = await fetch('\u002Fapi\u002Fusers').then((r) => r.json())\n}\n\n\u002F\u002F Se ejecuta durante setup (fase de creación)\nloadUsers()\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cul>\n    \u003Cli v-for=\"user in users\" :key=\"user.id\">\n      {{ user.name }}\n    \u003C\u002Fli>\n  \u003C\u002Ful>\n\u003C\u002Ftemplate>\n",[22,13386,13387,13397,13407,13411,13423,13427,13437,13469,13473,13477,13483,13489,13497,13501,13509,13517,13540,13545,13553,13561],{"__ignoreMap":80},[84,13388,13389,13391,13393,13395],{"class":86,"line":87},[84,13390,91],{"class":90},[84,13392,95],{"class":94},[84,13394,99],{"class":98},[84,13396,102],{"class":90},[84,13398,13399,13401,13403,13405],{"class":86,"line":105},[84,13400,109],{"class":108},[84,13402,112],{"class":90},[84,13404,115],{"class":108},[84,13406,119],{"class":118},[84,13408,13409],{"class":86,"line":122},[84,13410,126],{"emptyLinePlaceholder":125},[84,13412,13413,13415,13417,13419,13421],{"class":86,"line":129},[84,13414,132],{"class":108},[84,13416,11767],{"class":135},[84,13418,139],{"class":108},[84,13420,142],{"class":98},[84,13422,11774],{"class":90},[84,13424,13425],{"class":86,"line":154},[84,13426,126],{"emptyLinePlaceholder":125},[84,13428,13429,13431,13433,13435],{"class":86,"line":159},[84,13430,1299],{"class":108},[84,13432,421],{"class":108},[84,13434,11787],{"class":98},[84,13436,1307],{"class":90},[84,13438,13439,13441,13443,13445,13447,13449,13451,13453,13455,13457,13459,13461,13463,13465,13467],{"class":86,"line":178},[84,13440,11814],{"class":90},[84,13442,184],{"class":108},[84,13444,1319],{"class":108},[84,13446,1322],{"class":98},[84,13448,145],{"class":90},[84,13450,11807],{"class":118},[84,13452,2686],{"class":90},[84,13454,12995],{"class":98},[84,13456,3120],{"class":90},[84,13458,13000],{"class":429},[84,13460,3126],{"class":90},[84,13462,172],{"class":108},[84,13464,13007],{"class":90},[84,13466,1391],{"class":98},[84,13468,3054],{"class":90},[84,13470,13471],{"class":86,"line":190},[84,13472,193],{"class":90},[84,13474,13475],{"class":86,"line":196},[84,13476,126],{"emptyLinePlaceholder":125},[84,13478,13479],{"class":86,"line":201},[84,13480,13482],{"class":13481},"sJ8bj","\u002F\u002F Se ejecuta durante setup (fase de creación)\n",[84,13484,13485,13487],{"class":86,"line":217},[84,13486,11838],{"class":98},[84,13488,635],{"class":90},[84,13490,13491,13493,13495],{"class":86,"line":227},[84,13492,274],{"class":90},[84,13494,95],{"class":94},[84,13496,102],{"class":90},[84,13498,13499],{"class":86,"line":232},[84,13500,126],{"emptyLinePlaceholder":125},[84,13502,13503,13505,13507],{"class":86,"line":237},[84,13504,91],{"class":90},[84,13506,291],{"class":94},[84,13508,102],{"class":90},[84,13510,13511,13513,13515],{"class":86,"line":253},[84,13512,299],{"class":90},[84,13514,737],{"class":94},[84,13516,102],{"class":90},[84,13518,13519,13521,13523,13526,13528,13531,13533,13535,13538],{"class":86,"line":266},[84,13520,1642],{"class":90},[84,13522,740],{"class":94},[84,13524,13525],{"class":98}," v-for",[84,13527,184],{"class":90},[84,13529,13530],{"class":118},"\"user in users\"",[84,13532,5092],{"class":98},[84,13534,184],{"class":90},[84,13536,13537],{"class":118},"\"user.id\"",[84,13539,102],{"class":90},[84,13541,13542],{"class":86,"line":271},[84,13543,13544],{"class":90},"      {{ user.name }}\n",[84,13546,13547,13549,13551],{"class":86,"line":281},[84,13548,1734],{"class":90},[84,13550,740],{"class":94},[84,13552,102],{"class":90},[84,13554,13555,13557,13559],{"class":86,"line":286},[84,13556,324],{"class":90},[84,13558,737],{"class":94},[84,13560,102],{"class":90},[84,13562,13563,13565,13567],{"class":86,"line":296},[84,13564,274],{"class":90},[84,13566,291],{"class":94},[84,13568,102],{"class":90},[74,13570,13572],{"className":76,"code":13571,"filename":1782,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      users: []\n    }\n  },\n  async created() {\n    this.users = await fetch('\u002Fapi\u002Fusers').then((r) => r.json())\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cul>\n    \u003Cli v-for=\"user in users\" :key=\"user.id\">\n      {{ user.name }}\n    \u003C\u002Fli>\n  \u003C\u002Ful>\n\u003C\u002Ftemplate>\n",[22,13573,13574,13582,13590,13596,13602,13606,13610,13614,13622,13656,13660,13664,13672,13676,13684,13692,13712,13716,13724,13732],{"__ignoreMap":80},[84,13575,13576,13578,13580],{"class":86,"line":87},[84,13577,91],{"class":90},[84,13579,95],{"class":94},[84,13581,102],{"class":90},[84,13583,13584,13586,13588],{"class":86,"line":105},[84,13585,418],{"class":108},[84,13587,1870],{"class":108},[84,13589,175],{"class":90},[84,13591,13592,13594],{"class":86,"line":122},[84,13593,1896],{"class":98},[84,13595,1307],{"class":90},[84,13597,13598,13600],{"class":86,"line":129},[84,13599,1903],{"class":108},[84,13601,175],{"class":90},[84,13603,13604],{"class":86,"line":154},[84,13605,12954],{"class":90},[84,13607,13608],{"class":86,"line":159},[84,13609,1936],{"class":90},[84,13611,13612],{"class":86,"line":178},[84,13613,1941],{"class":90},[84,13615,13616,13618,13620],{"class":86,"line":190},[84,13617,2058],{"class":108},[84,13619,12970],{"class":98},[84,13621,1307],{"class":90},[84,13623,13624,13626,13628,13630,13632,13634,13636,13638,13640,13642,13644,13646,13648,13650,13652,13654],{"class":86,"line":196},[84,13625,5499],{"class":135},[84,13627,12980],{"class":90},[84,13629,184],{"class":108},[84,13631,1319],{"class":108},[84,13633,1322],{"class":98},[84,13635,145],{"class":90},[84,13637,11807],{"class":118},[84,13639,2686],{"class":90},[84,13641,12995],{"class":98},[84,13643,3120],{"class":90},[84,13645,13000],{"class":429},[84,13647,3126],{"class":90},[84,13649,172],{"class":108},[84,13651,13007],{"class":90},[84,13653,1391],{"class":98},[84,13655,3054],{"class":90},[84,13657,13658],{"class":86,"line":201},[84,13659,485],{"class":90},[84,13661,13662],{"class":86,"line":217},[84,13663,193],{"class":90},[84,13665,13666,13668,13670],{"class":86,"line":227},[84,13667,274],{"class":90},[84,13669,95],{"class":94},[84,13671,102],{"class":90},[84,13673,13674],{"class":86,"line":232},[84,13675,126],{"emptyLinePlaceholder":125},[84,13677,13678,13680,13682],{"class":86,"line":237},[84,13679,91],{"class":90},[84,13681,291],{"class":94},[84,13683,102],{"class":90},[84,13685,13686,13688,13690],{"class":86,"line":253},[84,13687,299],{"class":90},[84,13689,737],{"class":94},[84,13691,102],{"class":90},[84,13693,13694,13696,13698,13700,13702,13704,13706,13708,13710],{"class":86,"line":266},[84,13695,1642],{"class":90},[84,13697,740],{"class":94},[84,13699,13525],{"class":98},[84,13701,184],{"class":90},[84,13703,13530],{"class":118},[84,13705,5092],{"class":98},[84,13707,184],{"class":90},[84,13709,13537],{"class":118},[84,13711,102],{"class":90},[84,13713,13714],{"class":86,"line":271},[84,13715,13544],{"class":90},[84,13717,13718,13720,13722],{"class":86,"line":281},[84,13719,1734],{"class":90},[84,13721,740],{"class":94},[84,13723,102],{"class":90},[84,13725,13726,13728,13730],{"class":86,"line":286},[84,13727,324],{"class":90},[84,13729,737],{"class":94},[84,13731,102],{"class":90},[84,13733,13734,13736,13738],{"class":86,"line":296},[84,13735,274],{"class":90},[84,13737,291],{"class":94},[84,13739,102],{"class":90},[34,13741,13743],{"id":13742},"cierre","Cierre",[737,13745,13746,13755,13767],{},[740,13747,13748,13749,13754],{},"En componentes modernos basados en Vue 3, ",[958,13750,13751,13753],{},[22,13752,11480],{}," suele ser el punto de entrada más claro y consistente"," para inicializar estado y lógica.",[740,13756,13757,13758,13760,13761,13766],{},"Si trabajas en componentes escritos con ",[958,13759,1782],{},", el hook ",[958,13762,13763,13765],{},[22,13764,12680],{}," sigue siendo completamente válido"," para inicialización que no depende del DOM.",[740,13768,13769,13770,13775],{},"En cambio, ",[958,13771,13772,13774],{},[22,13773,12677],{}," ha quedado como una pieza más histórica que práctica"," en la mayoría de proyectos actuales.",[835,13777,13778],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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 .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}",{"title":80,"searchDepth":105,"depth":105,"links":13780},[13781,13782,13784,13786,13788,13790,13797,13798],{"id":12709,"depth":105,"text":12710},{"id":12779,"depth":105,"text":13783},"beforeCreate: cuándo aparece y por qué casi no se usa",{"id":12885,"depth":105,"text":13785},"created: el punto útil en Options API",{"id":13031,"depth":105,"text":13787},"setup: el arranque natural en Vue 3",{"id":13230,"depth":105,"text":13789},"Comparación rápida: beforeCreate vs created vs setup",{"id":13305,"depth":105,"text":13306,"children":13791},[13792,13794,13796],{"id":13309,"depth":122,"text":13793},"1) Intentar manipular el DOM en created o al inicio de setup",{"id":13342,"depth":122,"text":13795},"2) Usar beforeCreate por costumbre",{"id":13362,"depth":122,"text":13363},{"id":13373,"depth":105,"text":13374},{"id":13742,"depth":105,"text":13743},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1773284254\u002Fvue-lifecycle-creation-phase-beforecreate-created-setup_fkkyiw.png","Ilustración de un ciclo de vida de un componente Vue, destacando la fase de creación con beforeCreate, created y setup","2026-03-07","Qué pasa realmente en la fase de creación de un componente Vue y cómo decidir entre beforeCreate, created y setup.",{"updatedAt":13804,"coverCaption":13805,"author":868,"keywords":13806},"2026-03-06T20:00:00-05:00","En esta imagen se muestra el ciclo de vida de un componente Vue, con énfasis en la fase de creación donde se ejecutan los hooks beforeCreate, created y setup.",[870,12677,12680,11480,873],"\u002Fblog\u002Fvue-lifecycle-creation-phase-beforecreate-created-setup.es",[13809],{"headline":12668,"author":13810,"datePublished":13804,"@type":880},{"name":868,"@type":879},{"title":12668,"description":13802},"blog\u002Fvue-lifecycle-creation-phase-beforecreate-created-setup.es",[13814,13815,13816,13817],{"tag":2453,"color":2454},{"tag":888,"color":889},{"tag":3945,"color":3946},{"tag":894,"color":895},"gD0R9mljoBWBraFYutY3GdOI6IFtdYK-ul1RE0pCfVo",{"id":13820,"title":13821,"body":13822,"cover":16412,"coverAlt":13821,"date":16413,"description":16414,"draft":852,"extension":853,"lab":882,"locale":864,"meta":16415,"navigation":125,"path":16421,"schemaOrg":16422,"seo":16425,"series":2447,"seriesDescription":2448,"seriesOrder":87,"seriesTitle":2449,"slug":882,"stem":16426,"tags":16427,"__hash__":16432},"blog\u002Fblog\u002Fvue-lifecycle-hooks-overview.es.md","Ciclos de vida en Vue: Una visión general",{"type":8,"value":13823,"toc":16381},[13824,13828,13830,13841,13843,13849,13871,13874,13892,13899,13903,13906,13950,13954,13964,13967,13972,13978,14036,14047,14051,14057,14060,14071,14174,14182,14186,14192,14195,14207,14279,14286,14290,14295,14298,14309,14316,14321,14324,14391,14449,14456,14461,14467,14470,14484,14551,14609,14613,14619,14622,14629,14634,14637,14704,14762,14769,14774,14777,14784,14851,14909,14913,14916,14922,14929,14934,15001,15059,15066,15071,15074,15085,15211,15318,15324,15333,15340,15346,15413,15471,15478,15483,15550,15607,15610,15617,15623,15700,15767,15771,15777,15780,15785,15791,15864,15925,15930,15936,16007,16068,16072,16079,16085,16088,16159,16218,16222,16226,16257,16260,16282,16289,16291,16297,16370,16378],[11,13825,13827],{"id":13826},"ciclos-de-vida-en-vue-guía-práctica-y-cuándo-usar-cada-hook","Ciclos de vida en Vue: guía práctica y cuándo usar cada hook",[34,13829,921],{"id":920},[15,13831,13832,13833,13836,13837,13840],{},"Entender el ",[958,13834,13835],{},"ciclo de vida de un componente"," te permite saber exactamente ",[958,13838,13839],{},"cuándo ejecutar cada tipo de lógica",": inicialización, acceso al DOM, sincronización con API, limpieza de efectos secundarios o depuración.",[11,13842,947],{"id":946},[15,13844,13845,13846,13848],{},"Un componente en ",[958,13847,871],{}," atraviesa varias fases:",[10842,13850,13851,13856,13861,13866],{},[740,13852,13853],{},[958,13854,13855],{},"Creación",[740,13857,13858],{},[958,13859,13860],{},"Montaje",[740,13862,13863],{},[958,13864,13865],{},"Actualización",[740,13867,13868],{},[958,13869,13870],{},"Desmontaje",[15,13872,13873],{},"Además, existen hooks especiales para:",[737,13875,13876,13881,13884,13887],{},[740,13877,13878,13879],{},"Componentes cacheados con ",[22,13880,5945],{},[740,13882,13883],{},"Manejo de errores",[740,13885,13886],{},"Depuración del sistema reactivo",[740,13888,13889],{},[958,13890,13891],{},"SSR (Server-Side Rendering)",[15,13893,13894,13895,13898],{},"En las siguientes secciones veremos ",[958,13896,13897],{},"cuándo se ejecuta cada hook y para qué sirve",", con ejemplos.",[34,13900,13902],{"id":13901},"mapa-de-la-serie","Mapa de la serie",[15,13904,13905],{},"Si quieres profundizar en cada grupo de hooks, aquí tienes la ruta completa de esta serie:",[737,13907,13908,13914,13919,13924,13929,13935,13940,13945],{},[740,13909,13910],{},[13911,13912,12668],"a",{"href":13913},"\u002Fblog\u002Fvue-lifecycle-creation-phase-beforecreate-created-setup.es\u002F",[740,13915,13916],{},[13911,13917,11408],{"href":13918},"\u002Fblog\u002Fvue-lifecycle-mounting-phase-beforemount-mounted.es\u002F",[740,13920,13921],{},[13911,13922,9832],{"href":13923},"\u002Fblog\u002Fvue-lifecycle-update-phase-beforeupdate-updated.es\u002F",[740,13925,13926],{},[13911,13927,8266],{"href":13928},"\u002Fblog\u002Fvue-lifecycle-unmounting-phase-beforeunmount-unmounted.es\u002F",[740,13930,13931],{},[13911,13932,13934],{"href":13933},"\u002Fblog\u002Fvue-lifecycle-keepalive-activated-deactivated.es\u002F","Ciclos de vida en Vue: componentes cacheados con KeepAlive (activated, deactivated)",[740,13936,13937],{},[13911,13938,3951],{"href":13939},"\u002Fblog\u002Fvue-lifecycle-error-handling-errorcaptured.es\u002F",[740,13941,13942],{},[13911,13943,2467],{"href":13944},"\u002Fblog\u002Fvue-lifecycle-render-debug-rendertracked-rendertriggered.es\u002F",[740,13946,13947],{},[13911,13948,899],{"href":13949},"\u002Fblog\u002Fvue-lifecycle-ssr-serverprefetch.es\u002F",[11,13951,13953],{"id":13952},"creación-del-componente","Creación del componente",[15,13955,13956,13957,13960,13961,764],{},"En esta fase Vue ",[958,13958,13959],{},"crea la instancia del componente y configura la reactividad",", pero ",[958,13962,13963],{},"todavía no existe el DOM",[15,13965,13966],{},"Aquí normalmente se inicializa estado, configuración o llamadas iniciales.",[34,13968,13970],{"id":13969},"beforecreate",[22,13971,12677],{},[15,13973,13974,13975,764],{},"Se ejecuta ",[958,13976,13977],{},"antes de que Vue configure la reactividad",[74,13979,13982],{"className":76,"code":13980,"filename":10092,"highlights":13981,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  beforeCreate() {\n    console.log('El componente está iniciando')\n  }\n}\n\u003C\u002Fscript>\n",[122],[22,13983,13984,13992,14000,14007,14020,14024,14028],{"__ignoreMap":80},[84,13985,13986,13988,13990],{"class":86,"line":87},[84,13987,91],{"class":90},[84,13989,95],{"class":94},[84,13991,102],{"class":90},[84,13993,13994,13996,13998],{"class":86,"line":105},[84,13995,418],{"class":108},[84,13997,1870],{"class":108},[84,13999,175],{"class":90},[84,14001,14003,14005],{"class":14002,"line":122},[86,10151],[84,14004,12849],{"class":98},[84,14006,1307],{"class":90},[84,14008,14009,14011,14013,14015,14018],{"class":86,"line":129},[84,14010,3666],{"class":90},[84,14012,3138],{"class":98},[84,14014,145],{"class":90},[84,14016,14017],{"class":118},"'El componente está iniciando'",[84,14019,151],{"class":90},[84,14021,14022],{"class":86,"line":154},[84,14023,485],{"class":90},[84,14025,14026],{"class":86,"line":159},[84,14027,193],{"class":90},[84,14029,14030,14032,14034],{"class":86,"line":178},[84,14031,274],{"class":90},[84,14033,95],{"class":94},[84,14035,102],{"class":90},[823,14037,14038],{},[15,14039,14040,14041,14043,14044,14046],{},"No es posible usar ",[22,14042,12677],{}," en Composition API, ya que ",[22,14045,4013],{}," se ejecuta antes de cualquier otro hook.",[34,14048,14049],{"id":12680},[22,14050,12680],{},[15,14052,14053,14054,764],{},"El estado reactivo ya está disponible, pero ",[958,14055,14056],{},"el DOM aún no existe",[15,14058,14059],{},"Se suele usar para:",[737,14061,14062,14065,14068],{},[740,14063,14064],{},"Llamadas HTTP",[740,14066,14067],{},"Inicializar estado",[740,14069,14070],{},"Preparar lógica de negocio",[74,14072,14075],{"className":76,"code":14073,"filename":10092,"highlights":14074,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      users: []\n    }\n  },\n  async created() {\n    this.users = await fetch('\u002Fapi\u002Fusers').then(r => r.json())\n  }\n}\n\u003C\u002Fscript>\n",[190],[22,14076,14077,14085,14093,14099,14105,14109,14113,14117,14126,14158,14162,14166],{"__ignoreMap":80},[84,14078,14079,14081,14083],{"class":86,"line":87},[84,14080,91],{"class":90},[84,14082,95],{"class":94},[84,14084,102],{"class":90},[84,14086,14087,14089,14091],{"class":86,"line":105},[84,14088,418],{"class":108},[84,14090,1870],{"class":108},[84,14092,175],{"class":90},[84,14094,14095,14097],{"class":86,"line":122},[84,14096,1896],{"class":98},[84,14098,1307],{"class":90},[84,14100,14101,14103],{"class":86,"line":129},[84,14102,1903],{"class":108},[84,14104,175],{"class":90},[84,14106,14107],{"class":86,"line":154},[84,14108,12954],{"class":90},[84,14110,14111],{"class":86,"line":159},[84,14112,1936],{"class":90},[84,14114,14115],{"class":86,"line":178},[84,14116,1941],{"class":90},[84,14118,14120,14122,14124],{"class":14119,"line":190},[86,10151],[84,14121,2058],{"class":108},[84,14123,12970],{"class":98},[84,14125,1307],{"class":90},[84,14127,14128,14130,14132,14134,14136,14138,14140,14142,14144,14146,14148,14150,14152,14154,14156],{"class":86,"line":196},[84,14129,5499],{"class":135},[84,14131,12980],{"class":90},[84,14133,184],{"class":108},[84,14135,1319],{"class":108},[84,14137,1322],{"class":98},[84,14139,145],{"class":90},[84,14141,11807],{"class":118},[84,14143,2686],{"class":90},[84,14145,12995],{"class":98},[84,14147,145],{"class":90},[84,14149,13000],{"class":429},[84,14151,3014],{"class":108},[84,14153,13007],{"class":90},[84,14155,1391],{"class":98},[84,14157,3054],{"class":90},[84,14159,14160],{"class":86,"line":201},[84,14161,485],{"class":90},[84,14163,14164],{"class":86,"line":217},[84,14165,193],{"class":90},[84,14167,14168,14170,14172],{"class":86,"line":227},[84,14169,274],{"class":90},[84,14171,95],{"class":94},[84,14173,102],{"class":90},[823,14175,14176],{},[15,14177,14040,14178,14043,14180,14046],{},[22,14179,12680],{},[22,14181,4013],{},[34,14183,14184],{"id":11480},[22,14185,4013],{},[15,14187,14188,14189,764],{},"Es el ",[958,14190,14191],{},"punto de entrada principal en Composition API",[15,14193,14194],{},"Aquí se define:",[737,14196,14197,14200,14202,14204],{},[740,14198,14199],{},"Estado reactivo",[740,14201,872],{},[740,14203,4016],{},[740,14205,14206],{},"Lógica inicial del componente",[74,14208,14211],{"className":76,"code":14209,"filename":10092,"highlights":14210,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst count = ref(0)\n\nconsole.log('Setup ejecutado')\n\u003C\u002Fscript>\n",[87],[22,14212,14213,14224,14234,14238,14254,14258,14271],{"__ignoreMap":80},[84,14214,14216,14218,14220,14222],{"class":14215,"line":87},[86,10151],[84,14217,91],{"class":90},[84,14219,95],{"class":94},[84,14221,99],{"class":98},[84,14223,102],{"class":90},[84,14225,14226,14228,14230,14232],{"class":86,"line":105},[84,14227,109],{"class":108},[84,14229,112],{"class":90},[84,14231,115],{"class":108},[84,14233,119],{"class":118},[84,14235,14236],{"class":86,"line":122},[84,14237,126],{"emptyLinePlaceholder":125},[84,14239,14240,14242,14244,14246,14248,14250,14252],{"class":86,"line":129},[84,14241,132],{"class":108},[84,14243,10133],{"class":135},[84,14245,139],{"class":108},[84,14247,142],{"class":98},[84,14249,145],{"class":90},[84,14251,4320],{"class":135},[84,14253,151],{"class":90},[84,14255,14256],{"class":86,"line":154},[84,14257,126],{"emptyLinePlaceholder":125},[84,14259,14260,14262,14264,14266,14269],{"class":86,"line":159},[84,14261,13162],{"class":90},[84,14263,3138],{"class":98},[84,14265,145],{"class":90},[84,14267,14268],{"class":118},"'Setup ejecutado'",[84,14270,151],{"class":90},[84,14272,14273,14275,14277],{"class":86,"line":178},[84,14274,274],{"class":90},[84,14276,95],{"class":94},[84,14278,102],{"class":90},[823,14280,14281],{},[15,14282,14040,14283,14285],{},[22,14284,4013],{}," en Options API, ya que es exclusivo de Composition API.",[11,14287,14289],{"id":14288},"montaje-del-componente","Montaje del componente",[15,14291,13956,14292,764],{},[958,14293,14294],{},"crea e inserta el DOM del componente",[15,14296,14297],{},"Aquí ya es seguro usar:",[737,14299,14300,14303,14306],{},[740,14301,14302],{},"API del navegador",[740,14304,14305],{},"Librerías externas",[740,14307,14308],{},"Manipulación del DOM",[34,14310,14312,6014,14314],{"id":14311},"onbeforemount-beforemount",[22,14313,12181],{},[22,14315,11417],{},[15,14317,13974,14318,764],{},[958,14319,14320],{},"justo antes de insertar el DOM en la página",[15,14322,14323],{},"No es muy común usarlo, pero puede servir para lógica previa al render final.",[74,14325,14328],{"className":76,"code":14326,"filename":873,"highlights":14327,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { onBeforeMount } from 'vue'\n\nonBeforeMount(() => {\n  console.log('El componente está por montarse')\n})\n\u003C\u002Fscript>\n",[129],[22,14329,14330,14340,14351,14355,14366,14379,14383],{"__ignoreMap":80},[84,14331,14332,14334,14336,14338],{"class":86,"line":87},[84,14333,91],{"class":90},[84,14335,95],{"class":94},[84,14337,99],{"class":98},[84,14339,102],{"class":90},[84,14341,14342,14344,14347,14349],{"class":86,"line":105},[84,14343,109],{"class":108},[84,14345,14346],{"class":90}," { onBeforeMount } ",[84,14348,115],{"class":108},[84,14350,119],{"class":118},[84,14352,14353],{"class":86,"line":122},[84,14354,126],{"emptyLinePlaceholder":125},[84,14356,14358,14360,14362,14364],{"class":14357,"line":129},[86,10151],[84,14359,12181],{"class":98},[84,14361,2992],{"class":90},[84,14363,172],{"class":108},[84,14365,175],{"class":90},[84,14367,14368,14370,14372,14374,14377],{"class":86,"line":154},[84,14369,3135],{"class":90},[84,14371,3138],{"class":98},[84,14373,145],{"class":90},[84,14375,14376],{"class":118},"'El componente está por montarse'",[84,14378,151],{"class":90},[84,14380,14381],{"class":86,"line":159},[84,14382,1492],{"class":90},[84,14384,14385,14387,14389],{"class":86,"line":178},[84,14386,274],{"class":90},[84,14388,95],{"class":94},[84,14390,102],{"class":90},[74,14392,14395],{"className":76,"code":14393,"filename":1782,"highlights":14394,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  beforeMount() {\n    console.log('Antes de montar el componente')\n  }\n}\n\u003C\u002Fscript>\n",[122],[22,14396,14397,14405,14413,14420,14433,14437,14441],{"__ignoreMap":80},[84,14398,14399,14401,14403],{"class":86,"line":87},[84,14400,91],{"class":90},[84,14402,95],{"class":94},[84,14404,102],{"class":90},[84,14406,14407,14409,14411],{"class":86,"line":105},[84,14408,418],{"class":108},[84,14410,1870],{"class":108},[84,14412,175],{"class":90},[84,14414,14416,14418],{"class":14415,"line":122},[86,10151],[84,14417,12401],{"class":98},[84,14419,1307],{"class":90},[84,14421,14422,14424,14426,14428,14431],{"class":86,"line":129},[84,14423,3666],{"class":90},[84,14425,3138],{"class":98},[84,14427,145],{"class":90},[84,14429,14430],{"class":118},"'Antes de montar el componente'",[84,14432,151],{"class":90},[84,14434,14435],{"class":86,"line":154},[84,14436,485],{"class":90},[84,14438,14439],{"class":86,"line":159},[84,14440,193],{"class":90},[84,14442,14443,14445,14447],{"class":86,"line":178},[84,14444,274],{"class":90},[84,14446,95],{"class":94},[84,14448,102],{"class":90},[34,14450,14452,6014,14454],{"id":14451},"onmounted-mounted",[22,14453,1503],{},[22,14455,1085],{},[15,14457,13974,14458,764],{},[958,14459,14460],{},"después de que el componente fue insertado en el DOM",[15,14462,14463,14464,764],{},"Este es uno de los hooks ",[958,14465,14466],{},"más usados",[15,14468,14469],{},"Usos típicos:",[737,14471,14472,14475,14478,14481],{},[740,14473,14474],{},"Inicializar charts",[740,14476,14477],{},"Registrar listeners",[740,14479,14480],{},"Enfocar inputs",[740,14482,14483],{},"Integrar librerías externas",[74,14485,14488],{"className":76,"code":14486,"filename":873,"highlights":14487,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { onMounted } from 'vue'\n\nonMounted(() => {\n  console.log('Componente montado en el DOM')\n})\n\u003C\u002Fscript>\n",[129],[22,14489,14490,14500,14511,14515,14526,14539,14543],{"__ignoreMap":80},[84,14491,14492,14494,14496,14498],{"class":86,"line":87},[84,14493,91],{"class":90},[84,14495,95],{"class":94},[84,14497,99],{"class":98},[84,14499,102],{"class":90},[84,14501,14502,14504,14507,14509],{"class":86,"line":105},[84,14503,109],{"class":108},[84,14505,14506],{"class":90}," { onMounted } ",[84,14508,115],{"class":108},[84,14510,119],{"class":118},[84,14512,14513],{"class":86,"line":122},[84,14514,126],{"emptyLinePlaceholder":125},[84,14516,14518,14520,14522,14524],{"class":14517,"line":129},[86,10151],[84,14519,1503],{"class":98},[84,14521,2992],{"class":90},[84,14523,172],{"class":108},[84,14525,175],{"class":90},[84,14527,14528,14530,14532,14534,14537],{"class":86,"line":154},[84,14529,3135],{"class":90},[84,14531,3138],{"class":98},[84,14533,145],{"class":90},[84,14535,14536],{"class":118},"'Componente montado en el DOM'",[84,14538,151],{"class":90},[84,14540,14541],{"class":86,"line":159},[84,14542,1492],{"class":90},[84,14544,14545,14547,14549],{"class":86,"line":178},[84,14546,274],{"class":90},[84,14548,95],{"class":94},[84,14550,102],{"class":90},[74,14552,14555],{"className":76,"code":14553,"filename":1782,"highlights":14554,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  mounted() {\n    console.log('Componente montado')\n  }\n}\n\u003C\u002Fscript>\n",[122],[22,14556,14557,14565,14573,14580,14593,14597,14601],{"__ignoreMap":80},[84,14558,14559,14561,14563],{"class":86,"line":87},[84,14560,91],{"class":90},[84,14562,95],{"class":94},[84,14564,102],{"class":90},[84,14566,14567,14569,14571],{"class":86,"line":105},[84,14568,418],{"class":108},[84,14570,1870],{"class":108},[84,14572,175],{"class":90},[84,14574,14576,14578],{"class":14575,"line":122},[86,10151],[84,14577,7551],{"class":98},[84,14579,1307],{"class":90},[84,14581,14582,14584,14586,14588,14591],{"class":86,"line":129},[84,14583,3666],{"class":90},[84,14585,3138],{"class":98},[84,14587,145],{"class":90},[84,14589,14590],{"class":118},"'Componente montado'",[84,14592,151],{"class":90},[84,14594,14595],{"class":86,"line":154},[84,14596,485],{"class":90},[84,14598,14599],{"class":86,"line":159},[84,14600,193],{"class":90},[84,14602,14603,14605,14607],{"class":86,"line":178},[84,14604,274],{"class":90},[84,14606,95],{"class":94},[84,14608,102],{"class":90},[11,14610,14612],{"id":14611},"actualización-del-componente","Actualización del componente",[15,14614,14615,14616,764],{},"Cuando cambia el estado reactivo, Vue ",[958,14617,14618],{},"vuelve a renderizar el componente",[15,14620,14621],{},"Estos hooks permiten reaccionar antes o después de que el DOM cambie.",[34,14623,14625,6014,14627],{"id":14624},"onbeforeupdate-beforeupdate",[22,14626,10319],{},[22,14628,9841],{},[15,14630,13974,14631,764],{},[958,14632,14633],{},"antes de que Vue actualice el DOM",[15,14635,14636],{},"Puede usarse para inspeccionar el estado previo.",[74,14638,14641],{"className":76,"code":14639,"filename":873,"highlights":14640,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { onBeforeUpdate } from 'vue'\n\nonBeforeUpdate(() => {\n  console.log('Antes de actualizar el DOM')\n})\n\u003C\u002Fscript>\n",[129],[22,14642,14643,14653,14664,14668,14679,14692,14696],{"__ignoreMap":80},[84,14644,14645,14647,14649,14651],{"class":86,"line":87},[84,14646,91],{"class":90},[84,14648,95],{"class":94},[84,14650,99],{"class":98},[84,14652,102],{"class":90},[84,14654,14655,14657,14660,14662],{"class":86,"line":105},[84,14656,109],{"class":108},[84,14658,14659],{"class":90}," { onBeforeUpdate } ",[84,14661,115],{"class":108},[84,14663,119],{"class":118},[84,14665,14666],{"class":86,"line":122},[84,14667,126],{"emptyLinePlaceholder":125},[84,14669,14671,14673,14675,14677],{"class":14670,"line":129},[86,10151],[84,14672,10319],{"class":98},[84,14674,2992],{"class":90},[84,14676,172],{"class":108},[84,14678,175],{"class":90},[84,14680,14681,14683,14685,14687,14690],{"class":86,"line":154},[84,14682,3135],{"class":90},[84,14684,3138],{"class":98},[84,14686,145],{"class":90},[84,14688,14689],{"class":118},"'Antes de actualizar el DOM'",[84,14691,151],{"class":90},[84,14693,14694],{"class":86,"line":159},[84,14695,1492],{"class":90},[84,14697,14698,14700,14702],{"class":86,"line":178},[84,14699,274],{"class":90},[84,14701,95],{"class":94},[84,14703,102],{"class":90},[74,14705,14708],{"className":76,"code":14706,"filename":1782,"highlights":14707,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  beforeUpdate() {\n    console.log('Antes del update')\n  }\n}\n\u003C\u002Fscript>\n",[122],[22,14709,14710,14718,14726,14733,14746,14750,14754],{"__ignoreMap":80},[84,14711,14712,14714,14716],{"class":86,"line":87},[84,14713,91],{"class":90},[84,14715,95],{"class":94},[84,14717,102],{"class":90},[84,14719,14720,14722,14724],{"class":86,"line":105},[84,14721,418],{"class":108},[84,14723,1870],{"class":108},[84,14725,175],{"class":90},[84,14727,14729,14731],{"class":14728,"line":122},[86,10151],[84,14730,11021],{"class":98},[84,14732,1307],{"class":90},[84,14734,14735,14737,14739,14741,14744],{"class":86,"line":129},[84,14736,3666],{"class":90},[84,14738,3138],{"class":98},[84,14740,145],{"class":90},[84,14742,14743],{"class":118},"'Antes del update'",[84,14745,151],{"class":90},[84,14747,14748],{"class":86,"line":154},[84,14749,485],{"class":90},[84,14751,14752],{"class":86,"line":159},[84,14753,193],{"class":90},[84,14755,14756,14758,14760],{"class":86,"line":178},[84,14757,274],{"class":90},[84,14759,95],{"class":94},[84,14761,102],{"class":90},[34,14763,14765,6014,14767],{"id":14764},"onupdated-updated",[22,14766,10154],{},[22,14768,9844],{},[15,14770,13974,14771,764],{},[958,14772,14773],{},"después de que Vue actualiza el DOM",[15,14775,14776],{},"Útil cuando necesitas medir o interactuar con el DOM actualizado.",[823,14778,14779],{},[15,14780,14781,14782,764],{},"⚠️ No debe usarse como reemplazo de ",[22,14783,2526],{},[74,14785,14788],{"className":76,"code":14786,"filename":873,"highlights":14787,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { onUpdated } from 'vue'\n\nonUpdated(() => {\n  console.log('El DOM ya fue actualizado')\n})\n\u003C\u002Fscript>\n",[129],[22,14789,14790,14800,14811,14815,14826,14839,14843],{"__ignoreMap":80},[84,14791,14792,14794,14796,14798],{"class":86,"line":87},[84,14793,91],{"class":90},[84,14795,95],{"class":94},[84,14797,99],{"class":98},[84,14799,102],{"class":90},[84,14801,14802,14804,14807,14809],{"class":86,"line":105},[84,14803,109],{"class":108},[84,14805,14806],{"class":90}," { onUpdated } ",[84,14808,115],{"class":108},[84,14810,119],{"class":118},[84,14812,14813],{"class":86,"line":122},[84,14814,126],{"emptyLinePlaceholder":125},[84,14816,14818,14820,14822,14824],{"class":14817,"line":129},[86,10151],[84,14819,10154],{"class":98},[84,14821,2992],{"class":90},[84,14823,172],{"class":108},[84,14825,175],{"class":90},[84,14827,14828,14830,14832,14834,14837],{"class":86,"line":154},[84,14829,3135],{"class":90},[84,14831,3138],{"class":98},[84,14833,145],{"class":90},[84,14835,14836],{"class":118},"'El DOM ya fue actualizado'",[84,14838,151],{"class":90},[84,14840,14841],{"class":86,"line":159},[84,14842,1492],{"class":90},[84,14844,14845,14847,14849],{"class":86,"line":178},[84,14846,274],{"class":90},[84,14848,95],{"class":94},[84,14850,102],{"class":90},[74,14852,14855],{"className":76,"code":14853,"filename":1782,"highlights":14854,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  updated() {\n    console.log('DOM actualizado')\n  }\n}\n\u003C\u002Fscript>\n",[122],[22,14856,14857,14865,14873,14880,14893,14897,14901],{"__ignoreMap":80},[84,14858,14859,14861,14863],{"class":86,"line":87},[84,14860,91],{"class":90},[84,14862,95],{"class":94},[84,14864,102],{"class":90},[84,14866,14867,14869,14871],{"class":86,"line":105},[84,14868,418],{"class":108},[84,14870,1870],{"class":108},[84,14872,175],{"class":90},[84,14874,14876,14878],{"class":14875,"line":122},[86,10151],[84,14877,11072],{"class":98},[84,14879,1307],{"class":90},[84,14881,14882,14884,14886,14888,14891],{"class":86,"line":129},[84,14883,3666],{"class":90},[84,14885,3138],{"class":98},[84,14887,145],{"class":90},[84,14889,14890],{"class":118},"'DOM actualizado'",[84,14892,151],{"class":90},[84,14894,14895],{"class":86,"line":154},[84,14896,485],{"class":90},[84,14898,14899],{"class":86,"line":159},[84,14900,193],{"class":90},[84,14902,14903,14905,14907],{"class":86,"line":178},[84,14904,274],{"class":90},[84,14906,95],{"class":94},[84,14908,102],{"class":90},[11,14910,14912],{"id":14911},"desmontaje-del-componente","Desmontaje del componente",[15,14914,14915],{},"Cuando un componente deja de existir, Vue ejecuta hooks de limpieza.",[15,14917,14918,14919,764],{},"Esto es ",[958,14920,14921],{},"clave para evitar fugas de memoria",[34,14923,14925,6014,14927],{"id":14924},"onbeforeunmount-beforeunmount",[22,14926,9056],{},[22,14928,8275],{},[15,14930,13974,14931,764],{},[958,14932,14933],{},"justo antes de destruir el componente",[74,14935,14938],{"className":76,"code":14936,"filename":873,"highlights":14937,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { onBeforeUnmount } from 'vue'\n\nonBeforeUnmount(() => {\n  console.log('El componente será destruido')\n})\n\u003C\u002Fscript>\n",[129],[22,14939,14940,14950,14961,14965,14976,14989,14993],{"__ignoreMap":80},[84,14941,14942,14944,14946,14948],{"class":86,"line":87},[84,14943,91],{"class":90},[84,14945,95],{"class":94},[84,14947,99],{"class":98},[84,14949,102],{"class":90},[84,14951,14952,14954,14957,14959],{"class":86,"line":105},[84,14953,109],{"class":108},[84,14955,14956],{"class":90}," { onBeforeUnmount } ",[84,14958,115],{"class":108},[84,14960,119],{"class":118},[84,14962,14963],{"class":86,"line":122},[84,14964,126],{"emptyLinePlaceholder":125},[84,14966,14968,14970,14972,14974],{"class":14967,"line":129},[86,10151],[84,14969,9056],{"class":98},[84,14971,2992],{"class":90},[84,14973,172],{"class":108},[84,14975,175],{"class":90},[84,14977,14978,14980,14982,14984,14987],{"class":86,"line":154},[84,14979,3135],{"class":90},[84,14981,3138],{"class":98},[84,14983,145],{"class":90},[84,14985,14986],{"class":118},"'El componente será destruido'",[84,14988,151],{"class":90},[84,14990,14991],{"class":86,"line":159},[84,14992,1492],{"class":90},[84,14994,14995,14997,14999],{"class":86,"line":178},[84,14996,274],{"class":90},[84,14998,95],{"class":94},[84,15000,102],{"class":90},[74,15002,15005],{"className":76,"code":15003,"filename":1782,"highlights":15004,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  beforeUnmount() {\n    console.log('Antes de desmontar')\n  }\n}\n\u003C\u002Fscript>\n",[122],[22,15006,15007,15015,15023,15030,15043,15047,15051],{"__ignoreMap":80},[84,15008,15009,15011,15013],{"class":86,"line":87},[84,15010,91],{"class":90},[84,15012,95],{"class":94},[84,15014,102],{"class":90},[84,15016,15017,15019,15021],{"class":86,"line":105},[84,15018,418],{"class":108},[84,15020,1870],{"class":108},[84,15022,175],{"class":90},[84,15024,15026,15028],{"class":15025,"line":122},[86,10151],[84,15027,9371],{"class":98},[84,15029,1307],{"class":90},[84,15031,15032,15034,15036,15038,15041],{"class":86,"line":129},[84,15033,3666],{"class":90},[84,15035,3138],{"class":98},[84,15037,145],{"class":90},[84,15039,15040],{"class":118},"'Antes de desmontar'",[84,15042,151],{"class":90},[84,15044,15045],{"class":86,"line":154},[84,15046,485],{"class":90},[84,15048,15049],{"class":86,"line":159},[84,15050,193],{"class":90},[84,15052,15053,15055,15057],{"class":86,"line":178},[84,15054,274],{"class":90},[84,15056,95],{"class":94},[84,15058,102],{"class":90},[34,15060,15062,6014,15064],{"id":15061},"onunmounted-unmounted",[22,15063,9110],{},[22,15065,6063],{},[15,15067,13974,15068,764],{},[958,15069,15070],{},"después de que el componente fue destruido",[15,15072,15073],{},"Ideal para limpiar:",[737,15075,15076,15079,15082],{},[740,15077,15078],{},"Timers",[740,15080,15081],{},"Sockets",[740,15083,15084],{},"Event listeners",[74,15086,15089],{"className":76,"code":15087,"filename":873,"highlights":15088,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { onMounted, onUnmounted } from 'vue'\n\nlet timer\n\nonMounted(() => {\n  timer = setInterval(() => {\n    console.log('tick')\n  }, 1000)\n})\n\nonUnmounted(() => {\n  clearInterval(timer)\n})\n\u003C\u002Fscript>\n",[159,227],[22,15090,15091,15101,15112,15116,15123,15127,15138,15153,15165,15173,15177,15181,15192,15199,15203],{"__ignoreMap":80},[84,15092,15093,15095,15097,15099],{"class":86,"line":87},[84,15094,91],{"class":90},[84,15096,95],{"class":94},[84,15098,99],{"class":98},[84,15100,102],{"class":90},[84,15102,15103,15105,15108,15110],{"class":86,"line":105},[84,15104,109],{"class":108},[84,15106,15107],{"class":90}," { onMounted, onUnmounted } ",[84,15109,115],{"class":108},[84,15111,119],{"class":118},[84,15113,15114],{"class":86,"line":122},[84,15115,126],{"emptyLinePlaceholder":125},[84,15117,15118,15120],{"class":86,"line":129},[84,15119,8751],{"class":108},[84,15121,15122],{"class":90}," timer\n",[84,15124,15125],{"class":86,"line":154},[84,15126,126],{"emptyLinePlaceholder":125},[84,15128,15130,15132,15134,15136],{"class":15129,"line":159},[86,10151],[84,15131,1503],{"class":98},[84,15133,2992],{"class":90},[84,15135,172],{"class":108},[84,15137,175],{"class":90},[84,15139,15140,15143,15145,15147,15149,15151],{"class":86,"line":178},[84,15141,15142],{"class":90},"  timer ",[84,15144,184],{"class":108},[84,15146,6868],{"class":98},[84,15148,2992],{"class":90},[84,15150,172],{"class":108},[84,15152,175],{"class":90},[84,15154,15155,15157,15159,15161,15163],{"class":86,"line":190},[84,15156,3666],{"class":90},[84,15158,3138],{"class":98},[84,15160,145],{"class":90},[84,15162,11985],{"class":118},[84,15164,151],{"class":90},[84,15166,15167,15169,15171],{"class":86,"line":196},[84,15168,6888],{"class":90},[84,15170,11994],{"class":135},[84,15172,151],{"class":90},[84,15174,15175],{"class":86,"line":201},[84,15176,1492],{"class":90},[84,15178,15179],{"class":86,"line":217},[84,15180,126],{"emptyLinePlaceholder":125},[84,15182,15184,15186,15188,15190],{"class":15183,"line":227},[86,10151],[84,15185,9110],{"class":98},[84,15187,2992],{"class":90},[84,15189,172],{"class":108},[84,15191,175],{"class":90},[84,15193,15194,15196],{"class":86,"line":232},[84,15195,6933],{"class":98},[84,15197,15198],{"class":90},"(timer)\n",[84,15200,15201],{"class":86,"line":237},[84,15202,1492],{"class":90},[84,15204,15205,15207,15209],{"class":86,"line":253},[84,15206,274],{"class":90},[84,15208,95],{"class":94},[84,15210,102],{"class":90},[74,15212,15215],{"className":76,"code":15213,"filename":1782,"highlights":15214,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  mounted() {\n    this.timer = setInterval(() => {\n      console.log('tick')\n    }, 1000)\n  },\n  unmounted() {\n    clearInterval(this.timer)\n  }\n}\n\u003C\u002Fscript>\n",[122,190],[22,15216,15217,15225,15233,15240,15257,15270,15279,15283,15290,15302,15306,15310],{"__ignoreMap":80},[84,15218,15219,15221,15223],{"class":86,"line":87},[84,15220,91],{"class":90},[84,15222,95],{"class":94},[84,15224,102],{"class":90},[84,15226,15227,15229,15231],{"class":86,"line":105},[84,15228,418],{"class":108},[84,15230,1870],{"class":108},[84,15232,175],{"class":90},[84,15234,15236,15238],{"class":15235,"line":122},[86,10151],[84,15237,7551],{"class":98},[84,15239,1307],{"class":90},[84,15241,15242,15244,15247,15249,15251,15253,15255],{"class":86,"line":129},[84,15243,5499],{"class":135},[84,15245,15246],{"class":90},".timer ",[84,15248,184],{"class":108},[84,15250,6868],{"class":98},[84,15252,2992],{"class":90},[84,15254,172],{"class":108},[84,15256,175],{"class":90},[84,15258,15259,15262,15264,15266,15268],{"class":86,"line":154},[84,15260,15261],{"class":90},"      console.",[84,15263,3138],{"class":98},[84,15265,145],{"class":90},[84,15267,11985],{"class":118},[84,15269,151],{"class":90},[84,15271,15272,15275,15277],{"class":86,"line":159},[84,15273,15274],{"class":90},"    }, ",[84,15276,11994],{"class":135},[84,15278,151],{"class":90},[84,15280,15281],{"class":86,"line":178},[84,15282,1941],{"class":90},[84,15284,15286,15288],{"class":15285,"line":190},[86,10151],[84,15287,9429],{"class":98},[84,15289,1307],{"class":90},[84,15291,15292,15295,15297,15299],{"class":86,"line":196},[84,15293,15294],{"class":98},"    clearInterval",[84,15296,145],{"class":90},[84,15298,2151],{"class":135},[84,15300,15301],{"class":90},".timer)\n",[84,15303,15304],{"class":86,"line":201},[84,15305,485],{"class":90},[84,15307,15308],{"class":86,"line":217},[84,15309,193],{"class":90},[84,15311,15312,15314,15316],{"class":86,"line":227},[84,15313,274],{"class":90},[84,15315,95],{"class":94},[84,15317,102],{"class":90},[11,15319,15321,15322],{"id":15320},"hooks-de-keepalive","Hooks de ",[22,15323,5945],{},[15,15325,15326,15327,754,15329,15332],{},"Cuando un componente está dentro de ",[22,15328,5945],{},[958,15330,15331],{},"no se destruye",", solo se activa o desactiva.",[34,15334,15336,6014,15338],{"id":15335},"onactivated-activated",[22,15337,6985],{},[22,15339,5948],{},[15,15341,15342,15343,764],{},"Se ejecuta cuando el componente ",[958,15344,15345],{},"vuelve a mostrarse",[74,15347,15350],{"className":76,"code":15348,"filename":873,"highlights":15349,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { onActivated } from 'vue'\n\nonActivated(() => {\n  console.log('Componente reactivado')\n})\n\u003C\u002Fscript>\n",[129],[22,15351,15352,15362,15373,15377,15388,15401,15405],{"__ignoreMap":80},[84,15353,15354,15356,15358,15360],{"class":86,"line":87},[84,15355,91],{"class":90},[84,15357,95],{"class":94},[84,15359,99],{"class":98},[84,15361,102],{"class":90},[84,15363,15364,15366,15369,15371],{"class":86,"line":105},[84,15365,109],{"class":108},[84,15367,15368],{"class":90}," { onActivated } ",[84,15370,115],{"class":108},[84,15372,119],{"class":118},[84,15374,15375],{"class":86,"line":122},[84,15376,126],{"emptyLinePlaceholder":125},[84,15378,15380,15382,15384,15386],{"class":15379,"line":129},[86,10151],[84,15381,6985],{"class":98},[84,15383,2992],{"class":90},[84,15385,172],{"class":108},[84,15387,175],{"class":90},[84,15389,15390,15392,15394,15396,15399],{"class":86,"line":154},[84,15391,3135],{"class":90},[84,15393,3138],{"class":98},[84,15395,145],{"class":90},[84,15397,15398],{"class":118},"'Componente reactivado'",[84,15400,151],{"class":90},[84,15402,15403],{"class":86,"line":159},[84,15404,1492],{"class":90},[84,15406,15407,15409,15411],{"class":86,"line":178},[84,15408,274],{"class":90},[84,15410,95],{"class":94},[84,15412,102],{"class":90},[74,15414,15417],{"className":76,"code":15415,"filename":1782,"highlights":15416,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  activated() {\n    console.log('Componente reactivado')\n  }\n}\n\u003C\u002Fscript>\n",[122],[22,15418,15419,15427,15435,15443,15455,15459,15463],{"__ignoreMap":80},[84,15420,15421,15423,15425],{"class":86,"line":87},[84,15422,91],{"class":90},[84,15424,95],{"class":94},[84,15426,102],{"class":90},[84,15428,15429,15431,15433],{"class":86,"line":105},[84,15430,418],{"class":108},[84,15432,1870],{"class":108},[84,15434,175],{"class":90},[84,15436,15438,15441],{"class":15437,"line":122},[86,10151],[84,15439,15440],{"class":98},"  activated",[84,15442,1307],{"class":90},[84,15444,15445,15447,15449,15451,15453],{"class":86,"line":129},[84,15446,3666],{"class":90},[84,15448,3138],{"class":98},[84,15450,145],{"class":90},[84,15452,15398],{"class":118},[84,15454,151],{"class":90},[84,15456,15457],{"class":86,"line":154},[84,15458,485],{"class":90},[84,15460,15461],{"class":86,"line":159},[84,15462,193],{"class":90},[84,15464,15465,15467,15469],{"class":86,"line":178},[84,15466,274],{"class":90},[84,15468,95],{"class":94},[84,15470,102],{"class":90},[34,15472,15474,6014,15476],{"id":15473},"ondeactivated-deactivated",[22,15475,7044],{},[22,15477,5951],{},[15,15479,15342,15480,764],{},[958,15481,15482],{},"se oculta, pero sigue en memoria",[74,15484,15487],{"className":76,"code":15485,"filename":873,"highlights":15486,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { onDeactivated } from 'vue'\n\nonDeactivated(() => {\n  console.log('Componente desactivado')\n})\n\u003C\u002Fscript>\n",[129],[22,15488,15489,15499,15510,15514,15525,15538,15542],{"__ignoreMap":80},[84,15490,15491,15493,15495,15497],{"class":86,"line":87},[84,15492,91],{"class":90},[84,15494,95],{"class":94},[84,15496,99],{"class":98},[84,15498,102],{"class":90},[84,15500,15501,15503,15506,15508],{"class":86,"line":105},[84,15502,109],{"class":108},[84,15504,15505],{"class":90}," { onDeactivated } ",[84,15507,115],{"class":108},[84,15509,119],{"class":118},[84,15511,15512],{"class":86,"line":122},[84,15513,126],{"emptyLinePlaceholder":125},[84,15515,15517,15519,15521,15523],{"class":15516,"line":129},[86,10151],[84,15518,7044],{"class":98},[84,15520,2992],{"class":90},[84,15522,172],{"class":108},[84,15524,175],{"class":90},[84,15526,15527,15529,15531,15533,15536],{"class":86,"line":154},[84,15528,3135],{"class":90},[84,15530,3138],{"class":98},[84,15532,145],{"class":90},[84,15534,15535],{"class":118},"'Componente desactivado'",[84,15537,151],{"class":90},[84,15539,15540],{"class":86,"line":159},[84,15541,1492],{"class":90},[84,15543,15544,15546,15548],{"class":86,"line":178},[84,15545,274],{"class":90},[84,15547,95],{"class":94},[84,15549,102],{"class":90},[74,15551,15554],{"className":76,"code":15552,"filename":1782,"highlights":15553,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  deactivated() {\n    console.log('Componente desactivado')\n  }\n}\n\u003C\u002Fscript>\n",[122],[22,15555,15556,15564,15572,15579,15591,15595,15599],{"__ignoreMap":80},[84,15557,15558,15560,15562],{"class":86,"line":87},[84,15559,91],{"class":90},[84,15561,95],{"class":94},[84,15563,102],{"class":90},[84,15565,15566,15568,15570],{"class":86,"line":105},[84,15567,418],{"class":108},[84,15569,1870],{"class":108},[84,15571,175],{"class":90},[84,15573,15575,15577],{"class":15574,"line":122},[86,10151],[84,15576,7639],{"class":98},[84,15578,1307],{"class":90},[84,15580,15581,15583,15585,15587,15589],{"class":86,"line":129},[84,15582,3666],{"class":90},[84,15584,3138],{"class":98},[84,15586,145],{"class":90},[84,15588,15535],{"class":118},[84,15590,151],{"class":90},[84,15592,15593],{"class":86,"line":154},[84,15594,485],{"class":90},[84,15596,15597],{"class":86,"line":159},[84,15598,193],{"class":90},[84,15600,15601,15603,15605],{"class":86,"line":178},[84,15602,274],{"class":90},[84,15604,95],{"class":94},[84,15606,102],{"class":90},[11,15608,13883],{"id":15609},"manejo-de-errores",[34,15611,15613,6014,15615],{"id":15612},"onerrorcaptured-errorcaptured",[22,15614,4700],{},[22,15616,3960],{},[15,15618,15619,15620,764],{},"Permite capturar errores de ",[958,15621,15622],{},"componentes hijos",[74,15624,15627],{"className":76,"code":15625,"filename":873,"highlights":15626,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { onErrorCaptured } from 'vue'\n\nonErrorCaptured((error) => {\n  console.error('Error capturado:', error)\n  return false\n})\n\u003C\u002Fscript>\n",[129],[22,15628,15629,15639,15650,15654,15669,15682,15688,15692],{"__ignoreMap":80},[84,15630,15631,15633,15635,15637],{"class":86,"line":87},[84,15632,91],{"class":90},[84,15634,95],{"class":94},[84,15636,99],{"class":98},[84,15638,102],{"class":90},[84,15640,15641,15643,15646,15648],{"class":86,"line":105},[84,15642,109],{"class":108},[84,15644,15645],{"class":90}," { onErrorCaptured } ",[84,15647,115],{"class":108},[84,15649,119],{"class":118},[84,15651,15652],{"class":86,"line":122},[84,15653,126],{"emptyLinePlaceholder":125},[84,15655,15657,15659,15661,15663,15665,15667],{"class":15656,"line":129},[86,10151],[84,15658,4700],{"class":98},[84,15660,3120],{"class":90},[84,15662,4127],{"class":429},[84,15664,3126],{"class":90},[84,15666,172],{"class":108},[84,15668,175],{"class":90},[84,15670,15671,15673,15675,15677,15680],{"class":86,"line":154},[84,15672,3135],{"class":90},[84,15674,4127],{"class":98},[84,15676,145],{"class":90},[84,15678,15679],{"class":118},"'Error capturado:'",[84,15681,8976],{"class":90},[84,15683,15684,15686],{"class":86,"line":159},[84,15685,557],{"class":108},[84,15687,224],{"class":135},[84,15689,15690],{"class":86,"line":178},[84,15691,1492],{"class":90},[84,15693,15694,15696,15698],{"class":86,"line":190},[84,15695,274],{"class":90},[84,15697,95],{"class":94},[84,15699,102],{"class":90},[74,15701,15704],{"className":76,"code":15702,"filename":1782,"highlights":15703,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  errorCaptured(error) {\n    console.error('Error capturado:', error)\n    return false\n  }\n}\n\u003C\u002Fscript>\n",[122],[22,15705,15706,15714,15722,15733,15745,15751,15755,15759],{"__ignoreMap":80},[84,15707,15708,15710,15712],{"class":86,"line":87},[84,15709,91],{"class":90},[84,15711,95],{"class":94},[84,15713,102],{"class":90},[84,15715,15716,15718,15720],{"class":86,"line":105},[84,15717,418],{"class":108},[84,15719,1870],{"class":108},[84,15721,175],{"class":90},[84,15723,15725,15727,15729,15731],{"class":15724,"line":122},[86,10151],[84,15726,5480],{"class":98},[84,15728,145],{"class":90},[84,15730,4127],{"class":429},[84,15732,438],{"class":90},[84,15734,15735,15737,15739,15741,15743],{"class":86,"line":129},[84,15736,3666],{"class":90},[84,15738,4127],{"class":98},[84,15740,145],{"class":90},[84,15742,15679],{"class":118},[84,15744,8976],{"class":90},[84,15746,15747,15749],{"class":86,"line":154},[84,15748,1903],{"class":108},[84,15750,224],{"class":135},[84,15752,15753],{"class":86,"line":159},[84,15754,485],{"class":90},[84,15756,15757],{"class":86,"line":178},[84,15758,193],{"class":90},[84,15760,15761,15763,15765],{"class":86,"line":190},[84,15762,274],{"class":90},[84,15764,95],{"class":94},[84,15766,102],{"class":90},[11,15768,15770],{"id":15769},"hooks-de-depuración-del-render","Hooks de depuración del render",[15,15772,15773,15774,764],{},"Estos hooks ayudan a entender ",[958,15775,15776],{},"por qué un componente se vuelve a renderizar",[15,15778,15779],{},"No deben usarse normalmente en producción.",[34,15781,15783],{"id":15782},"onrendertracked",[22,15784,3117],{},[15,15786,15787,15788,764],{},"Se ejecuta cuando Vue ",[958,15789,15790],{},"rastrea una dependencia reactiva durante el render",[74,15792,15795],{"className":76,"code":15793,"filename":873,"highlights":15794,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { onRenderTracked } from 'vue'\n\nonRenderTracked((event) => {\n  console.debug('Dependencia rastreada:', event.key)\n})\n\u003C\u002Fscript>\n",[129],[22,15796,15797,15807,15818,15822,15837,15852,15856],{"__ignoreMap":80},[84,15798,15799,15801,15803,15805],{"class":86,"line":87},[84,15800,91],{"class":90},[84,15802,95],{"class":94},[84,15804,99],{"class":98},[84,15806,102],{"class":90},[84,15808,15809,15811,15814,15816],{"class":86,"line":105},[84,15810,109],{"class":108},[84,15812,15813],{"class":90}," { onRenderTracked } ",[84,15815,115],{"class":108},[84,15817,119],{"class":118},[84,15819,15820],{"class":86,"line":122},[84,15821,126],{"emptyLinePlaceholder":125},[84,15823,15825,15827,15829,15831,15833,15835],{"class":15824,"line":129},[86,10151],[84,15826,3117],{"class":98},[84,15828,3120],{"class":90},[84,15830,3123],{"class":429},[84,15832,3126],{"class":90},[84,15834,172],{"class":108},[84,15836,175],{"class":90},[84,15838,15839,15841,15844,15846,15849],{"class":86,"line":154},[84,15840,3135],{"class":90},[84,15842,15843],{"class":98},"debug",[84,15845,145],{"class":90},[84,15847,15848],{"class":118},"'Dependencia rastreada:'",[84,15850,15851],{"class":90},", event.key)\n",[84,15853,15854],{"class":86,"line":159},[84,15855,1492],{"class":90},[84,15857,15858,15860,15862],{"class":86,"line":178},[84,15859,274],{"class":90},[84,15861,95],{"class":94},[84,15863,102],{"class":90},[74,15865,15868],{"className":76,"code":15866,"filename":1782,"highlights":15867,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  renderTracked(event) {\n    console.debug('Dependencia rastreada:', event.key)\n  }\n}\n\u003C\u002Fscript>\n",[122],[22,15869,15870,15878,15886,15897,15909,15913,15917],{"__ignoreMap":80},[84,15871,15872,15874,15876],{"class":86,"line":87},[84,15873,91],{"class":90},[84,15875,95],{"class":94},[84,15877,102],{"class":90},[84,15879,15880,15882,15884],{"class":86,"line":105},[84,15881,418],{"class":108},[84,15883,1870],{"class":108},[84,15885,175],{"class":90},[84,15887,15889,15891,15893,15895],{"class":15888,"line":122},[86,10151],[84,15890,3655],{"class":98},[84,15892,145],{"class":90},[84,15894,3123],{"class":429},[84,15896,438],{"class":90},[84,15898,15899,15901,15903,15905,15907],{"class":86,"line":129},[84,15900,3666],{"class":90},[84,15902,15843],{"class":98},[84,15904,145],{"class":90},[84,15906,15848],{"class":118},[84,15908,15851],{"class":90},[84,15910,15911],{"class":86,"line":154},[84,15912,485],{"class":90},[84,15914,15915],{"class":86,"line":159},[84,15916,193],{"class":90},[84,15918,15919,15921,15923],{"class":86,"line":178},[84,15920,274],{"class":90},[84,15922,95],{"class":94},[84,15924,102],{"class":90},[34,15926,15928],{"id":15927},"onrendertriggered",[22,15929,3184],{},[15,15931,15932,15933,764],{},"Se ejecuta cuando ",[958,15934,15935],{},"una dependencia dispara un re-render",[74,15937,15940],{"className":76,"code":15938,"filename":873,"highlights":15939,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { onRenderTriggered } from 'vue'\n\nonRenderTriggered((event) => {\n  console.debug('Re-render causado por:', event.key)\n})\n\u003C\u002Fscript>\n",[129],[22,15941,15942,15952,15963,15967,15982,15995,15999],{"__ignoreMap":80},[84,15943,15944,15946,15948,15950],{"class":86,"line":87},[84,15945,91],{"class":90},[84,15947,95],{"class":94},[84,15949,99],{"class":98},[84,15951,102],{"class":90},[84,15953,15954,15956,15959,15961],{"class":86,"line":105},[84,15955,109],{"class":108},[84,15957,15958],{"class":90}," { onRenderTriggered } ",[84,15960,115],{"class":108},[84,15962,119],{"class":118},[84,15964,15965],{"class":86,"line":122},[84,15966,126],{"emptyLinePlaceholder":125},[84,15968,15970,15972,15974,15976,15978,15980],{"class":15969,"line":129},[86,10151],[84,15971,3184],{"class":98},[84,15973,3120],{"class":90},[84,15975,3123],{"class":429},[84,15977,3126],{"class":90},[84,15979,172],{"class":108},[84,15981,175],{"class":90},[84,15983,15984,15986,15988,15990,15993],{"class":86,"line":154},[84,15985,3135],{"class":90},[84,15987,15843],{"class":98},[84,15989,145],{"class":90},[84,15991,15992],{"class":118},"'Re-render causado por:'",[84,15994,15851],{"class":90},[84,15996,15997],{"class":86,"line":159},[84,15998,1492],{"class":90},[84,16000,16001,16003,16005],{"class":86,"line":178},[84,16002,274],{"class":90},[84,16004,95],{"class":94},[84,16006,102],{"class":90},[74,16008,16011],{"className":76,"code":16009,"filename":1782,"highlights":16010,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  renderTriggered(event) {\n    console.debug('Re-render causado por:', event.key)\n  }\n}\n\u003C\u002Fscript>\n",[122],[22,16012,16013,16021,16029,16040,16052,16056,16060],{"__ignoreMap":80},[84,16014,16015,16017,16019],{"class":86,"line":87},[84,16016,91],{"class":90},[84,16018,95],{"class":94},[84,16020,102],{"class":90},[84,16022,16023,16025,16027],{"class":86,"line":105},[84,16024,418],{"class":108},[84,16026,1870],{"class":108},[84,16028,175],{"class":90},[84,16030,16032,16034,16036,16038],{"class":16031,"line":122},[86,10151],[84,16033,3711],{"class":98},[84,16035,145],{"class":90},[84,16037,3123],{"class":429},[84,16039,438],{"class":90},[84,16041,16042,16044,16046,16048,16050],{"class":86,"line":129},[84,16043,3666],{"class":90},[84,16045,15843],{"class":98},[84,16047,145],{"class":90},[84,16049,15992],{"class":118},[84,16051,15851],{"class":90},[84,16053,16054],{"class":86,"line":154},[84,16055,485],{"class":90},[84,16057,16058],{"class":86,"line":159},[84,16059,193],{"class":90},[84,16061,16062,16064,16066],{"class":86,"line":178},[84,16063,274],{"class":90},[84,16065,95],{"class":94},[84,16067,102],{"class":90},[11,16069,16071],{"id":16070},"ssr-server-side-rendering","SSR (Server Side Rendering)",[34,16073,16075,6014,16077],{"id":16074},"onserverprefetch-serverprefetch",[22,16076,1413],{},[22,16078,908],{},[15,16080,16081,16082,764],{},"Permite ",[958,16083,16084],{},"cargar datos antes de renderizar el HTML en el servidor",[15,16086,16087],{},"Esto evita pantallas vacías durante el primer render.",[74,16089,16092],{"className":76,"code":16090,"filename":873,"highlights":16091,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { onServerPrefetch } from 'vue'\n\nonServerPrefetch(async () => {\n  await fetch('\u002Fapi\u002Fdata')\n})\n\u003C\u002Fscript>\n",[129],[22,16093,16094,16104,16115,16119,16134,16147,16151],{"__ignoreMap":80},[84,16095,16096,16098,16100,16102],{"class":86,"line":87},[84,16097,91],{"class":90},[84,16099,95],{"class":94},[84,16101,99],{"class":98},[84,16103,102],{"class":90},[84,16105,16106,16108,16111,16113],{"class":86,"line":105},[84,16107,109],{"class":108},[84,16109,16110],{"class":90}," { onServerPrefetch } ",[84,16112,115],{"class":108},[84,16114,119],{"class":118},[84,16116,16117],{"class":86,"line":122},[84,16118,126],{"emptyLinePlaceholder":125},[84,16120,16122,16124,16126,16128,16130,16132],{"class":16121,"line":129},[86,10151],[84,16123,1413],{"class":98},[84,16125,145],{"class":90},[84,16127,1299],{"class":108},[84,16129,169],{"class":90},[84,16131,172],{"class":108},[84,16133,175],{"class":90},[84,16135,16136,16138,16140,16142,16145],{"class":86,"line":154},[84,16137,7020],{"class":108},[84,16139,1322],{"class":98},[84,16141,145],{"class":90},[84,16143,16144],{"class":118},"'\u002Fapi\u002Fdata'",[84,16146,151],{"class":90},[84,16148,16149],{"class":86,"line":159},[84,16150,1492],{"class":90},[84,16152,16153,16155,16157],{"class":86,"line":178},[84,16154,274],{"class":90},[84,16156,95],{"class":94},[84,16158,102],{"class":90},[74,16160,16163],{"className":76,"code":16161,"filename":1782,"highlights":16162,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  async serverPrefetch() {\n    await fetch('\u002Fapi\u002Fdata')\n  }\n}\n\u003C\u002Fscript>\n",[122],[22,16164,16165,16173,16181,16190,16202,16206,16210],{"__ignoreMap":80},[84,16166,16167,16169,16171],{"class":86,"line":87},[84,16168,91],{"class":90},[84,16170,95],{"class":94},[84,16172,102],{"class":90},[84,16174,16175,16177,16179],{"class":86,"line":105},[84,16176,418],{"class":108},[84,16178,1870],{"class":108},[84,16180,175],{"class":90},[84,16182,16184,16186,16188],{"class":16183,"line":122},[86,10151],[84,16185,2058],{"class":108},[84,16187,2061],{"class":98},[84,16189,1307],{"class":90},[84,16191,16192,16194,16196,16198,16200],{"class":86,"line":129},[84,16193,1435],{"class":108},[84,16195,1322],{"class":98},[84,16197,145],{"class":90},[84,16199,16144],{"class":118},[84,16201,151],{"class":90},[84,16203,16204],{"class":86,"line":154},[84,16205,485],{"class":90},[84,16207,16208],{"class":86,"line":159},[84,16209,193],{"class":90},[84,16211,16212,16214,16216],{"class":86,"line":178},[84,16213,274],{"class":90},[84,16215,95],{"class":94},[84,16217,102],{"class":90},[11,16219,16221],{"id":16220},"cuándo-usar-hooks-y-cuándo-no","Cuándo usar hooks (y cuándo no)",[34,16223,16225],{"id":16224},"úsalos-cuando","Úsalos cuando:",[737,16227,16228,16236,16244,16251],{},[740,16229,16230,16231,1341,16234,909],{},"Necesitas ",[958,16232,16233],{},"acceder al DOM real",[22,16235,1503],{},[740,16237,16238,16239,1341,16242,909],{},"Haces ",[958,16240,16241],{},"limpieza de recursos",[22,16243,9110],{},[740,16245,16246,16247,1341,16249,909],{},"Trabajas con ",[958,16248,2440],{},[22,16250,1413],{},[740,16252,16253,16254],{},"Necesitas reaccionar a ",[958,16255,16256],{},"fases del ciclo del componente",[34,16258,2665],{"id":16259},"evítalos-cuando",[737,16261,16262,16269,16276],{},[740,16263,2651,16264,16268],{},[958,16265,16266],{},[22,16267,2523],{}," resuelve el problema",[740,16270,2651,16271,16275],{},[958,16272,16273],{},[22,16274,2526],{}," es suficiente",[740,16277,16278,16279],{},"Solo quieres reaccionar a ",[958,16280,16281],{},"cambios de estado específicos",[15,16283,16284,16285,16288],{},"Los hooks coordinan ",[958,16286,16287],{},"momentos del ciclo",", no deberían contener toda la lógica del componente.",[11,16290,2406],{"id":2405},[15,16292,16293,16294,1203],{},"Los hooks del ciclo de vida permiten controlar ",[958,16295,16296],{},"momentos clave del componente",[6160,16298,16299,16309],{},[6163,16300,16301],{},[6166,16302,16303,16306],{},[6169,16304,16305],{},"Fase",[6169,16307,16308],{},"Hooks principales",[6182,16310,16311,16321,16331,16341,16351,16362],{},[6166,16312,16313,16315],{},[6187,16314,13855],{},[6187,16316,16317,754,16319],{},[22,16318,11480],{},[22,16320,12680],{},[6166,16322,16323,16325],{},[6187,16324,13860],{},[6187,16326,16327,754,16329],{},[22,16328,1503],{},[22,16330,1085],{},[6166,16332,16333,16335],{},[6187,16334,13865],{},[6187,16336,16337,754,16339],{},[22,16338,10154],{},[22,16340,9844],{},[6166,16342,16343,16345],{},[6187,16344,13870],{},[6187,16346,16347,754,16349],{},[22,16348,9110],{},[22,16350,6063],{},[6166,16352,16353,16356],{},[6187,16354,16355],{},"Cache",[6187,16357,16358,754,16360],{},[22,16359,6985],{},[22,16361,7044],{},[6166,16363,16364,16366],{},[6187,16365,2440],{},[6187,16367,16368],{},[22,16369,1413],{},[823,16371,16372],{},[15,16373,16374,16375],{},"Si dudas qué hook usar, pregúntate primero:\n",[958,16376,16377],{},"¿En qué momento de la vida del componente necesito ejecutar esta lógica?",[835,16379,16380],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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 .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":80,"searchDepth":105,"depth":105,"links":16382},[16383,16384,16385,16386,16387,16388,16390,16392,16394,16396,16398,16400,16402,16404,16406,16407,16408,16410,16411],{"id":920,"depth":105,"text":921},{"id":13901,"depth":105,"text":13902},{"id":13969,"depth":105,"text":12677},{"id":12680,"depth":105,"text":12680},{"id":11480,"depth":105,"text":4013},{"id":14311,"depth":105,"text":16389},"onBeforeMount \u002F beforeMount",{"id":14451,"depth":105,"text":16391},"onMounted \u002F mounted",{"id":14624,"depth":105,"text":16393},"onBeforeUpdate \u002F beforeUpdate",{"id":14764,"depth":105,"text":16395},"onUpdated \u002F updated",{"id":14924,"depth":105,"text":16397},"onBeforeUnmount \u002F beforeUnmount",{"id":15061,"depth":105,"text":16399},"onUnmounted \u002F unmounted",{"id":15335,"depth":105,"text":16401},"onActivated \u002F activated",{"id":15473,"depth":105,"text":16403},"onDeactivated \u002F deactivated",{"id":15612,"depth":105,"text":16405},"onErrorCaptured \u002F errorCaptured",{"id":15782,"depth":105,"text":3117},{"id":15927,"depth":105,"text":3184},{"id":16074,"depth":105,"text":16409},"onServerPrefetch \u002F serverPrefetch",{"id":16224,"depth":105,"text":16225},{"id":16259,"depth":105,"text":2665},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1772676391\u002Fvue-lifecycle-hooks-overview_ovnxzy.png","2026-03-05","Un mapa claro de todos los ciclos de vida de Vue 3 para entender cuándo usar cada hook.",{"updatedAt":16416,"readingTime":190,"coverCaption":16417,"author":868,"keywords":16418},"2026-03-04T21:30:00-05:00","Panorama de los hooks del ciclo de vida en Vue 3.",[870,16419,873,1782,16420],"Ciclos de vida","Hooks","\u002Fblog\u002Fvue-lifecycle-hooks-overview.es",[16423],{"headline":13821,"author":16424,"datePublished":16416,"@type":880},{"name":868,"@type":879},{"title":13821,"description":16414},"blog\u002Fvue-lifecycle-hooks-overview.es",[16428,16429,16430,16431],{"tag":2453,"color":2454},{"tag":888,"color":889},{"tag":3945,"color":3946},{"tag":894,"color":895},"SBKJnT6tEFXx0FslfjbqCoy_-zKjHKGzNv961L2uqmc",{"id":16434,"title":16435,"body":16436,"cover":18472,"coverAlt":16435,"date":18473,"description":18474,"draft":852,"extension":853,"lab":882,"locale":864,"meta":18475,"navigation":125,"path":18482,"schemaOrg":18483,"seo":18486,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":18487,"tags":18488,"__hash__":18495},"blog\u002Fblog\u002Fvue-3-reactivity-internals.es.md","Cómo funciona internamente el sistema de reactividad en Vue 3",{"type":8,"value":16437,"toc":18443},[16438,16441,16453,16457,16463,16474,16477,16486,16490,16494,16502,16514,16521,16525,16528,16552,16588,16591,16604,16611,16616,16619,16662,16668,16672,16681,16696,17581,17676,17680,17731,17734,17738,17746,17764,17789,17795,17801,17804,17936,17939,17953,17961,17969,17990,17993,18010,18014,18017,18028,18031,18188,18191,18193,18197,18239,18242,18254,18258,18269,18277,18285,18347,18350,18361,18365,18368,18392,18396,18399,18410,18413,18435,18440],[11,16439,16435],{"id":16440},"cómo-funciona-internamente-el-sistema-de-reactividad-en-vue-3",[15,16442,16443,16444,754,16446,754,16448,754,16450,16452],{},"Vue 3 introdujo un sistema de reactividad completamente rediseñado respecto a Vue 2, basado en Proxy y en un grafo dinámico de dependencias. Aunque la API pública (",[22,16445,24],{},[22,16447,13059],{},[22,16449,2523],{},[22,16451,2526],{},") resulta simple, su funcionamiento interno responde a un modelo cuidadosamente optimizado para granularidad, rendimiento y previsibilidad. Entender este modelo no es opcional en aplicaciones grandes: es la diferencia entre depurar síntomas y resolver causas.",[34,16454,16456],{"id":16455},"introducción-basada-en-un-problema-real","Introducción basada en un problema real",[15,16458,16459,16460,16462],{},"En equipos que ya utilizan Vue 3 en producción, las dudas más costosas no suelen ser “cómo usar ",[22,16461,24],{},"”, sino estas:",[737,16464,16465,16468,16471],{},[740,16466,16467],{},"¿Cómo sabe Vue exactamente qué actualizar y qué no tocar?",[740,16469,16470],{},"¿Por qué un cambio parece correcto, pero no re-renderiza?",[740,16472,16473],{},"¿Por qué una pantalla vuelve a renderizar demasiado y se vuelve lenta?",[15,16475,16476],{},"La respuesta no está en una API aislada. Está en el motor interno: cómo Vue registra dependencias al leer estado y cómo decide qué efectos ejecutar al escribir estado.",[15,16478,16479,16480,50,16482,16485],{},"Cuando este modelo mental no está claro, se depura a ciegas. Cuando sí lo está, se puede razonar sobre causa raíz, costo de render y comportamiento de ",[22,16481,2523],{},[22,16483,16484],{},"watchEffect"," con precisión.",[34,16487,16489],{"id":16488},"modelo-mental-simplificado","Modelo mental simplificado",[1074,16491,16493],{"id":16492},"dependency-tracking-en-una-frase","Dependency tracking en una frase",[15,16495,16496,16497,754,16499,16501],{},"Cada vez que un efecto activo (render, ",[22,16498,2523],{},[22,16500,16484],{},") lee una propiedad reactiva, Vue registra una relación:",[74,16503,16508],{"className":16504,"code":16505,"filename":16506,"language":16507,"meta":80,"style":80},"language-txt shiki shiki-themes github-light github-dark","efecto X depende de target.key\n","dependency-rule.txt","txt",[22,16509,16510],{"__ignoreMap":80},[84,16511,16512],{"class":86,"line":87},[84,16513,16505],{},[15,16515,16516,16517,16520],{},"Luego, si ",[22,16518,16519],{},"target.key"," cambia, Vue solo notifica los efectos suscritos a esa clave.",[1074,16522,16524],{"id":16523},"estructura-interna-weakmap-map-set","Estructura interna: WeakMap → Map → Set",[15,16526,16527],{},"Un modelo simplificado del almacenamiento de dependencias:",[737,16529,16530,16538,16546],{},[740,16531,16532,16535,16536,2686],{},[22,16533,16534],{},"WeakMap",": índice por objeto reactivo (",[22,16537,2574],{},[740,16539,16540,16543,16544,2686],{},[22,16541,16542],{},"Map",": índice por propiedad dentro de ese objeto (",[22,16545,2580],{},[740,16547,16548,16551],{},[22,16549,16550],{},"Set",": efectos que dependen de esa propiedad.",[74,16553,16556],{"className":16504,"code":16554,"filename":16555,"language":16507,"meta":80,"style":80},"bucket (WeakMap)\n  -> targetA (Map)\n       -> \"count\" (Set: effectRender, effectComputed)\n       -> \"ok\"    (Set: effectRender)\n  -> targetB (Map)\n       -> \"name\"  (Set: effectProfile)\n","dependency-graph.txt",[22,16557,16558,16563,16568,16573,16578,16583],{"__ignoreMap":80},[84,16559,16560],{"class":86,"line":87},[84,16561,16562],{},"bucket (WeakMap)\n",[84,16564,16565],{"class":86,"line":105},[84,16566,16567],{},"  -> targetA (Map)\n",[84,16569,16570],{"class":86,"line":122},[84,16571,16572],{},"       -> \"count\" (Set: effectRender, effectComputed)\n",[84,16574,16575],{"class":86,"line":129},[84,16576,16577],{},"       -> \"ok\"    (Set: effectRender)\n",[84,16579,16580],{"class":86,"line":154},[84,16581,16582],{},"  -> targetB (Map)\n",[84,16584,16585],{"class":86,"line":159},[84,16586,16587],{},"       -> \"name\"  (Set: effectProfile)\n",[15,16589,16590],{},"Esta estructura permite:",[737,16592,16593,16598,16601],{},[740,16594,16595,16596,2686],{},"Evitar memory leaks (gracias a ",[22,16597,16534],{},[740,16599,16600],{},"Tener granularidad por propiedad.",[740,16602,16603],{},"Ejecutar únicamente los efectos necesarios.",[1074,16605,16607,16610],{"id":16606},"activeeffect-la-pieza-crítica",[22,16608,16609],{},"activeEffect",": la pieza crítica",[15,16612,16613,16614,764],{},"Vue mantiene una referencia global temporal al efecto que está ejecutándose: ",[22,16615,16609],{},[15,16617,16618],{},"Flujo:",[10842,16620,16621,16631,16640,16654],{},[740,16622,16623,16624,16627,16628,764],{},"Empieza ",[22,16625,16626],{},"effect(fn)"," → ",[22,16629,16630],{},"activeEffect = fn",[740,16632,13045,16633,16636,16637,764],{},[22,16634,16635],{},"fn",", una lectura reactiva ejecuta ",[22,16638,16639],{},"track(target, key)",[740,16641,16642,16645,16646,16648,16649,16651,16652,764],{},[22,16643,16644],{},"track"," asocia ",[22,16647,16609],{}," al ",[22,16650,16550],{}," de ",[22,16653,16519],{},[740,16655,16656,16657,754,16659,16661],{},"Al terminar ",[22,16658,16635],{},[22,16660,16609],{}," vuelve al anterior (stack de efectos anidados).",[15,16663,16664,16665,16667],{},"Sin ",[22,16666,16609],{},", no hay tracking.",[34,16669,16671],{"id":16670},"mini-implementación-desde-cero-en-javascript-puro","Mini implementación desde cero en JavaScript puro",[15,16673,16674,16675,16677,16678,16680],{},"La implementación real es más compleja (maneja tipos de operación, colecciones como ",[22,16676,16542],{},"\u002F",[22,16679,16550],{},", flags internos, etc.), pero este modelo replica las piezas esenciales:",[737,16682,16683,16687,16692],{},[740,16684,16685],{},[22,16686,16639],{},[740,16688,16689],{},[22,16690,16691],{},"trigger(target, key)",[740,16693,16694],{},[22,16695,16626],{},[74,16697,16700],{"className":394,"code":16698,"filename":16699,"language":397,"meta":80,"style":80},"\u002F\u002F Grafo global de dependencias.\nconst bucket = new WeakMap()\n\n\u002F\u002F Effect activo y pila para efectos anidados.\nlet activeEffect = null\nconst effectStack = []\n\nfunction cleanup(effectFn) {\n  for (const deps of effectFn.deps) {\n    deps.delete(effectFn)\n  }\n  effectFn.deps.length = 0\n}\n\nfunction effect(fn, options = {}) {\n  const effectFn = () => {\n    cleanup(effectFn)\n    activeEffect = effectFn\n    effectStack.push(effectFn)\n    const result = fn()\n    effectStack.pop()\n    activeEffect = effectStack[effectStack.length - 1] ?? null\n    return result\n  }\n\n  effectFn.deps = []\n  effectFn.options = options\n\n  if (!options.lazy) {\n    effectFn()\n  }\n\n  return effectFn\n}\n\nfunction track(target, key) {\n  if (!activeEffect) return\n\n  let depsMap = bucket.get(target)\n  if (!depsMap) {\n    depsMap = new Map()\n    bucket.set(target, depsMap)\n  }\n\n  let deps = depsMap.get(key)\n  if (!deps) {\n    deps = new Set()\n    depsMap.set(key, deps)\n  }\n\n  if (!deps.has(activeEffect)) {\n    deps.add(activeEffect)\n    activeEffect.deps.push(deps)\n  }\n}\n\nfunction trigger(target, key) {\n  const depsMap = bucket.get(target)\n  if (!depsMap) return\n\n  const deps = depsMap.get(key)\n  if (!deps) return\n\n  const effectsToRun = new Set()\n  deps.forEach((effectFn) => {\n    if (effectFn !== activeEffect) effectsToRun.add(effectFn)\n  })\n\n  effectsToRun.forEach((effectFn) => {\n    if (effectFn.options.scheduler) {\n      effectFn.options.scheduler(effectFn)\n    } else {\n      effectFn()\n    }\n  })\n}\n\nfunction reactive(obj) {\n  return new Proxy(obj, {\n    get(target, key, receiver) {\n      track(target, key)\n      return Reflect.get(target, key, receiver)\n    },\n    set(target, key, value, receiver) {\n      const oldValue = target[key]\n      const result = Reflect.set(target, key, value, receiver)\n      if (!Object.is(oldValue, value)) {\n        trigger(target, key)\n      }\n      return result\n    }\n  })\n}\n","reactivity-core.js",[22,16701,16702,16707,16723,16727,16732,16743,16755,16759,16773,16791,16801,16805,16816,16820,16824,16845,16860,16867,16877,16886,16900,16909,16932,16939,16943,16947,16956,16966,16970,16981,16988,16992,16996,17002,17006,17010,17027,17040,17044,17062,17073,17087,17097,17101,17105,17122,17133,17147,17157,17161,17165,17182,17191,17201,17205,17209,17213,17230,17245,17258,17262,17276,17289,17293,17308,17326,17342,17346,17350,17367,17374,17384,17393,17400,17404,17408,17412,17416,17429,17441,17461,17469,17481,17485,17508,17520,17535,17552,17559,17563,17569,17573,17577],{"__ignoreMap":80},[84,16703,16704],{"class":86,"line":87},[84,16705,16706],{"class":13481},"\u002F\u002F Grafo global de dependencias.\n",[84,16708,16709,16711,16714,16716,16718,16721],{"class":86,"line":105},[84,16710,132],{"class":108},[84,16712,16713],{"class":135}," bucket",[84,16715,139],{"class":108},[84,16717,1355],{"class":108},[84,16719,16720],{"class":98}," WeakMap",[84,16722,635],{"class":90},[84,16724,16725],{"class":86,"line":122},[84,16726,126],{"emptyLinePlaceholder":125},[84,16728,16729],{"class":86,"line":129},[84,16730,16731],{"class":13481},"\u002F\u002F Effect activo y pila para efectos anidados.\n",[84,16733,16734,16736,16739,16741],{"class":86,"line":154},[84,16735,8751],{"class":108},[84,16737,16738],{"class":90}," activeEffect ",[84,16740,184],{"class":108},[84,16742,6945],{"class":135},[84,16744,16745,16747,16750,16752],{"class":86,"line":159},[84,16746,132],{"class":108},[84,16748,16749],{"class":135}," effectStack",[84,16751,139],{"class":108},[84,16753,16754],{"class":90}," []\n",[84,16756,16757],{"class":86,"line":178},[84,16758,126],{"emptyLinePlaceholder":125},[84,16760,16761,16763,16766,16768,16771],{"class":86,"line":190},[84,16762,3246],{"class":108},[84,16764,16765],{"class":98}," cleanup",[84,16767,145],{"class":90},[84,16769,16770],{"class":429},"effectFn",[84,16772,438],{"class":90},[84,16774,16775,16778,16780,16782,16785,16788],{"class":86,"line":196},[84,16776,16777],{"class":108},"  for",[84,16779,1341],{"class":90},[84,16781,132],{"class":108},[84,16783,16784],{"class":135}," deps",[84,16786,16787],{"class":108}," of",[84,16789,16790],{"class":90}," effectFn.deps) {\n",[84,16792,16793,16796,16798],{"class":86,"line":201},[84,16794,16795],{"class":90},"    deps.",[84,16797,2598],{"class":98},[84,16799,16800],{"class":90},"(effectFn)\n",[84,16802,16803],{"class":86,"line":217},[84,16804,485],{"class":90},[84,16806,16807,16810,16812,16814],{"class":86,"line":227},[84,16808,16809],{"class":90},"  effectFn.deps.",[84,16811,10566],{"class":135},[84,16813,139],{"class":108},[84,16815,10613],{"class":135},[84,16817,16818],{"class":86,"line":232},[84,16819,193],{"class":90},[84,16821,16822],{"class":86,"line":237},[84,16823,126],{"emptyLinePlaceholder":125},[84,16825,16826,16828,16831,16833,16835,16837,16840,16842],{"class":86,"line":253},[84,16827,3246],{"class":108},[84,16829,16830],{"class":98}," effect",[84,16832,145],{"class":90},[84,16834,16635],{"class":429},[84,16836,754],{"class":90},[84,16838,16839],{"class":429},"options",[84,16841,139],{"class":108},[84,16843,16844],{"class":90}," {}) {\n",[84,16846,16847,16849,16852,16854,16856,16858],{"class":86,"line":266},[84,16848,443],{"class":108},[84,16850,16851],{"class":98}," effectFn",[84,16853,139],{"class":108},[84,16855,169],{"class":90},[84,16857,172],{"class":108},[84,16859,175],{"class":90},[84,16861,16862,16865],{"class":86,"line":271},[84,16863,16864],{"class":98},"    cleanup",[84,16866,16800],{"class":90},[84,16868,16869,16872,16874],{"class":86,"line":281},[84,16870,16871],{"class":90},"    activeEffect ",[84,16873,184],{"class":108},[84,16875,16876],{"class":90}," effectFn\n",[84,16878,16879,16882,16884],{"class":86,"line":286},[84,16880,16881],{"class":90},"    effectStack.",[84,16883,10533],{"class":98},[84,16885,16800],{"class":90},[84,16887,16888,16890,16893,16895,16898],{"class":86,"line":296},[84,16889,3021],{"class":108},[84,16891,16892],{"class":135}," result",[84,16894,139],{"class":108},[84,16896,16897],{"class":98}," fn",[84,16899,635],{"class":90},[84,16901,16902,16904,16907],{"class":86,"line":315},[84,16903,16881],{"class":90},[84,16905,16906],{"class":98},"pop",[84,16908,635],{"class":90},[84,16910,16911,16913,16915,16918,16920,16923,16925,16928,16930],{"class":86,"line":321},[84,16912,16871],{"class":90},[84,16914,184],{"class":108},[84,16916,16917],{"class":90}," effectStack[effectStack.",[84,16919,10566],{"class":135},[84,16921,16922],{"class":108}," -",[84,16924,10572],{"class":135},[84,16926,16927],{"class":90},"] ",[84,16929,10610],{"class":108},[84,16931,6945],{"class":135},[84,16933,16934,16936],{"class":86,"line":331},[84,16935,1903],{"class":108},[84,16937,16938],{"class":90}," result\n",[84,16940,16941],{"class":86,"line":336},[84,16942,485],{"class":90},[84,16944,16945],{"class":86,"line":354},[84,16946,126],{"emptyLinePlaceholder":125},[84,16948,16949,16952,16954],{"class":86,"line":360},[84,16950,16951],{"class":90},"  effectFn.deps ",[84,16953,184],{"class":108},[84,16955,16754],{"class":90},[84,16957,16958,16961,16963],{"class":86,"line":369},[84,16959,16960],{"class":90},"  effectFn.options ",[84,16962,184],{"class":108},[84,16964,16965],{"class":90}," options\n",[84,16967,16968],{"class":86,"line":1453},[84,16969,126],{"emptyLinePlaceholder":125},[84,16971,16972,16974,16976,16978],{"class":86,"line":1462},[84,16973,1338],{"class":108},[84,16975,1341],{"class":90},[84,16977,1344],{"class":108},[84,16979,16980],{"class":90},"options.lazy) {\n",[84,16982,16983,16986],{"class":86,"line":1484},[84,16984,16985],{"class":98},"    effectFn",[84,16987,635],{"class":90},[84,16989,16990],{"class":86,"line":1489},[84,16991,485],{"class":90},[84,16993,16994],{"class":86,"line":1495},[84,16995,126],{"emptyLinePlaceholder":125},[84,16997,16998,17000],{"class":86,"line":1500},[84,16999,557],{"class":108},[84,17001,16876],{"class":90},[84,17003,17004],{"class":86,"line":1516},[84,17005,193],{"class":90},[84,17007,17008],{"class":86,"line":1533},[84,17009,126],{"emptyLinePlaceholder":125},[84,17011,17012,17014,17017,17019,17021,17023,17025],{"class":86,"line":1538},[84,17013,3246],{"class":108},[84,17015,17016],{"class":98}," track",[84,17018,145],{"class":90},[84,17020,2574],{"class":429},[84,17022,754],{"class":90},[84,17024,2580],{"class":429},[84,17026,438],{"class":90},[84,17028,17029,17031,17033,17035,17038],{"class":86,"line":1545},[84,17030,1338],{"class":108},[84,17032,1341],{"class":90},[84,17034,1344],{"class":108},[84,17036,17037],{"class":90},"activeEffect) ",[84,17039,1530],{"class":108},[84,17041,17042],{"class":86,"line":1554},[84,17043,126],{"emptyLinePlaceholder":125},[84,17045,17046,17049,17052,17054,17057,17059],{"class":86,"line":1563},[84,17047,17048],{"class":108},"  let",[84,17050,17051],{"class":90}," depsMap ",[84,17053,184],{"class":108},[84,17055,17056],{"class":90}," bucket.",[84,17058,2589],{"class":98},[84,17060,17061],{"class":90},"(target)\n",[84,17063,17064,17066,17068,17070],{"class":86,"line":1570},[84,17065,1338],{"class":108},[84,17067,1341],{"class":90},[84,17069,1344],{"class":108},[84,17071,17072],{"class":90},"depsMap) {\n",[84,17074,17075,17078,17080,17082,17085],{"class":86,"line":1588},[84,17076,17077],{"class":90},"    depsMap ",[84,17079,184],{"class":108},[84,17081,1355],{"class":108},[84,17083,17084],{"class":98}," Map",[84,17086,635],{"class":90},[84,17088,17089,17092,17094],{"class":86,"line":1593},[84,17090,17091],{"class":90},"    bucket.",[84,17093,2592],{"class":98},[84,17095,17096],{"class":90},"(target, depsMap)\n",[84,17098,17099],{"class":86,"line":1598},[84,17100,485],{"class":90},[84,17102,17103],{"class":86,"line":1607},[84,17104,126],{"emptyLinePlaceholder":125},[84,17106,17107,17109,17112,17114,17117,17119],{"class":86,"line":1612},[84,17108,17048],{"class":108},[84,17110,17111],{"class":90}," deps ",[84,17113,184],{"class":108},[84,17115,17116],{"class":90}," depsMap.",[84,17118,2589],{"class":98},[84,17120,17121],{"class":90},"(key)\n",[84,17123,17124,17126,17128,17130],{"class":86,"line":1621},[84,17125,1338],{"class":108},[84,17127,1341],{"class":90},[84,17129,1344],{"class":108},[84,17131,17132],{"class":90},"deps) {\n",[84,17134,17135,17138,17140,17142,17145],{"class":86,"line":1639},[84,17136,17137],{"class":90},"    deps ",[84,17139,184],{"class":108},[84,17141,1355],{"class":108},[84,17143,17144],{"class":98}," Set",[84,17146,635],{"class":90},[84,17148,17149,17152,17154],{"class":86,"line":1661},[84,17150,17151],{"class":90},"    depsMap.",[84,17153,2592],{"class":98},[84,17155,17156],{"class":90},"(key, deps)\n",[84,17158,17159],{"class":86,"line":1666},[84,17160,485],{"class":90},[84,17162,17163],{"class":86,"line":1688},[84,17164,126],{"emptyLinePlaceholder":125},[84,17166,17167,17169,17171,17173,17176,17179],{"class":86,"line":1703},[84,17168,1338],{"class":108},[84,17170,1341],{"class":90},[84,17172,1344],{"class":108},[84,17174,17175],{"class":90},"deps.",[84,17177,17178],{"class":98},"has",[84,17180,17181],{"class":90},"(activeEffect)) {\n",[84,17183,17184,17186,17188],{"class":86,"line":1717},[84,17185,16795],{"class":90},[84,17187,2595],{"class":98},[84,17189,17190],{"class":90},"(activeEffect)\n",[84,17192,17193,17196,17198],{"class":86,"line":1731},[84,17194,17195],{"class":90},"    activeEffect.deps.",[84,17197,10533],{"class":98},[84,17199,17200],{"class":90},"(deps)\n",[84,17202,17203],{"class":86,"line":1741},[84,17204,485],{"class":90},[84,17206,17207],{"class":86,"line":1746},[84,17208,193],{"class":90},[84,17210,17211],{"class":86,"line":1763},[84,17212,126],{"emptyLinePlaceholder":125},[84,17214,17215,17217,17220,17222,17224,17226,17228],{"class":86,"line":1772},[84,17216,3246],{"class":108},[84,17218,17219],{"class":98}," trigger",[84,17221,145],{"class":90},[84,17223,2574],{"class":429},[84,17225,754],{"class":90},[84,17227,2580],{"class":429},[84,17229,438],{"class":90},[84,17231,17232,17234,17237,17239,17241,17243],{"class":86,"line":2283},[84,17233,443],{"class":108},[84,17235,17236],{"class":135}," depsMap",[84,17238,139],{"class":108},[84,17240,17056],{"class":90},[84,17242,2589],{"class":98},[84,17244,17061],{"class":90},[84,17246,17247,17249,17251,17253,17256],{"class":86,"line":2288},[84,17248,1338],{"class":108},[84,17250,1341],{"class":90},[84,17252,1344],{"class":108},[84,17254,17255],{"class":90},"depsMap) ",[84,17257,1530],{"class":108},[84,17259,17260],{"class":86,"line":2307},[84,17261,126],{"emptyLinePlaceholder":125},[84,17263,17264,17266,17268,17270,17272,17274],{"class":86,"line":2320},[84,17265,443],{"class":108},[84,17267,16784],{"class":135},[84,17269,139],{"class":108},[84,17271,17116],{"class":90},[84,17273,2589],{"class":98},[84,17275,17121],{"class":90},[84,17277,17278,17280,17282,17284,17287],{"class":86,"line":2333},[84,17279,1338],{"class":108},[84,17281,1341],{"class":90},[84,17283,1344],{"class":108},[84,17285,17286],{"class":90},"deps) ",[84,17288,1530],{"class":108},[84,17290,17291],{"class":86,"line":2346},[84,17292,126],{"emptyLinePlaceholder":125},[84,17294,17295,17297,17300,17302,17304,17306],{"class":86,"line":2355},[84,17296,443],{"class":108},[84,17298,17299],{"class":135}," effectsToRun",[84,17301,139],{"class":108},[84,17303,1355],{"class":108},[84,17305,17144],{"class":98},[84,17307,635],{"class":90},[84,17309,17310,17313,17316,17318,17320,17322,17324],{"class":86,"line":2360},[84,17311,17312],{"class":90},"  deps.",[84,17314,17315],{"class":98},"forEach",[84,17317,3120],{"class":90},[84,17319,16770],{"class":429},[84,17321,3126],{"class":90},[84,17323,172],{"class":108},[84,17325,175],{"class":90},[84,17327,17328,17330,17333,17335,17338,17340],{"class":86,"line":2375},[84,17329,2146],{"class":108},[84,17331,17332],{"class":90}," (effectFn ",[84,17334,6848],{"class":108},[84,17336,17337],{"class":90}," activeEffect) effectsToRun.",[84,17339,2595],{"class":98},[84,17341,16800],{"class":90},[84,17343,17344],{"class":86,"line":2384},[84,17345,3104],{"class":90},[84,17347,17348],{"class":86,"line":4853},[84,17349,126],{"emptyLinePlaceholder":125},[84,17351,17352,17355,17357,17359,17361,17363,17365],{"class":86,"line":4865},[84,17353,17354],{"class":90},"  effectsToRun.",[84,17356,17315],{"class":98},[84,17358,3120],{"class":90},[84,17360,16770],{"class":429},[84,17362,3126],{"class":90},[84,17364,172],{"class":108},[84,17366,175],{"class":90},[84,17368,17369,17371],{"class":86,"line":4870},[84,17370,2146],{"class":108},[84,17372,17373],{"class":90}," (effectFn.options.scheduler) {\n",[84,17375,17376,17379,17382],{"class":86,"line":4879},[84,17377,17378],{"class":90},"      effectFn.options.",[84,17380,17381],{"class":98},"scheduler",[84,17383,16800],{"class":90},[84,17385,17386,17388,17391],{"class":86,"line":4884},[84,17387,2090],{"class":90},[84,17389,17390],{"class":108},"else",[84,17392,175],{"class":90},[84,17394,17395,17398],{"class":86,"line":4893},[84,17396,17397],{"class":98},"      effectFn",[84,17399,635],{"class":90},[84,17401,17402],{"class":86,"line":4910},[84,17403,1936],{"class":90},[84,17405,17406],{"class":86,"line":4920},[84,17407,3104],{"class":90},[84,17409,17410],{"class":86,"line":4934},[84,17411,193],{"class":90},[84,17413,17414],{"class":86,"line":4943},[84,17415,126],{"emptyLinePlaceholder":125},[84,17417,17418,17420,17422,17424,17427],{"class":86,"line":4949},[84,17419,3246],{"class":108},[84,17421,2814],{"class":98},[84,17423,145],{"class":90},[84,17425,17426],{"class":429},"obj",[84,17428,438],{"class":90},[84,17430,17431,17433,17435,17438],{"class":86,"line":4959},[84,17432,557],{"class":108},[84,17434,1355],{"class":108},[84,17436,17437],{"class":98}," Proxy",[84,17439,17440],{"class":90},"(obj, {\n",[84,17442,17443,17446,17448,17450,17452,17454,17456,17459],{"class":86,"line":4968},[84,17444,17445],{"class":98},"    get",[84,17447,145],{"class":90},[84,17449,2574],{"class":429},[84,17451,754],{"class":90},[84,17453,2580],{"class":429},[84,17455,754],{"class":90},[84,17457,17458],{"class":429},"receiver",[84,17460,438],{"class":90},[84,17462,17463,17466],{"class":86,"line":4973},[84,17464,17465],{"class":98},"      track",[84,17467,17468],{"class":90},"(target, key)\n",[84,17470,17471,17473,17476,17478],{"class":86,"line":4997},[84,17472,3539],{"class":108},[84,17474,17475],{"class":90}," Reflect.",[84,17477,2589],{"class":98},[84,17479,17480],{"class":90},"(target, key, receiver)\n",[84,17482,17483],{"class":86,"line":5011},[84,17484,7783],{"class":90},[84,17486,17487,17490,17492,17494,17496,17498,17500,17502,17504,17506],{"class":86,"line":5024},[84,17488,17489],{"class":98},"    set",[84,17491,145],{"class":90},[84,17493,2574],{"class":429},[84,17495,754],{"class":90},[84,17497,2580],{"class":429},[84,17499,754],{"class":90},[84,17501,4663],{"class":429},[84,17503,754],{"class":90},[84,17505,17458],{"class":429},[84,17507,438],{"class":90},[84,17509,17510,17512,17515,17517],{"class":86,"line":5039},[84,17511,1964],{"class":108},[84,17513,17514],{"class":135}," oldValue",[84,17516,139],{"class":108},[84,17518,17519],{"class":90}," target[key]\n",[84,17521,17522,17524,17526,17528,17530,17532],{"class":86,"line":5068},[84,17523,1964],{"class":108},[84,17525,16892],{"class":135},[84,17527,139],{"class":108},[84,17529,17475],{"class":90},[84,17531,2592],{"class":98},[84,17533,17534],{"class":90},"(target, key, value, receiver)\n",[84,17536,17537,17539,17541,17543,17546,17549],{"class":86,"line":5077},[84,17538,1987],{"class":108},[84,17540,1341],{"class":90},[84,17542,1344],{"class":108},[84,17544,17545],{"class":90},"Object.",[84,17547,17548],{"class":98},"is",[84,17550,17551],{"class":90},"(oldValue, value)) {\n",[84,17553,17554,17557],{"class":86,"line":5082},[84,17555,17556],{"class":98},"        trigger",[84,17558,17468],{"class":90},[84,17560,17561],{"class":86,"line":5103},[84,17562,2013],{"class":90},[84,17564,17565,17567],{"class":86,"line":5112},[84,17566,3539],{"class":108},[84,17568,16938],{"class":90},[84,17570,17571],{"class":86,"line":5768},[84,17572,1936],{"class":90},[84,17574,17575],{"class":86,"line":5781},[84,17576,3104],{"class":90},[84,17578,17579],{"class":86,"line":5794},[84,17580,193],{"class":90},[74,17582,17585],{"className":394,"code":17583,"filename":17584,"language":397,"meta":80,"style":80},"const state = reactive({ count: 0, ok: true })\n\neffect(() => {\n  console.log(\"render ->\", state.ok ? state.count : \"hidden\")\n})\n\nstate.count++\nstate.ok = false\n","demo.js",[22,17586,17587,17611,17615,17626,17652,17656,17660,17667],{"__ignoreMap":80},[84,17588,17589,17591,17594,17596,17598,17601,17603,17606,17608],{"class":86,"line":87},[84,17590,132],{"class":108},[84,17592,17593],{"class":135}," state",[84,17595,139],{"class":108},[84,17597,2814],{"class":98},[84,17599,17600],{"class":90},"({ count: ",[84,17602,4320],{"class":135},[84,17604,17605],{"class":90},", ok: ",[84,17607,2938],{"class":135},[84,17609,17610],{"class":90}," })\n",[84,17612,17613],{"class":86,"line":105},[84,17614,126],{"emptyLinePlaceholder":125},[84,17616,17617,17620,17622,17624],{"class":86,"line":122},[84,17618,17619],{"class":98},"effect",[84,17621,2992],{"class":90},[84,17623,172],{"class":108},[84,17625,175],{"class":90},[84,17627,17628,17630,17632,17634,17637,17640,17642,17645,17647,17650],{"class":86,"line":129},[84,17629,3135],{"class":90},[84,17631,3138],{"class":98},[84,17633,145],{"class":90},[84,17635,17636],{"class":118},"\"render ->\"",[84,17638,17639],{"class":90},", state.ok ",[84,17641,3073],{"class":108},[84,17643,17644],{"class":90}," state.count ",[84,17646,1203],{"class":108},[84,17648,17649],{"class":118}," \"hidden\"",[84,17651,151],{"class":90},[84,17653,17654],{"class":86,"line":154},[84,17655,1492],{"class":90},[84,17657,17658],{"class":86,"line":159},[84,17659,126],{"emptyLinePlaceholder":125},[84,17661,17662,17665],{"class":86,"line":178},[84,17663,17664],{"class":90},"state.count",[84,17666,10168],{"class":108},[84,17668,17669,17672,17674],{"class":86,"line":190},[84,17670,17671],{"class":90},"state.ok ",[84,17673,184],{"class":108},[84,17675,224],{"class":135},[1074,17677,17679],{"id":17678},"paso-a-paso-de-lo-que-ocurre","Paso a paso de lo que ocurre",[10842,17681,17682,17687,17705,17713,17723],{},[740,17683,17684,17686],{},[22,17685,17619],{}," ejecuta la función de render y la marca como activa.",[740,17688,17689,17690,2488,17693,17695,17696,17698,17699,17702,17703,764],{},"Al leer ",[22,17691,17692],{},"state.ok",[22,17694,17664],{},", el ",[22,17697,2589],{}," del ",[22,17700,17701],{},"Proxy"," dispara ",[22,17704,16644],{},[740,17706,17707,17709,17710,764],{},[22,17708,16644],{}," guarda dependencias en ",[22,17711,17712],{},"WeakMap → Map → Set",[740,17714,17715,17716,17695,17718,17702,17720,764],{},"Cuando cambias ",[22,17717,17664],{},[22,17719,2592],{},[22,17721,17722],{},"trigger",[740,17724,17725,17727,17728,17730],{},[22,17726,17722],{}," busca el ",[22,17729,16550],{}," de esa key y re-ejecuta solo los efectos dependientes.",[15,17732,17733],{},"Este patrón es exactamente el núcleo del sistema de reactividad de Vue 3.",[34,17735,17737],{"id":17736},"conexión-con-vue-real","Conexión con Vue real",[1074,17739,17741,17743,17744],{"id":17740},"reactive-usa-proxy",[22,17742,13059],{}," usa ",[22,17745,17701],{},[15,17747,17748,17750,17751,17753,17754,754,17756,754,17758,754,17760,17763],{},[22,17749,13059],{}," no “magia” valores: crea un ",[22,17752,17701],{}," que intercepta operaciones (",[22,17755,2589],{},[22,17757,2592],{},[22,17759,17178],{},[22,17761,17762],{},"deleteProperty",", iteración, etc.).",[737,17765,17766,17771,17776],{},[740,17767,995,17768,17770],{},[22,17769,2589],{}," se hace tracking.",[740,17772,995,17773,17775],{},[22,17774,2592],{}," se hace trigger.",[740,17777,17778,17779,754,17781,754,17783,754,17785,17788],{},"Para arrays y colecciones (",[22,17780,16542],{},[22,17782,16550],{},[22,17784,16534],{},[22,17786,17787],{},"WeakSet",") existen manejadores específicos.",[1074,17790,17792,17794],{"id":17791},"ref-envuelve-primitivos",[22,17793,24],{}," envuelve primitivos",[15,17796,17797,17798,764],{},"Como un primitivo no puede proxificarse por propiedad, Vue usa un objeto contenedor con getter\u002Fsetter en ",[22,17799,17800],{},".value",[15,17802,17803],{},"Simplificación conceptual:",[74,17805,17808],{"className":394,"code":17806,"filename":17807,"language":397,"meta":80,"style":80},"function ref(raw) {\n  const box = {\n    get value() {\n      track(box, \"value\")\n      return raw\n    },\n    set value(newValue) {\n      if (!Object.is(raw, newValue)) {\n        raw = newValue\n        trigger(box, \"value\")\n      }\n    }\n  }\n  return box\n}\n","ref.js",[22,17809,17810,17823,17834,17843,17855,17862,17866,17878,17893,17903,17913,17917,17921,17925,17932],{"__ignoreMap":80},[84,17811,17812,17814,17816,17818,17821],{"class":86,"line":87},[84,17813,3246],{"class":108},[84,17815,142],{"class":98},[84,17817,145],{"class":90},[84,17819,17820],{"class":429},"raw",[84,17822,438],{"class":90},[84,17824,17825,17827,17830,17832],{"class":86,"line":105},[84,17826,443],{"class":108},[84,17828,17829],{"class":135}," box",[84,17831,139],{"class":108},[84,17833,175],{"class":90},[84,17835,17836,17838,17841],{"class":86,"line":122},[84,17837,17445],{"class":108},[84,17839,17840],{"class":98}," value",[84,17842,1307],{"class":90},[84,17844,17845,17847,17850,17853],{"class":86,"line":129},[84,17846,17465],{"class":98},[84,17848,17849],{"class":90},"(box, ",[84,17851,17852],{"class":118},"\"value\"",[84,17854,151],{"class":90},[84,17856,17857,17859],{"class":86,"line":154},[84,17858,3539],{"class":108},[84,17860,17861],{"class":90}," raw\n",[84,17863,17864],{"class":86,"line":159},[84,17865,7783],{"class":90},[84,17867,17868,17870,17872,17874,17876],{"class":86,"line":178},[84,17869,17489],{"class":108},[84,17871,17840],{"class":98},[84,17873,145],{"class":90},[84,17875,2604],{"class":429},[84,17877,438],{"class":90},[84,17879,17880,17882,17884,17886,17888,17890],{"class":86,"line":190},[84,17881,1987],{"class":108},[84,17883,1341],{"class":90},[84,17885,1344],{"class":108},[84,17887,17545],{"class":90},[84,17889,17548],{"class":98},[84,17891,17892],{"class":90},"(raw, newValue)) {\n",[84,17894,17895,17898,17900],{"class":86,"line":196},[84,17896,17897],{"class":90},"        raw ",[84,17899,184],{"class":108},[84,17901,17902],{"class":90}," newValue\n",[84,17904,17905,17907,17909,17911],{"class":86,"line":201},[84,17906,17556],{"class":98},[84,17908,17849],{"class":90},[84,17910,17852],{"class":118},[84,17912,151],{"class":90},[84,17914,17915],{"class":86,"line":217},[84,17916,2013],{"class":90},[84,17918,17919],{"class":86,"line":227},[84,17920,1936],{"class":90},[84,17922,17923],{"class":86,"line":232},[84,17924,485],{"class":90},[84,17926,17927,17929],{"class":86,"line":237},[84,17928,557],{"class":108},[84,17930,17931],{"class":90}," box\n",[84,17933,17934],{"class":86,"line":253},[84,17935,193],{"class":90},[15,17937,17938],{},"En Vue real:",[737,17940,17941,17947],{},[740,17942,17943,17944,17946],{},"Los objetos pasados a ",[22,17945,24],{}," se convierten internamente en reactivos.",[740,17948,17949,17950,17952],{},"En templates, ",[22,17951,17800],{}," se desempaqueta automáticamente (ref unwrapping).",[1074,17954,17956,17958,17959],{"id":17955},"computed-se-construye-sobre-effect",[22,17957,2523],{}," se construye sobre ",[22,17960,17619],{},[15,17962,17963,17965,17966,17968],{},[22,17964,2523],{}," se implementa usando un ",[22,17967,17619],{}," lazy:",[10842,17970,17971,17976,17979,17982],{},[740,17972,17973,17974,764],{},"No se evalúa hasta que alguien lee ",[22,17975,17800],{},[740,17977,17978],{},"Cachea el resultado.",[740,17980,17981],{},"Se invalida cuando cambia una dependencia interna.",[740,17983,17984,17985,16677,17987,17989],{},"Expone su propio ",[22,17986,16644],{},[22,17988,17722],{}," para quienes dependen del computed.",[15,17991,17992],{},"Internamente, combina:",[737,17994,17995,18001,18007],{},[740,17996,17997,17998],{},"Un efecto con ",[22,17999,18000],{},"lazy: true",[740,18002,18003,18004],{},"Un flag ",[22,18005,18006],{},"dirty",[740,18008,18009],{},"Un scheduler que marca como inválido en lugar de recalcular inmediatamente",[1074,18011,18013],{"id":18012},"scheduler-y-batching","Scheduler y batching",[15,18015,18016],{},"Vue evita trabajo redundante dentro del mismo tick:",[10842,18018,18019,18022,18025],{},[740,18020,18021],{},"En lugar de ejecutar cada efecto inmediatamente, puede encolarlo.",[740,18023,18024],{},"Deduplica jobs repetidos.",[740,18026,18027],{},"Hace flush en una microtask.",[15,18029,18030],{},"Mini scheduler conceptual:",[74,18032,18035],{"className":394,"code":18033,"filename":18034,"language":397,"meta":80,"style":80},"const queue = new Set()\nlet flushing = false\nconst p = Promise.resolve()\n\nfunction scheduler(job) {\n  queue.add(job)\n  if (flushing) return\n  flushing = true\n  p.then(() => {\n    queue.forEach((j) => j())\n    queue.clear()\n    flushing = false\n  })\n}\n","scheduler.js",[22,18036,18037,18052,18063,18082,18086,18100,18110,18119,18128,18141,18162,18171,18180,18184],{"__ignoreMap":80},[84,18038,18039,18041,18044,18046,18048,18050],{"class":86,"line":87},[84,18040,132],{"class":108},[84,18042,18043],{"class":135}," queue",[84,18045,139],{"class":108},[84,18047,1355],{"class":108},[84,18049,17144],{"class":98},[84,18051,635],{"class":90},[84,18053,18054,18056,18059,18061],{"class":86,"line":105},[84,18055,8751],{"class":108},[84,18057,18058],{"class":90}," flushing ",[84,18060,184],{"class":108},[84,18062,224],{"class":135},[84,18064,18065,18067,18070,18072,18075,18077,18080],{"class":86,"line":122},[84,18066,132],{"class":108},[84,18068,18069],{"class":135}," p",[84,18071,139],{"class":108},[84,18073,18074],{"class":135}," Promise",[84,18076,764],{"class":90},[84,18078,18079],{"class":98},"resolve",[84,18081,635],{"class":90},[84,18083,18084],{"class":86,"line":129},[84,18085,126],{"emptyLinePlaceholder":125},[84,18087,18088,18090,18093,18095,18098],{"class":86,"line":154},[84,18089,3246],{"class":108},[84,18091,18092],{"class":98}," scheduler",[84,18094,145],{"class":90},[84,18096,18097],{"class":429},"job",[84,18099,438],{"class":90},[84,18101,18102,18105,18107],{"class":86,"line":159},[84,18103,18104],{"class":90},"  queue.",[84,18106,2595],{"class":98},[84,18108,18109],{"class":90},"(job)\n",[84,18111,18112,18114,18117],{"class":86,"line":178},[84,18113,1338],{"class":108},[84,18115,18116],{"class":90}," (flushing) ",[84,18118,1530],{"class":108},[84,18120,18121,18124,18126],{"class":86,"line":190},[84,18122,18123],{"class":90},"  flushing ",[84,18125,184],{"class":108},[84,18127,187],{"class":135},[84,18129,18130,18133,18135,18137,18139],{"class":86,"line":196},[84,18131,18132],{"class":90},"  p.",[84,18134,12995],{"class":98},[84,18136,2992],{"class":90},[84,18138,172],{"class":108},[84,18140,175],{"class":90},[84,18142,18143,18146,18148,18150,18153,18155,18157,18160],{"class":86,"line":201},[84,18144,18145],{"class":90},"    queue.",[84,18147,17315],{"class":98},[84,18149,3120],{"class":90},[84,18151,18152],{"class":429},"j",[84,18154,3126],{"class":90},[84,18156,172],{"class":108},[84,18158,18159],{"class":98}," j",[84,18161,3054],{"class":90},[84,18163,18164,18166,18169],{"class":86,"line":217},[84,18165,18145],{"class":90},[84,18167,18168],{"class":98},"clear",[84,18170,635],{"class":90},[84,18172,18173,18176,18178],{"class":86,"line":227},[84,18174,18175],{"class":90},"    flushing ",[84,18177,184],{"class":108},[84,18179,224],{"class":135},[84,18181,18182],{"class":86,"line":232},[84,18183,3104],{"class":90},[84,18185,18186],{"class":86,"line":237},[84,18187,193],{"class":90},[15,18189,18190],{},"Esto explica por qué 10 mutaciones síncronas pueden producir un único render final.",[34,18192,784],{"id":783},[1074,18194,18196],{"id":18195},"la-desestructuración-rompe-la-reactividad","La desestructuración rompe la reactividad",[74,18198,18201],{"className":394,"code":18199,"filename":18200,"language":397,"meta":80,"style":80},"const state = reactive({ count: 0 })\nconst { count } = state \u002F\u002F count deja de estar enlazado\n","destructuring-breaks-reactivity.js",[22,18202,18203,18219],{"__ignoreMap":80},[84,18204,18205,18207,18209,18211,18213,18215,18217],{"class":86,"line":87},[84,18206,132],{"class":108},[84,18208,17593],{"class":135},[84,18210,139],{"class":108},[84,18212,2814],{"class":98},[84,18214,17600],{"class":90},[84,18216,4320],{"class":135},[84,18218,17610],{"class":90},[84,18220,18221,18223,18225,18228,18231,18233,18236],{"class":86,"line":105},[84,18222,132],{"class":108},[84,18224,6763],{"class":90},[84,18226,18227],{"class":135},"count",[84,18229,18230],{"class":90}," } ",[84,18232,184],{"class":108},[84,18234,18235],{"class":90}," state ",[84,18237,18238],{"class":13481},"\u002F\u002F count deja de estar enlazado\n",[15,18240,18241],{},"Corrección:",[737,18243,18244,18249],{},[740,18245,10045,18246],{},[22,18247,18248],{},"toRef(state, \"count\")",[740,18250,18251,18252,764],{},"Acceder como ",[22,18253,17664],{},[1074,18255,18257],{"id":18256},"mutaciones-fuera-del-proxy","Mutaciones fuera del proxy",[15,18259,18260,18261,18263,18264,18266,18267,764],{},"Si mutas una referencia “raw” fuera del ",[22,18262,17701],{},", Vue no puede disparar ",[22,18265,17722],{},".\nTodo acceso\u002Fescritura que deba ser reactivo debe pasar por el proxy o por ",[22,18268,17800],{},[1074,18270,18272,13234,18275],{"id":18271},"shallowref-vs-ref",[22,18273,18274],{},"shallowRef",[22,18276,24],{},[15,18278,18279,18281,18282,18284],{},[22,18280,18274],{}," solo rastrea el reemplazo de ",[22,18283,17800],{},", no mutaciones profundas.",[74,18286,18289],{"className":394,"code":18287,"filename":18288,"language":397,"meta":80,"style":80},"const user = shallowRef({ name: \"Ana\" })\nuser.value.name = \"Eva\" \u002F\u002F no dispara por sí solo\nuser.value = { ...user.value, name: \"Eva\" } \u002F\u002F sí dispara\n","shallow-ref-example.js",[22,18290,18291,18311,18324],{"__ignoreMap":80},[84,18292,18293,18295,18298,18300,18303,18306,18309],{"class":86,"line":87},[84,18294,132],{"class":108},[84,18296,18297],{"class":135}," user",[84,18299,139],{"class":108},[84,18301,18302],{"class":98}," shallowRef",[84,18304,18305],{"class":90},"({ name: ",[84,18307,18308],{"class":118},"\"Ana\"",[84,18310,17610],{"class":90},[84,18312,18313,18316,18318,18321],{"class":86,"line":105},[84,18314,18315],{"class":90},"user.value.name ",[84,18317,184],{"class":108},[84,18319,18320],{"class":118}," \"Eva\"",[84,18322,18323],{"class":13481}," \u002F\u002F no dispara por sí solo\n",[84,18325,18326,18329,18331,18333,18336,18339,18342,18344],{"class":86,"line":122},[84,18327,18328],{"class":90},"user.value ",[84,18330,184],{"class":108},[84,18332,6763],{"class":90},[84,18334,18335],{"class":108},"...",[84,18337,18338],{"class":90},"user.value, name: ",[84,18340,18341],{"class":118},"\"Eva\"",[84,18343,18230],{"class":90},[84,18345,18346],{"class":13481},"\u002F\u002F sí dispara\n",[15,18348,18349],{},"Es útil cuando:",[737,18351,18352,18355,18358],{},[740,18353,18354],{},"Manejas estructuras grandes,",[740,18356,18357],{},"Trabajas con librerías externas,",[740,18359,18360],{},"Quieres controlar manualmente cuándo invalidar.",[1074,18362,18364],{"id":18363},"effects-que-se-ejecutan-más-de-lo-esperado","Effects que se ejecutan más de lo esperado",[15,18366,18367],{},"Causas típicas:",[737,18369,18370,18376,18381,18389],{},[740,18371,18372,18373,18375],{},"Leer demasiadas fuentes dentro de un mismo ",[22,18374,16484],{},";",[740,18377,18378,18379,18375],{},"Crear objetos nuevos en cada evaluación de ",[22,18380,2523],{},[740,18382,10045,18383,18385,18386,18388],{},[22,18384,16484],{}," cuando ",[22,18387,2523],{}," era suficiente;",[740,18390,18391],{},"Mutar estado dentro de un efecto sin aislar dependencias.",[34,18393,18395],{"id":18394},"conclusión","Conclusión",[15,18397,18398],{},"Cuando entiendes el motor interno de Vue 3, cambia tu forma de construir UI:",[737,18400,18401,18404,18407],{},[740,18402,18403],{},"Pasas de ensayo-error a diagnóstico por dependencias;",[740,18405,18406],{},"Distingues entre problema de tracking y problema de rendering;",[740,18408,18409],{},"Diseñas estado para reducir renders y costo computacional.",[15,18411,18412],{},"En aplicaciones grandes, esto impacta directamente en:",[737,18414,18415,18418,18421],{},[740,18416,18417],{},"Rendimiento estable bajo carga;",[740,18419,18420],{},"Menos bugs intermitentes de sincronización;",[740,18422,18423,18424,754,18426,754,18428,754,18430,754,18432,18434],{},"Decisiones más finas sobre ",[22,18425,24],{},[22,18427,13059],{},[22,18429,18274],{},[22,18431,2523],{},[22,18433,2526],{}," y scheduling.",[823,18436,18437],{},[15,18438,18439],{},"La reactividad de Vue 3 no es magia. Es un grafo de dependencias bien diseñado y un scheduler eficiente. Entenderlo te permite escribir código más predecible, más performante y mucho más fácil de depurar.",[835,18441,18442],{},"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 .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}",{"title":80,"searchDepth":105,"depth":105,"links":18444},[18445,18446,18452,18455,18464,18471],{"id":16455,"depth":105,"text":16456},{"id":16488,"depth":105,"text":16489,"children":18447},[18448,18449,18450],{"id":16492,"depth":122,"text":16493},{"id":16523,"depth":122,"text":16524},{"id":16606,"depth":122,"text":18451},"activeEffect: la pieza crítica",{"id":16670,"depth":105,"text":16671,"children":18453},[18454],{"id":17678,"depth":122,"text":17679},{"id":17736,"depth":105,"text":17737,"children":18456},[18457,18459,18461,18463],{"id":17740,"depth":122,"text":18458},"reactive usa Proxy",{"id":17791,"depth":122,"text":18460},"ref envuelve primitivos",{"id":17955,"depth":122,"text":18462},"computed se construye sobre effect",{"id":18012,"depth":122,"text":18013},{"id":783,"depth":105,"text":784,"children":18465},[18466,18467,18468,18470],{"id":18195,"depth":122,"text":18196},{"id":18256,"depth":122,"text":18257},{"id":18271,"depth":122,"text":18469},"shallowRef vs ref",{"id":18363,"depth":122,"text":18364},{"id":18394,"depth":105,"text":18395},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1772497884\u002Fvue-3-reactivity-internals_hhru1s.png","2026-03-03","Disección técnica del motor reactivo de Vue 3: dependency tracking, estructura WeakMap->Map->Set, activeEffect, scheduler, batching y errores reales de arquitectura.",{"updatedAt":18476,"coverCaption":18477,"author":868,"keywords":18478},"2026-03-02T20:00:00-05:00","Portada temporal: reemplazar por arte final de TODOvue",[871,18479,18480,17381,18481,2523],"reactividad","dependency tracking","batching","\u002Fblog\u002Fvue-3-reactivity-internals.es",[18484],{"headline":16435,"author":18485,"datePublished":18476,"@type":880},{"name":868,"@type":879},{"title":16435,"description":18474},"blog\u002Fvue-3-reactivity-internals.es",[18489,18490,18491,18494],{"tag":3945,"color":3946},{"tag":2458,"color":2459},{"tag":18492,"color":18493},"Rendimiento","#D4A017",{"tag":2462,"color":2463},"rGnK0yeWSoPTGptH72z9OmVf4RB34BbFjfhRirLS9g8",{"id":18497,"title":18498,"body":18499,"cover":21276,"coverAlt":21277,"date":21278,"description":21279,"draft":852,"extension":853,"lab":882,"locale":864,"meta":21280,"navigation":125,"path":21286,"schemaOrg":21287,"seo":21290,"series":21291,"seriesDescription":21292,"seriesOrder":217,"seriesTitle":21293,"slug":882,"stem":21294,"tags":21295,"__hash__":21305},"blog\u002Fblog\u002Fdirectives-vue-custom-directives-guide.es.md","Directivas en Vue: Directivas personalizadas",{"type":8,"value":18500,"toc":21258},[18501,18505,18509,18516,18544,18554,18556,18562,18565,18582,18585,18595,18602,18641,18651,18655,18675,18679,18699,18701,18806,18808,18826,18832,19501,19960,19981,19985,19991,20150,20244,20279,20285,20780,21108,21203,21216,21218,21255],[11,18502,18504],{"id":18503},"directivas-personalizadas-en-vue-3","Directivas personalizadas en Vue 3",[34,18506,18508],{"id":18507},"por-qué-es-importante","Por qué es importante",[15,18510,18511,18512,18515],{},"Las directivas personalizadas te permiten encapsular ",[958,18513,18514],{},"manipulación imperativa de DOM"," que no encaja bien en un componente o en un composable “puro”. Son especialmente útiles para comportamientos de bajo nivel como:",[737,18517,18518,18524,18530,18536],{},[740,18519,18520,18521,909],{},"Foco automático (",[22,18522,18523],{},"v-autofocus",[740,18525,18526,18527,909],{},"Atajos de teclado (",[22,18528,18529],{},"v-hotkey",[740,18531,18532,18533,909],{},"Clic fuera para cerrar (",[22,18534,18535],{},"v-click-outside",[740,18537,18538,18539,754,18541,18543],{},"Integración con API del navegador o librerías no reactivas (por ejemplo, ",[22,18540,8564],{},[22,18542,8389],{},", tooltips)",[15,18545,18546,18547,754,18550,18553],{},"Si no las diseñas bien, es fácil terminar con ",[958,18548,18549],{},"listeners duplicados",[958,18551,18552],{},"fugas de memoria"," o lógica duplicada en múltiples vistas.",[34,18555,947],{"id":946},[15,18557,18558,18559,764],{},"Una directiva personalizada es un objeto (o una función abreviada) con hooks que Vue ejecuta sobre un ",[958,18560,18561],{},"elemento real del DOM",[15,18563,18564],{},"En Vue 3, una directiva puede exponer estos hooks (los más usados en la práctica):",[737,18566,18567,18572,18577],{},[740,18568,18569,18571],{},[22,18570,1085],{},": El elemento ya está en el DOM (ideal para agregar listeners u observers).",[740,18573,18574,18576],{},[22,18575,9844],{},": El componente se actualizó y necesitas refrescar el comportamiento.",[740,18578,18579,18581],{},[22,18580,6063],{},": Limpieza de listeners, timers, observers, etc.",[15,18583,18584],{},"Y también existen hooks “before-*” que son útiles en algunos casos:",[737,18586,18587],{},[740,18588,18589,754,18591,754,18593],{},[22,18590,11417],{},[22,18592,9841],{},[22,18594,8275],{},[15,18596,18597,18598,18601],{},"El ",[22,18599,18600],{},"binding"," te da acceso al valor recibido, argumento y modificadores:",[737,18603,18604,18613,18623,18632],{},[740,18605,18606,18609,18610,2686],{},[22,18607,18608],{},"binding.value",": Valor actual (",[22,18611,18612],{},"v-mi-directiva=\"valor\"",[740,18614,18615,18618,18619,16677,18621,2686],{},[22,18616,18617],{},"binding.oldValue",": Valor anterior (solo disponible en ",[22,18620,9841],{},[22,18622,9844],{},[740,18624,18625,18628,18629,2686],{},[22,18626,18627],{},"binding.arg",": Argumento (",[22,18630,18631],{},"v-mi-directiva:delay=\"300\"",[740,18633,18634,18637,18638,2686],{},[22,18635,18636],{},"binding.modifiers",": Modificadores (",[22,18639,18640],{},"v-mi-directiva.once.capture",[15,18642,18643,18644,18647,18648,764],{},"Regla práctica: usa directivas para ",[958,18645,18646],{},"comportamiento del elemento",", no para ",[958,18649,18650],{},"estado de negocio",[34,18652,18654],{"id":18653},"cuándo-usar-directivas-personalizadas","Cuándo usar directivas personalizadas",[10842,18656,18657,18660,18668],{},[740,18658,18659],{},"Cuando necesitas lógica imperativa de DOM reutilizable en varios componentes.",[740,18661,18662,18663,754,18665,18667],{},"Cuando integras APIs no reactivas (",[22,18664,8564],{},[22,18666,8389],{},", tooltips de terceros).",[740,18669,18670,18671,754,18673,2686],{},"Cuando quieres un contrato declarativo en template para un comportamiento concreto (",[22,18672,18523],{},[22,18674,18535],{},[34,18676,18678],{"id":18677},"cuándo-evitarlas","Cuándo evitarlas",[10842,18680,18681,18684,18696],{},[740,18682,18683],{},"Cuando la solución real es un componente (estructura visual + estado + eventos).",[740,18685,18686,18687,754,18690,754,18693,2686],{},"Cuando la lógica se resuelve con bindings o directivas nativas (",[22,18688,18689],{},"v-model",[22,18691,18692],{},"v-bind",[22,18694,18695],{},"v-on",[740,18697,18698],{},"Cuando intentas usar una directiva para coordinar estado global o flujos de datos complejos.",[34,18700,784],{"id":783},[10842,18702,18703,18723,18744,18765,18786],{},[740,18704,18705,18710],{},[958,18706,18707,18708,764],{},"No limpiar recursos en ",[22,18709,6063],{},[737,18711,18712,18718],{},[740,18713,18714,18715,18717],{},"Por qué pasa: se agrega un listener en ",[22,18716,1085],{}," y se olvida removerlo.",[740,18719,18720,18721,764],{},"Solución: guarda referencias (en el elemento o en un closure controlado) y limpia siempre en ",[22,18722,6063],{},[740,18724,18725,18728],{},[958,18726,18727],{},"Acoplar la directiva a un caso único.",[737,18729,18730,18733],{},[740,18731,18732],{},"Por qué pasa: nombres genéricos con lógica demasiado específica.",[740,18734,18735,18736,754,18738,2488,18741,764],{},"Solución: define un contrato claro con ",[22,18737,4663],{},[22,18739,18740],{},"arg",[22,18742,18743],{},"modifiers",[740,18745,18746,18749],{},[958,18747,18748],{},"Asumir que una directiva aplicada sobre un componente “siempre” afecta un único nodo DOM.",[737,18750,18751,18754],{},[740,18752,18753],{},"Por qué pasa: se presupone un único root estable o que el componente “forwardea” atributos\u002Fdirectivas como esperamos.",[740,18755,18756,18757,754,18760,754,18762,18764],{},"Solución: para comportamientos de bajo nivel, prioriza aplicarla a elementos HTML concretos (",[22,18758,18759],{},"input",[22,18761,4978],{},[22,18763,302],{},"). Si la aplicas sobre un componente, asegúrate de que ese componente tenga un root claro y que no rompa el forwarding (casos como múltiples roots o ciertas configuraciones pueden sorprender).",[740,18766,18767,18770],{},[958,18768,18769],{},"Capturar un callback y no actualizarlo.",[737,18771,18772,18781],{},[740,18773,18774,18775,18777,18778,18780],{},"Por qué pasa: se registra un handler en ",[22,18776,1085],{}," que cierra sobre ",[22,18779,18608],{}," inicial. Si el callback cambia, el listener sigue llamando al antiguo.",[740,18782,18783,18784,764],{},"Solución: guarda el callback “vigente” en el elemento y actualízalo en ",[22,18785,9844],{},[740,18787,18788,18793],{},[958,18789,18790,18791,764],{},"Ejecutar trabajo pesado en cada ",[22,18792,9844],{},[737,18794,18795,18798],{},[740,18796,18797],{},"Por qué pasa: falta comparación entre valor anterior y actual.",[740,18799,18800,18801,2488,18803,18805],{},"Solución: salir temprano cuando corresponda (por ejemplo, comparando ",[22,18802,18608],{},[22,18804,18617],{}," cuando aplique).",[34,18807,2736],{"id":2735},[737,18809,18810,18815,18820],{},[740,18811,18812,18814],{},[22,18813,18523],{},": enfoca un input al montar.",[740,18816,18817,18819],{},[22,18818,18535],{},": cierra menú o modal al hacer clic fuera.",[740,18821,18822,18825],{},[22,18823,18824],{},"v-intersect",": dispara callback cuando un bloque entra en el viewport.",[1074,18827,18829,18831],{"id":18828},"v-click-outside-con-callback-actualizable",[22,18830,18535],{}," (con callback actualizable)",[74,18833,18835],{"className":76,"code":18834,"filename":873,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport type { Directive } from \"vue\";\nimport { ref } from \"vue\";\n\ntype ClickOutsideHandler = (event: MouseEvent) => void;\n\ntype ElWithClickOutside = HTMLElement & {\n  __clickOutsideHandler__?: (event: MouseEvent) => void;\n  __clickOutsideCallback__?: ClickOutsideHandler;\n};\n\nconst isOpen = ref(false);\n\nconst vClickOutside: Directive\u003CElWithClickOutside, ClickOutsideHandler> = {\n  mounted(el, binding) {\n    if (typeof binding.value !== \"function\") return;\n\n    \u002F\u002F Guardamos el callback vigente (importante si cambia con el tiempo)\n    el.__clickOutsideCallback__ = binding.value;\n\n    const handler = (event: MouseEvent) => {\n      const target = event.target as Node | null;\n      if (!target) return;\n\n      \u002F\u002F Si el click es fuera del elemento, llamamos al callback actual\n      if (!el.contains(target)) {\n        el.__clickOutsideCallback__?.(event);\n      }\n    };\n\n    el.__clickOutsideHandler__ = handler;\n\n    \u002F\u002F Capture ayuda con overlays \u002F stopPropagation dentro del dropdown\n    document.addEventListener(\"click\", handler, true);\n  },\n\n  updated(el, binding) {\n    \u002F\u002F Mantén el callback al día si cambió\n    if (typeof binding.value === \"function\") {\n      el.__clickOutsideCallback__ = binding.value;\n    }\n  },\n\n  unmounted(el) {\n    if (el.__clickOutsideHandler__) {\n      document.removeEventListener(\"click\", el.__clickOutsideHandler__, true);\n    }\n    delete el.__clickOutsideHandler__;\n    delete el.__clickOutsideCallback__;\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection class=\"dropdown-demo\">\n    \u003Cbutton type=\"button\" @click=\"isOpen = !isOpen\">Alternar menú\u003C\u002Fbutton>\n\n    \u003Cdiv v-if=\"isOpen\" v-click-outside=\"() => (isOpen = false)\">\n      \u003Cp>Panel abierto\u003C\u002Fp>\n      \u003Cp>Haz click fuera para cerrarlo.\u003C\u002Fp>\n    \u003C\u002Fdiv>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[22,18836,18837,18853,18870,18882,18886,18913,18917,18934,18958,18969,18974,18978,18995,18999,19028,19043,19066,19070,19075,19085,19089,19112,19135,19150,19154,19159,19176,19187,19191,19196,19200,19210,19214,19219,19238,19242,19246,19260,19265,19281,19290,19294,19298,19302,19312,19319,19337,19341,19349,19356,19360,19364,19372,19376,19384,19399,19425,19429,19451,19464,19477,19485,19493],{"__ignoreMap":80},[84,18838,18839,18841,18843,18845,18847,18849,18851],{"class":86,"line":87},[84,18840,91],{"class":90},[84,18842,95],{"class":94},[84,18844,99],{"class":98},[84,18846,1161],{"class":98},[84,18848,184],{"class":90},[84,18850,1166],{"class":118},[84,18852,102],{"class":90},[84,18854,18855,18857,18859,18862,18864,18867],{"class":86,"line":105},[84,18856,109],{"class":108},[84,18858,5046],{"class":108},[84,18860,18861],{"class":90}," { Directive } ",[84,18863,115],{"class":108},[84,18865,18866],{"class":118}," \"vue\"",[84,18868,18869],{"class":90},";\n",[84,18871,18872,18874,18876,18878,18880],{"class":86,"line":122},[84,18873,109],{"class":108},[84,18875,112],{"class":90},[84,18877,115],{"class":108},[84,18879,18866],{"class":118},[84,18881,18869],{"class":90},[84,18883,18884],{"class":86,"line":129},[84,18885,126],{"emptyLinePlaceholder":125},[84,18887,18888,18890,18893,18895,18897,18899,18901,18904,18906,18908,18911],{"class":86,"line":154},[84,18889,1188],{"class":108},[84,18891,18892],{"class":98}," ClickOutsideHandler",[84,18894,139],{"class":108},[84,18896,1341],{"class":90},[84,18898,3123],{"class":429},[84,18900,1203],{"class":108},[84,18902,18903],{"class":98}," MouseEvent",[84,18905,3126],{"class":90},[84,18907,172],{"class":108},[84,18909,18910],{"class":135}," void",[84,18912,18869],{"class":90},[84,18914,18915],{"class":86,"line":159},[84,18916,126],{"emptyLinePlaceholder":125},[84,18918,18919,18921,18924,18926,18929,18932],{"class":86,"line":178},[84,18920,1188],{"class":108},[84,18922,18923],{"class":98}," ElWithClickOutside",[84,18925,139],{"class":108},[84,18927,18928],{"class":98}," HTMLElement",[84,18930,18931],{"class":108}," &",[84,18933,175],{"class":90},[84,18935,18936,18939,18942,18944,18946,18948,18950,18952,18954,18956],{"class":86,"line":190},[84,18937,18938],{"class":98},"  __clickOutsideHandler__",[84,18940,18941],{"class":108},"?:",[84,18943,1341],{"class":90},[84,18945,3123],{"class":429},[84,18947,1203],{"class":108},[84,18949,18903],{"class":98},[84,18951,3126],{"class":90},[84,18953,172],{"class":108},[84,18955,18910],{"class":135},[84,18957,18869],{"class":90},[84,18959,18960,18963,18965,18967],{"class":86,"line":196},[84,18961,18962],{"class":429},"  __clickOutsideCallback__",[84,18964,18941],{"class":108},[84,18966,18892],{"class":98},[84,18968,18869],{"class":90},[84,18970,18971],{"class":86,"line":201},[84,18972,18973],{"class":90},"};\n",[84,18975,18976],{"class":86,"line":217},[84,18977,126],{"emptyLinePlaceholder":125},[84,18979,18980,18982,18984,18986,18988,18990,18992],{"class":86,"line":227},[84,18981,132],{"class":108},[84,18983,136],{"class":135},[84,18985,139],{"class":108},[84,18987,142],{"class":98},[84,18989,145],{"class":90},[84,18991,148],{"class":135},[84,18993,18994],{"class":90},");\n",[84,18996,18997],{"class":86,"line":232},[84,18998,126],{"emptyLinePlaceholder":125},[84,19000,19001,19003,19006,19008,19011,19013,19016,19018,19021,19024,19026],{"class":86,"line":237},[84,19002,132],{"class":108},[84,19004,19005],{"class":135}," vClickOutside",[84,19007,1203],{"class":108},[84,19009,19010],{"class":98}," Directive",[84,19012,91],{"class":90},[84,19014,19015],{"class":98},"ElWithClickOutside",[84,19017,754],{"class":90},[84,19019,19020],{"class":98},"ClickOutsideHandler",[84,19022,19023],{"class":90},"> ",[84,19025,184],{"class":108},[84,19027,175],{"class":90},[84,19029,19030,19032,19034,19037,19039,19041],{"class":86,"line":253},[84,19031,7551],{"class":98},[84,19033,145],{"class":90},[84,19035,19036],{"class":429},"el",[84,19038,754],{"class":90},[84,19040,18600],{"class":429},[84,19042,438],{"class":90},[84,19044,19045,19047,19049,19051,19054,19056,19059,19061,19064],{"class":86,"line":266},[84,19046,2146],{"class":108},[84,19048,1341],{"class":90},[84,19050,6552],{"class":108},[84,19052,19053],{"class":90}," binding.value ",[84,19055,6848],{"class":108},[84,19057,19058],{"class":118}," \"function\"",[84,19060,3126],{"class":90},[84,19062,19063],{"class":108},"return",[84,19065,18869],{"class":90},[84,19067,19068],{"class":86,"line":271},[84,19069,126],{"emptyLinePlaceholder":125},[84,19071,19072],{"class":86,"line":281},[84,19073,19074],{"class":13481},"    \u002F\u002F Guardamos el callback vigente (importante si cambia con el tiempo)\n",[84,19076,19077,19080,19082],{"class":86,"line":286},[84,19078,19079],{"class":90},"    el.__clickOutsideCallback__ ",[84,19081,184],{"class":108},[84,19083,19084],{"class":90}," binding.value;\n",[84,19086,19087],{"class":86,"line":296},[84,19088,126],{"emptyLinePlaceholder":125},[84,19090,19091,19093,19096,19098,19100,19102,19104,19106,19108,19110],{"class":86,"line":315},[84,19092,3021],{"class":108},[84,19094,19095],{"class":98}," handler",[84,19097,139],{"class":108},[84,19099,1341],{"class":90},[84,19101,3123],{"class":429},[84,19103,1203],{"class":108},[84,19105,18903],{"class":98},[84,19107,3126],{"class":90},[84,19109,172],{"class":108},[84,19111,175],{"class":90},[84,19113,19114,19116,19119,19121,19124,19126,19129,19131,19133],{"class":86,"line":321},[84,19115,1964],{"class":108},[84,19117,19118],{"class":135}," target",[84,19120,139],{"class":108},[84,19122,19123],{"class":90}," event.target ",[84,19125,1397],{"class":108},[84,19127,19128],{"class":98}," Node",[84,19130,1261],{"class":108},[84,19132,1264],{"class":135},[84,19134,18869],{"class":90},[84,19136,19137,19139,19141,19143,19146,19148],{"class":86,"line":331},[84,19138,1987],{"class":108},[84,19140,1341],{"class":90},[84,19142,1344],{"class":108},[84,19144,19145],{"class":90},"target) ",[84,19147,19063],{"class":108},[84,19149,18869],{"class":90},[84,19151,19152],{"class":86,"line":336},[84,19153,126],{"emptyLinePlaceholder":125},[84,19155,19156],{"class":86,"line":354},[84,19157,19158],{"class":13481},"      \u002F\u002F Si el click es fuera del elemento, llamamos al callback actual\n",[84,19160,19161,19163,19165,19167,19170,19173],{"class":86,"line":360},[84,19162,1987],{"class":108},[84,19164,1341],{"class":90},[84,19166,1344],{"class":108},[84,19168,19169],{"class":90},"el.",[84,19171,19172],{"class":98},"contains",[84,19174,19175],{"class":90},"(target)) {\n",[84,19177,19178,19181,19184],{"class":86,"line":369},[84,19179,19180],{"class":90},"        el.",[84,19182,19183],{"class":98},"__clickOutsideCallback__",[84,19185,19186],{"class":90},"?.(event);\n",[84,19188,19189],{"class":86,"line":1453},[84,19190,2013],{"class":90},[84,19192,19193],{"class":86,"line":1462},[84,19194,19195],{"class":90},"    };\n",[84,19197,19198],{"class":86,"line":1484},[84,19199,126],{"emptyLinePlaceholder":125},[84,19201,19202,19205,19207],{"class":86,"line":1489},[84,19203,19204],{"class":90},"    el.__clickOutsideHandler__ ",[84,19206,184],{"class":108},[84,19208,19209],{"class":90}," handler;\n",[84,19211,19212],{"class":86,"line":1495},[84,19213,126],{"emptyLinePlaceholder":125},[84,19215,19216],{"class":86,"line":1500},[84,19217,19218],{"class":13481},"    \u002F\u002F Capture ayuda con overlays \u002F stopPropagation dentro del dropdown\n",[84,19220,19221,19224,19226,19228,19231,19234,19236],{"class":86,"line":1516},[84,19222,19223],{"class":90},"    document.",[84,19225,9013],{"class":98},[84,19227,145],{"class":90},[84,19229,19230],{"class":118},"\"click\"",[84,19232,19233],{"class":90},", handler, ",[84,19235,2938],{"class":135},[84,19237,18994],{"class":90},[84,19239,19240],{"class":86,"line":1533},[84,19241,1941],{"class":90},[84,19243,19244],{"class":86,"line":1538},[84,19245,126],{"emptyLinePlaceholder":125},[84,19247,19248,19250,19252,19254,19256,19258],{"class":86,"line":1545},[84,19249,11072],{"class":98},[84,19251,145],{"class":90},[84,19253,19036],{"class":429},[84,19255,754],{"class":90},[84,19257,18600],{"class":429},[84,19259,438],{"class":90},[84,19261,19262],{"class":86,"line":1554},[84,19263,19264],{"class":13481},"    \u002F\u002F Mantén el callback al día si cambió\n",[84,19266,19267,19269,19271,19273,19275,19277,19279],{"class":86,"line":1563},[84,19268,2146],{"class":108},[84,19270,1341],{"class":90},[84,19272,6552],{"class":108},[84,19274,19053],{"class":90},[84,19276,3288],{"class":108},[84,19278,19058],{"class":118},[84,19280,438],{"class":90},[84,19282,19283,19286,19288],{"class":86,"line":1570},[84,19284,19285],{"class":90},"      el.__clickOutsideCallback__ ",[84,19287,184],{"class":108},[84,19289,19084],{"class":90},[84,19291,19292],{"class":86,"line":1588},[84,19293,1936],{"class":90},[84,19295,19296],{"class":86,"line":1593},[84,19297,1941],{"class":90},[84,19299,19300],{"class":86,"line":1598},[84,19301,126],{"emptyLinePlaceholder":125},[84,19303,19304,19306,19308,19310],{"class":86,"line":1607},[84,19305,9429],{"class":98},[84,19307,145],{"class":90},[84,19309,19036],{"class":429},[84,19311,438],{"class":90},[84,19313,19314,19316],{"class":86,"line":1612},[84,19315,2146],{"class":108},[84,19317,19318],{"class":90}," (el.__clickOutsideHandler__) {\n",[84,19320,19321,19324,19326,19328,19330,19333,19335],{"class":86,"line":1621},[84,19322,19323],{"class":90},"      document.",[84,19325,9069],{"class":98},[84,19327,145],{"class":90},[84,19329,19230],{"class":118},[84,19331,19332],{"class":90},", el.__clickOutsideHandler__, ",[84,19334,2938],{"class":135},[84,19336,18994],{"class":90},[84,19338,19339],{"class":86,"line":1639},[84,19340,1936],{"class":90},[84,19342,19343,19346],{"class":86,"line":1661},[84,19344,19345],{"class":108},"    delete",[84,19347,19348],{"class":90}," el.__clickOutsideHandler__;\n",[84,19350,19351,19353],{"class":86,"line":1666},[84,19352,19345],{"class":108},[84,19354,19355],{"class":90}," el.__clickOutsideCallback__;\n",[84,19357,19358],{"class":86,"line":1688},[84,19359,1941],{"class":90},[84,19361,19362],{"class":86,"line":1703},[84,19363,18973],{"class":90},[84,19365,19366,19368,19370],{"class":86,"line":1717},[84,19367,274],{"class":90},[84,19369,95],{"class":94},[84,19371,102],{"class":90},[84,19373,19374],{"class":86,"line":1731},[84,19375,126],{"emptyLinePlaceholder":125},[84,19377,19378,19380,19382],{"class":86,"line":1741},[84,19379,91],{"class":90},[84,19381,291],{"class":94},[84,19383,102],{"class":90},[84,19385,19386,19388,19390,19392,19394,19397],{"class":86,"line":1746},[84,19387,299],{"class":90},[84,19389,4898],{"class":94},[84,19391,1629],{"class":98},[84,19393,184],{"class":90},[84,19395,19396],{"class":118},"\"dropdown-demo\"",[84,19398,102],{"class":90},[84,19400,19401,19403,19405,19407,19409,19411,19413,19415,19418,19421,19423],{"class":86,"line":1763},[84,19402,1642],{"class":90},[84,19404,302],{"class":94},[84,19406,5046],{"class":98},[84,19408,184],{"class":90},[84,19410,5051],{"class":118},[84,19412,305],{"class":98},[84,19414,184],{"class":90},[84,19416,19417],{"class":118},"\"isOpen = !isOpen\"",[84,19419,19420],{"class":90},">Alternar menú\u003C\u002F",[84,19422,302],{"class":94},[84,19424,102],{"class":90},[84,19426,19427],{"class":86,"line":1772},[84,19428,126],{"emptyLinePlaceholder":125},[84,19430,19431,19433,19435,19437,19439,19441,19444,19446,19449],{"class":86,"line":2283},[84,19432,1642],{"class":90},[84,19434,4978],{"class":94},[84,19436,344],{"class":98},[84,19438,184],{"class":90},[84,19440,349],{"class":118},[84,19442,19443],{"class":98}," v-click-outside",[84,19445,184],{"class":90},[84,19447,19448],{"class":118},"\"() => (isOpen = false)\"",[84,19450,102],{"class":90},[84,19452,19453,19455,19457,19460,19462],{"class":86,"line":2288},[84,19454,1691],{"class":90},[84,19456,15],{"class":94},[84,19458,19459],{"class":90},">Panel abierto\u003C\u002F",[84,19461,15],{"class":94},[84,19463,102],{"class":90},[84,19465,19466,19468,19470,19473,19475],{"class":86,"line":2307},[84,19467,1691],{"class":90},[84,19469,15],{"class":94},[84,19471,19472],{"class":90},">Haz click fuera para cerrarlo.\u003C\u002F",[84,19474,15],{"class":94},[84,19476,102],{"class":90},[84,19478,19479,19481,19483],{"class":86,"line":2320},[84,19480,1734],{"class":90},[84,19482,4978],{"class":94},[84,19484,102],{"class":90},[84,19486,19487,19489,19491],{"class":86,"line":2333},[84,19488,324],{"class":90},[84,19490,4898],{"class":94},[84,19492,102],{"class":90},[84,19494,19495,19497,19499],{"class":86,"line":2346},[84,19496,274],{"class":90},[84,19498,291],{"class":94},[84,19500,102],{"class":90},[74,19502,19504],{"className":76,"code":19503,"filename":1782,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  name: \"ClickOutsideExample\",\n  data() {\n    return {\n      isOpen: false,\n    };\n  },\n  directives: {\n    clickOutside: {\n      mounted(el, binding) {\n        if (typeof binding.value !== \"function\") return;\n\n        el.__clickOutsideCallback__ = binding.value;\n\n        el.__clickOutsideHandler__ = (event) => {\n          const target = event.target;\n          if (target && !el.contains(target)) {\n            el.__clickOutsideCallback__?.(event);\n          }\n        };\n\n        document.addEventListener(\"click\", el.__clickOutsideHandler__, true);\n      },\n      updated(el, binding) {\n        if (typeof binding.value === \"function\") {\n          el.__clickOutsideCallback__ = binding.value;\n        }\n      },\n      unmounted(el) {\n        if (el.__clickOutsideHandler__) {\n          document.removeEventListener(\"click\", el.__clickOutsideHandler__, true);\n        }\n        delete el.__clickOutsideHandler__;\n        delete el.__clickOutsideCallback__;\n      },\n    },\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection class=\"dropdown-demo\">\n    \u003Cbutton type=\"button\" @click=\"isOpen = !isOpen\">Alternar menú\u003C\u002Fbutton>\n\n    \u003Cdiv v-if=\"isOpen\" v-click-outside=\"() => (isOpen = false)\">\n      \u003Cp>Panel abierto\u003C\u002Fp>\n      \u003Cp>Haz click fuera para cerrarlo.\u003C\u002Fp>\n    \u003C\u002Fdiv>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[22,19505,19506,19514,19522,19531,19537,19543,19552,19556,19560,19565,19570,19585,19605,19609,19618,19622,19641,19653,19671,19680,19685,19690,19694,19711,19715,19730,19746,19755,19759,19763,19774,19780,19797,19801,19808,19814,19818,19822,19826,19830,19838,19842,19850,19864,19888,19892,19912,19924,19936,19944,19952],{"__ignoreMap":80},[84,19507,19508,19510,19512],{"class":86,"line":87},[84,19509,91],{"class":90},[84,19511,95],{"class":94},[84,19513,102],{"class":90},[84,19515,19516,19518,19520],{"class":86,"line":105},[84,19517,418],{"class":108},[84,19519,1870],{"class":108},[84,19521,175],{"class":90},[84,19523,19524,19526,19529],{"class":86,"line":122},[84,19525,1881],{"class":90},[84,19527,19528],{"class":118},"\"ClickOutsideExample\"",[84,19530,1887],{"class":90},[84,19532,19533,19535],{"class":86,"line":129},[84,19534,1896],{"class":98},[84,19536,1307],{"class":90},[84,19538,19539,19541],{"class":86,"line":154},[84,19540,1903],{"class":108},[84,19542,175],{"class":90},[84,19544,19545,19548,19550],{"class":86,"line":159},[84,19546,19547],{"class":90},"      isOpen: ",[84,19549,148],{"class":135},[84,19551,1887],{"class":90},[84,19553,19554],{"class":86,"line":178},[84,19555,19195],{"class":90},[84,19557,19558],{"class":86,"line":190},[84,19559,1941],{"class":90},[84,19561,19562],{"class":86,"line":196},[84,19563,19564],{"class":90},"  directives: {\n",[84,19566,19567],{"class":86,"line":201},[84,19568,19569],{"class":90},"    clickOutside: {\n",[84,19571,19572,19575,19577,19579,19581,19583],{"class":86,"line":217},[84,19573,19574],{"class":98},"      mounted",[84,19576,145],{"class":90},[84,19578,19036],{"class":429},[84,19580,754],{"class":90},[84,19582,18600],{"class":429},[84,19584,438],{"class":90},[84,19586,19587,19589,19591,19593,19595,19597,19599,19601,19603],{"class":86,"line":227},[84,19588,9603],{"class":108},[84,19590,1341],{"class":90},[84,19592,6552],{"class":108},[84,19594,19053],{"class":90},[84,19596,6848],{"class":108},[84,19598,19058],{"class":118},[84,19600,3126],{"class":90},[84,19602,19063],{"class":108},[84,19604,18869],{"class":90},[84,19606,19607],{"class":86,"line":232},[84,19608,126],{"emptyLinePlaceholder":125},[84,19610,19611,19614,19616],{"class":86,"line":237},[84,19612,19613],{"class":90},"        el.__clickOutsideCallback__ ",[84,19615,184],{"class":108},[84,19617,19084],{"class":90},[84,19619,19620],{"class":86,"line":253},[84,19621,126],{"emptyLinePlaceholder":125},[84,19623,19624,19626,19629,19631,19633,19635,19637,19639],{"class":86,"line":266},[84,19625,19180],{"class":90},[84,19627,19628],{"class":98},"__clickOutsideHandler__",[84,19630,139],{"class":108},[84,19632,1341],{"class":90},[84,19634,3123],{"class":429},[84,19636,3126],{"class":90},[84,19638,172],{"class":108},[84,19640,175],{"class":90},[84,19642,19643,19646,19648,19650],{"class":86,"line":271},[84,19644,19645],{"class":108},"          const",[84,19647,19118],{"class":135},[84,19649,139],{"class":108},[84,19651,19652],{"class":90}," event.target;\n",[84,19654,19655,19658,19661,19663,19665,19667,19669],{"class":86,"line":281},[84,19656,19657],{"class":108},"          if",[84,19659,19660],{"class":90}," (target ",[84,19662,3096],{"class":108},[84,19664,260],{"class":108},[84,19666,19169],{"class":90},[84,19668,19172],{"class":98},[84,19670,19175],{"class":90},[84,19672,19673,19676,19678],{"class":86,"line":286},[84,19674,19675],{"class":90},"            el.",[84,19677,19183],{"class":98},[84,19679,19186],{"class":90},[84,19681,19682],{"class":86,"line":296},[84,19683,19684],{"class":90},"          }\n",[84,19686,19687],{"class":86,"line":315},[84,19688,19689],{"class":90},"        };\n",[84,19691,19692],{"class":86,"line":321},[84,19693,126],{"emptyLinePlaceholder":125},[84,19695,19696,19699,19701,19703,19705,19707,19709],{"class":86,"line":331},[84,19697,19698],{"class":90},"        document.",[84,19700,9013],{"class":98},[84,19702,145],{"class":90},[84,19704,19230],{"class":118},[84,19706,19332],{"class":90},[84,19708,2938],{"class":135},[84,19710,18994],{"class":90},[84,19712,19713],{"class":86,"line":336},[84,19714,3414],{"class":90},[84,19716,19717,19720,19722,19724,19726,19728],{"class":86,"line":354},[84,19718,19719],{"class":98},"      updated",[84,19721,145],{"class":90},[84,19723,19036],{"class":429},[84,19725,754],{"class":90},[84,19727,18600],{"class":429},[84,19729,438],{"class":90},[84,19731,19732,19734,19736,19738,19740,19742,19744],{"class":86,"line":360},[84,19733,9603],{"class":108},[84,19735,1341],{"class":90},[84,19737,6552],{"class":108},[84,19739,19053],{"class":90},[84,19741,3288],{"class":108},[84,19743,19058],{"class":118},[84,19745,438],{"class":90},[84,19747,19748,19751,19753],{"class":86,"line":369},[84,19749,19750],{"class":90},"          el.__clickOutsideCallback__ ",[84,19752,184],{"class":108},[84,19754,19084],{"class":90},[84,19756,19757],{"class":86,"line":1453},[84,19758,9629],{"class":90},[84,19760,19761],{"class":86,"line":1462},[84,19762,3414],{"class":90},[84,19764,19765,19768,19770,19772],{"class":86,"line":1484},[84,19766,19767],{"class":98},"      unmounted",[84,19769,145],{"class":90},[84,19771,19036],{"class":429},[84,19773,438],{"class":90},[84,19775,19776,19778],{"class":86,"line":1489},[84,19777,9603],{"class":108},[84,19779,19318],{"class":90},[84,19781,19782,19785,19787,19789,19791,19793,19795],{"class":86,"line":1495},[84,19783,19784],{"class":90},"          document.",[84,19786,9069],{"class":98},[84,19788,145],{"class":90},[84,19790,19230],{"class":118},[84,19792,19332],{"class":90},[84,19794,2938],{"class":135},[84,19796,18994],{"class":90},[84,19798,19799],{"class":86,"line":1500},[84,19800,9629],{"class":90},[84,19802,19803,19806],{"class":86,"line":1516},[84,19804,19805],{"class":108},"        delete",[84,19807,19348],{"class":90},[84,19809,19810,19812],{"class":86,"line":1533},[84,19811,19805],{"class":108},[84,19813,19355],{"class":90},[84,19815,19816],{"class":86,"line":1538},[84,19817,3414],{"class":90},[84,19819,19820],{"class":86,"line":1545},[84,19821,7783],{"class":90},[84,19823,19824],{"class":86,"line":1554},[84,19825,1941],{"class":90},[84,19827,19828],{"class":86,"line":1563},[84,19829,18973],{"class":90},[84,19831,19832,19834,19836],{"class":86,"line":1570},[84,19833,274],{"class":90},[84,19835,95],{"class":94},[84,19837,102],{"class":90},[84,19839,19840],{"class":86,"line":1588},[84,19841,126],{"emptyLinePlaceholder":125},[84,19843,19844,19846,19848],{"class":86,"line":1593},[84,19845,91],{"class":90},[84,19847,291],{"class":94},[84,19849,102],{"class":90},[84,19851,19852,19854,19856,19858,19860,19862],{"class":86,"line":1598},[84,19853,299],{"class":90},[84,19855,4898],{"class":94},[84,19857,1629],{"class":98},[84,19859,184],{"class":90},[84,19861,19396],{"class":118},[84,19863,102],{"class":90},[84,19865,19866,19868,19870,19872,19874,19876,19878,19880,19882,19884,19886],{"class":86,"line":1607},[84,19867,1642],{"class":90},[84,19869,302],{"class":94},[84,19871,5046],{"class":98},[84,19873,184],{"class":90},[84,19875,5051],{"class":118},[84,19877,305],{"class":98},[84,19879,184],{"class":90},[84,19881,19417],{"class":118},[84,19883,19420],{"class":90},[84,19885,302],{"class":94},[84,19887,102],{"class":90},[84,19889,19890],{"class":86,"line":1612},[84,19891,126],{"emptyLinePlaceholder":125},[84,19893,19894,19896,19898,19900,19902,19904,19906,19908,19910],{"class":86,"line":1621},[84,19895,1642],{"class":90},[84,19897,4978],{"class":94},[84,19899,344],{"class":98},[84,19901,184],{"class":90},[84,19903,349],{"class":118},[84,19905,19443],{"class":98},[84,19907,184],{"class":90},[84,19909,19448],{"class":118},[84,19911,102],{"class":90},[84,19913,19914,19916,19918,19920,19922],{"class":86,"line":1639},[84,19915,1691],{"class":90},[84,19917,15],{"class":94},[84,19919,19459],{"class":90},[84,19921,15],{"class":94},[84,19923,102],{"class":90},[84,19925,19926,19928,19930,19932,19934],{"class":86,"line":1661},[84,19927,1691],{"class":90},[84,19929,15],{"class":94},[84,19931,19472],{"class":90},[84,19933,15],{"class":94},[84,19935,102],{"class":90},[84,19937,19938,19940,19942],{"class":86,"line":1666},[84,19939,1734],{"class":90},[84,19941,4978],{"class":94},[84,19943,102],{"class":90},[84,19945,19946,19948,19950],{"class":86,"line":1688},[84,19947,324],{"class":90},[84,19949,4898],{"class":94},[84,19951,102],{"class":90},[84,19953,19954,19956,19958],{"class":86,"line":1703},[84,19955,274],{"class":90},[84,19957,291],{"class":94},[84,19959,102],{"class":90},[823,19961,19962],{},[15,19963,995,19964,19967,19968,19971,19972,19975,19976,16627,19979,2686],{},[22,19965,19966],{},"\u003Cscript setup>",", cualquier variable ",[958,19969,19970],{},"camelCase"," que empiece por ",[22,19973,19974],{},"v"," puede usarse como directiva (",[22,19977,19978],{},"vClickOutside",[22,19980,18535],{},[34,19982,19984],{"id":19983},"más-ejemplos-útiles","Más ejemplos útiles",[1074,19986,19988,19990],{"id":19987},"v-autofocus-básico-y-práctico",[22,19989,18523],{}," (básico y práctico)",[74,19992,19997],{"className":19993,"code":19994,"filename":19995,"language":19996,"meta":80,"style":80},"language-ts shiki shiki-themes github-light github-dark","import type { Directive } from \"vue\";\n\nexport const vAutofocus: Directive\u003CHTMLElement, boolean | undefined> = {\n  mounted(el, binding) {\n    \u002F\u002F v-autofocus=\"false\" desactiva el comportamiento\n    if (binding.value === false) return;\n\n    \u002F\u002F En inputs\u002Ftextarea suele ser lo esperado\n    if (typeof (el as any).focus === \"function\") {\n      (el as any).focus();\n    }\n  },\n};\n","main.ts","ts",[22,19998,19999,20013,20017,20052,20066,20071,20088,20092,20097,20122,20138,20142,20146],{"__ignoreMap":80},[84,20000,20001,20003,20005,20007,20009,20011],{"class":86,"line":87},[84,20002,109],{"class":108},[84,20004,5046],{"class":108},[84,20006,18861],{"class":90},[84,20008,115],{"class":108},[84,20010,18866],{"class":118},[84,20012,18869],{"class":90},[84,20014,20015],{"class":86,"line":105},[84,20016,126],{"emptyLinePlaceholder":125},[84,20018,20019,20021,20024,20027,20029,20031,20033,20036,20038,20041,20043,20046,20048,20050],{"class":86,"line":122},[84,20020,418],{"class":108},[84,20022,20023],{"class":108}," const",[84,20025,20026],{"class":135}," vAutofocus",[84,20028,1203],{"class":108},[84,20030,19010],{"class":98},[84,20032,91],{"class":90},[84,20034,20035],{"class":98},"HTMLElement",[84,20037,754],{"class":90},[84,20039,20040],{"class":135},"boolean",[84,20042,1261],{"class":108},[84,20044,20045],{"class":135}," undefined",[84,20047,19023],{"class":90},[84,20049,184],{"class":108},[84,20051,175],{"class":90},[84,20053,20054,20056,20058,20060,20062,20064],{"class":86,"line":129},[84,20055,7551],{"class":98},[84,20057,145],{"class":90},[84,20059,19036],{"class":429},[84,20061,754],{"class":90},[84,20063,18600],{"class":429},[84,20065,438],{"class":90},[84,20067,20068],{"class":86,"line":154},[84,20069,20070],{"class":13481},"    \u002F\u002F v-autofocus=\"false\" desactiva el comportamiento\n",[84,20072,20073,20075,20078,20080,20082,20084,20086],{"class":86,"line":159},[84,20074,2146],{"class":108},[84,20076,20077],{"class":90}," (binding.value ",[84,20079,3288],{"class":108},[84,20081,435],{"class":135},[84,20083,3126],{"class":90},[84,20085,19063],{"class":108},[84,20087,18869],{"class":90},[84,20089,20090],{"class":86,"line":178},[84,20091,126],{"emptyLinePlaceholder":125},[84,20093,20094],{"class":86,"line":190},[84,20095,20096],{"class":13481},"    \u002F\u002F En inputs\u002Ftextarea suele ser lo esperado\n",[84,20098,20099,20101,20103,20105,20108,20110,20113,20116,20118,20120],{"class":86,"line":196},[84,20100,2146],{"class":108},[84,20102,1341],{"class":90},[84,20104,6552],{"class":108},[84,20106,20107],{"class":90}," (el ",[84,20109,1397],{"class":108},[84,20111,20112],{"class":135}," any",[84,20114,20115],{"class":90},").focus ",[84,20117,3288],{"class":108},[84,20119,19058],{"class":118},[84,20121,438],{"class":90},[84,20123,20124,20127,20129,20131,20133,20135],{"class":86,"line":201},[84,20125,20126],{"class":90},"      (el ",[84,20128,1397],{"class":108},[84,20130,20112],{"class":135},[84,20132,2686],{"class":90},[84,20134,12222],{"class":98},[84,20136,20137],{"class":90},"();\n",[84,20139,20140],{"class":86,"line":217},[84,20141,1936],{"class":90},[84,20143,20144],{"class":86,"line":227},[84,20145,1941],{"class":90},[84,20147,20148],{"class":86,"line":232},[84,20149,18973],{"class":90},[74,20151,20154],{"className":394,"code":20152,"filename":20153,"language":397,"meta":80,"style":80},"export const vAutofocus = {\n  mounted(el, binding) {\n    \u002F\u002F v-autofocus=\"false\" desactiva el comportamiento\n    if (binding.value === false) return;\n    \u002F\u002F En inputs\u002Ftextarea suele ser lo esperado\n    if (typeof el.focus === \"function\") {\n      el.focus();\n    }\n  },\n};\n","main.js",[22,20155,20156,20168,20182,20186,20202,20206,20223,20232,20236,20240],{"__ignoreMap":80},[84,20157,20158,20160,20162,20164,20166],{"class":86,"line":87},[84,20159,418],{"class":108},[84,20161,20023],{"class":108},[84,20163,20026],{"class":135},[84,20165,139],{"class":108},[84,20167,175],{"class":90},[84,20169,20170,20172,20174,20176,20178,20180],{"class":86,"line":105},[84,20171,7551],{"class":98},[84,20173,145],{"class":90},[84,20175,19036],{"class":429},[84,20177,754],{"class":90},[84,20179,18600],{"class":429},[84,20181,438],{"class":90},[84,20183,20184],{"class":86,"line":122},[84,20185,20070],{"class":13481},[84,20187,20188,20190,20192,20194,20196,20198,20200],{"class":86,"line":129},[84,20189,2146],{"class":108},[84,20191,20077],{"class":90},[84,20193,3288],{"class":108},[84,20195,435],{"class":135},[84,20197,3126],{"class":90},[84,20199,19063],{"class":108},[84,20201,18869],{"class":90},[84,20203,20204],{"class":86,"line":154},[84,20205,20096],{"class":13481},[84,20207,20208,20210,20212,20214,20217,20219,20221],{"class":86,"line":159},[84,20209,2146],{"class":108},[84,20211,1341],{"class":90},[84,20213,6552],{"class":108},[84,20215,20216],{"class":90}," el.focus ",[84,20218,3288],{"class":108},[84,20220,19058],{"class":118},[84,20222,438],{"class":90},[84,20224,20225,20228,20230],{"class":86,"line":178},[84,20226,20227],{"class":90},"      el.",[84,20229,12222],{"class":98},[84,20231,20137],{"class":90},[84,20233,20234],{"class":86,"line":190},[84,20235,1936],{"class":90},[84,20237,20238],{"class":86,"line":196},[84,20239,1941],{"class":90},[84,20241,20242],{"class":86,"line":201},[84,20243,18973],{"class":90},[74,20245,20247],{"className":76,"code":20246,"filename":10092,"language":79,"meta":80,"style":80},"\u003Cinput v-autofocus \u002F>\n\u003Cinput v-autofocus=\"isDesktop\" \u002F>\n",[22,20248,20249,20260],{"__ignoreMap":80},[84,20250,20251,20253,20255,20258],{"class":86,"line":87},[84,20252,91],{"class":90},[84,20254,18759],{"class":94},[84,20256,20257],{"class":98}," v-autofocus",[84,20259,5100],{"class":90},[84,20261,20262,20264,20266,20268,20270,20272,20275,20277],{"class":86,"line":105},[84,20263,91],{"class":90},[84,20265,18759],{"class":94},[84,20267,20257],{"class":98},[84,20269,184],{"class":90},[84,20271,1678],{"class":118},[84,20273,20274],{"class":90},"isDesktop",[84,20276,1678],{"class":118},[84,20278,5100],{"class":90},[1074,20280,20282,20284],{"id":20281},"v-intersect-intersectionobserver",[22,20283,18824],{}," (IntersectionObserver)",[74,20286,20288],{"className":19993,"code":20287,"filename":19995,"language":19996,"meta":80,"style":80},"import type { Directive } from \"vue\";\n\ntype IntersectValue = {\n  onEnter?: (entry: IntersectionObserverEntry) => void;\n  onLeave?: (entry: IntersectionObserverEntry) => void;\n  options?: IntersectionObserverInit;\n};\n\ntype ElWithObserver = HTMLElement & { __io__?: IntersectionObserver };\n\nexport const vIntersect: Directive\u003CElWithObserver, IntersectValue> = {\n  mounted(el, binding) {\n    const { onEnter, onLeave, options } = binding.value ?? {};\n\n    const io = new IntersectionObserver((entries) => {\n      for (const entry of entries) {\n        if (entry.isIntersecting) onEnter?.(entry);\n        else onLeave?.(entry);\n      }\n    }, options);\n\n    io.observe(el);\n    el.__io__ = io;\n  },\n  updated(el, binding) {\n    \u002F\u002F Si cambian options de forma dinámica, lo más seguro es recrear el observer\n    \u002F\u002F (micro-optimización: solo recrear si realmente cambian)\n    \u002F\u002F Aquí lo dejamos simple y explícito:\n    el.__io__?.disconnect();\n    delete el.__io__;\n    const { onEnter, onLeave, options } = binding.value ?? {};\n    const io = new IntersectionObserver((entries) => {\n      for (const entry of entries) {\n        if (entry.isIntersecting) onEnter?.(entry);\n        else onLeave?.(entry);\n      }\n    }, options);\n    io.observe(el);\n    el.__io__ = io;\n  },\n  unmounted(el) {\n    el.__io__?.disconnect();\n    delete el.__io__;\n  },\n};\n",[22,20289,20290,20304,20308,20319,20344,20367,20379,20383,20387,20413,20417,20446,20460,20489,20493,20517,20534,20546,20556,20560,20565,20569,20580,20590,20594,20608,20613,20618,20623,20633,20640,20666,20688,20702,20712,20720,20724,20728,20736,20744,20748,20758,20766,20772,20776],{"__ignoreMap":80},[84,20291,20292,20294,20296,20298,20300,20302],{"class":86,"line":87},[84,20293,109],{"class":108},[84,20295,5046],{"class":108},[84,20297,18861],{"class":90},[84,20299,115],{"class":108},[84,20301,18866],{"class":118},[84,20303,18869],{"class":90},[84,20305,20306],{"class":86,"line":105},[84,20307,126],{"emptyLinePlaceholder":125},[84,20309,20310,20312,20315,20317],{"class":86,"line":122},[84,20311,1188],{"class":108},[84,20313,20314],{"class":98}," IntersectValue",[84,20316,139],{"class":108},[84,20318,175],{"class":90},[84,20320,20321,20324,20326,20328,20331,20333,20336,20338,20340,20342],{"class":86,"line":129},[84,20322,20323],{"class":98},"  onEnter",[84,20325,18941],{"class":108},[84,20327,1341],{"class":90},[84,20329,20330],{"class":429},"entry",[84,20332,1203],{"class":108},[84,20334,20335],{"class":98}," IntersectionObserverEntry",[84,20337,3126],{"class":90},[84,20339,172],{"class":108},[84,20341,18910],{"class":135},[84,20343,18869],{"class":90},[84,20345,20346,20349,20351,20353,20355,20357,20359,20361,20363,20365],{"class":86,"line":154},[84,20347,20348],{"class":98},"  onLeave",[84,20350,18941],{"class":108},[84,20352,1341],{"class":90},[84,20354,20330],{"class":429},[84,20356,1203],{"class":108},[84,20358,20335],{"class":98},[84,20360,3126],{"class":90},[84,20362,172],{"class":108},[84,20364,18910],{"class":135},[84,20366,18869],{"class":90},[84,20368,20369,20372,20374,20377],{"class":86,"line":159},[84,20370,20371],{"class":429},"  options",[84,20373,18941],{"class":108},[84,20375,20376],{"class":98}," IntersectionObserverInit",[84,20378,18869],{"class":90},[84,20380,20381],{"class":86,"line":178},[84,20382,18973],{"class":90},[84,20384,20385],{"class":86,"line":190},[84,20386,126],{"emptyLinePlaceholder":125},[84,20388,20389,20391,20394,20396,20398,20400,20402,20405,20407,20410],{"class":86,"line":196},[84,20390,1188],{"class":108},[84,20392,20393],{"class":98}," ElWithObserver",[84,20395,139],{"class":108},[84,20397,18928],{"class":98},[84,20399,18931],{"class":108},[84,20401,6763],{"class":90},[84,20403,20404],{"class":429},"__io__",[84,20406,18941],{"class":108},[84,20408,20409],{"class":98}," IntersectionObserver",[84,20411,20412],{"class":90}," };\n",[84,20414,20415],{"class":86,"line":201},[84,20416,126],{"emptyLinePlaceholder":125},[84,20418,20419,20421,20423,20426,20428,20430,20432,20435,20437,20440,20442,20444],{"class":86,"line":217},[84,20420,418],{"class":108},[84,20422,20023],{"class":108},[84,20424,20425],{"class":135}," vIntersect",[84,20427,1203],{"class":108},[84,20429,19010],{"class":98},[84,20431,91],{"class":90},[84,20433,20434],{"class":98},"ElWithObserver",[84,20436,754],{"class":90},[84,20438,20439],{"class":98},"IntersectValue",[84,20441,19023],{"class":90},[84,20443,184],{"class":108},[84,20445,175],{"class":90},[84,20447,20448,20450,20452,20454,20456,20458],{"class":86,"line":227},[84,20449,7551],{"class":98},[84,20451,145],{"class":90},[84,20453,19036],{"class":429},[84,20455,754],{"class":90},[84,20457,18600],{"class":429},[84,20459,438],{"class":90},[84,20461,20462,20464,20466,20469,20471,20474,20476,20478,20480,20482,20484,20486],{"class":86,"line":232},[84,20463,3021],{"class":108},[84,20465,6763],{"class":90},[84,20467,20468],{"class":135},"onEnter",[84,20470,754],{"class":90},[84,20472,20473],{"class":135},"onLeave",[84,20475,754],{"class":90},[84,20477,16839],{"class":135},[84,20479,18230],{"class":90},[84,20481,184],{"class":108},[84,20483,19053],{"class":90},[84,20485,10610],{"class":108},[84,20487,20488],{"class":90}," {};\n",[84,20490,20491],{"class":86,"line":237},[84,20492,126],{"emptyLinePlaceholder":125},[84,20494,20495,20497,20500,20502,20504,20506,20508,20511,20513,20515],{"class":86,"line":253},[84,20496,3021],{"class":108},[84,20498,20499],{"class":135}," io",[84,20501,139],{"class":108},[84,20503,1355],{"class":108},[84,20505,20409],{"class":98},[84,20507,3120],{"class":90},[84,20509,20510],{"class":429},"entries",[84,20512,3126],{"class":90},[84,20514,172],{"class":108},[84,20516,175],{"class":90},[84,20518,20519,20522,20524,20526,20529,20531],{"class":86,"line":266},[84,20520,20521],{"class":108},"      for",[84,20523,1341],{"class":90},[84,20525,132],{"class":108},[84,20527,20528],{"class":135}," entry",[84,20530,16787],{"class":108},[84,20532,20533],{"class":90}," entries) {\n",[84,20535,20536,20538,20541,20543],{"class":86,"line":271},[84,20537,9603],{"class":108},[84,20539,20540],{"class":90}," (entry.isIntersecting) ",[84,20542,20468],{"class":98},[84,20544,20545],{"class":90},"?.(entry);\n",[84,20547,20548,20551,20554],{"class":86,"line":281},[84,20549,20550],{"class":108},"        else",[84,20552,20553],{"class":98}," onLeave",[84,20555,20545],{"class":90},[84,20557,20558],{"class":86,"line":286},[84,20559,2013],{"class":90},[84,20561,20562],{"class":86,"line":296},[84,20563,20564],{"class":90},"    }, options);\n",[84,20566,20567],{"class":86,"line":315},[84,20568,126],{"emptyLinePlaceholder":125},[84,20570,20571,20574,20577],{"class":86,"line":321},[84,20572,20573],{"class":90},"    io.",[84,20575,20576],{"class":98},"observe",[84,20578,20579],{"class":90},"(el);\n",[84,20581,20582,20585,20587],{"class":86,"line":331},[84,20583,20584],{"class":90},"    el.__io__ ",[84,20586,184],{"class":108},[84,20588,20589],{"class":90}," io;\n",[84,20591,20592],{"class":86,"line":336},[84,20593,1941],{"class":90},[84,20595,20596,20598,20600,20602,20604,20606],{"class":86,"line":354},[84,20597,11072],{"class":98},[84,20599,145],{"class":90},[84,20601,19036],{"class":429},[84,20603,754],{"class":90},[84,20605,18600],{"class":429},[84,20607,438],{"class":90},[84,20609,20610],{"class":86,"line":360},[84,20611,20612],{"class":13481},"    \u002F\u002F Si cambian options de forma dinámica, lo más seguro es recrear el observer\n",[84,20614,20615],{"class":86,"line":369},[84,20616,20617],{"class":13481},"    \u002F\u002F (micro-optimización: solo recrear si realmente cambian)\n",[84,20619,20620],{"class":86,"line":1453},[84,20621,20622],{"class":13481},"    \u002F\u002F Aquí lo dejamos simple y explícito:\n",[84,20624,20625,20628,20631],{"class":86,"line":1462},[84,20626,20627],{"class":90},"    el.__io__?.",[84,20629,20630],{"class":98},"disconnect",[84,20632,20137],{"class":90},[84,20634,20635,20637],{"class":86,"line":1484},[84,20636,19345],{"class":108},[84,20638,20639],{"class":90}," el.__io__;\n",[84,20641,20642,20644,20646,20648,20650,20652,20654,20656,20658,20660,20662,20664],{"class":86,"line":1489},[84,20643,3021],{"class":108},[84,20645,6763],{"class":90},[84,20647,20468],{"class":135},[84,20649,754],{"class":90},[84,20651,20473],{"class":135},[84,20653,754],{"class":90},[84,20655,16839],{"class":135},[84,20657,18230],{"class":90},[84,20659,184],{"class":108},[84,20661,19053],{"class":90},[84,20663,10610],{"class":108},[84,20665,20488],{"class":90},[84,20667,20668,20670,20672,20674,20676,20678,20680,20682,20684,20686],{"class":86,"line":1495},[84,20669,3021],{"class":108},[84,20671,20499],{"class":135},[84,20673,139],{"class":108},[84,20675,1355],{"class":108},[84,20677,20409],{"class":98},[84,20679,3120],{"class":90},[84,20681,20510],{"class":429},[84,20683,3126],{"class":90},[84,20685,172],{"class":108},[84,20687,175],{"class":90},[84,20689,20690,20692,20694,20696,20698,20700],{"class":86,"line":1500},[84,20691,20521],{"class":108},[84,20693,1341],{"class":90},[84,20695,132],{"class":108},[84,20697,20528],{"class":135},[84,20699,16787],{"class":108},[84,20701,20533],{"class":90},[84,20703,20704,20706,20708,20710],{"class":86,"line":1516},[84,20705,9603],{"class":108},[84,20707,20540],{"class":90},[84,20709,20468],{"class":98},[84,20711,20545],{"class":90},[84,20713,20714,20716,20718],{"class":86,"line":1533},[84,20715,20550],{"class":108},[84,20717,20553],{"class":98},[84,20719,20545],{"class":90},[84,20721,20722],{"class":86,"line":1538},[84,20723,2013],{"class":90},[84,20725,20726],{"class":86,"line":1545},[84,20727,20564],{"class":90},[84,20729,20730,20732,20734],{"class":86,"line":1554},[84,20731,20573],{"class":90},[84,20733,20576],{"class":98},[84,20735,20579],{"class":90},[84,20737,20738,20740,20742],{"class":86,"line":1563},[84,20739,20584],{"class":90},[84,20741,184],{"class":108},[84,20743,20589],{"class":90},[84,20745,20746],{"class":86,"line":1570},[84,20747,1941],{"class":90},[84,20749,20750,20752,20754,20756],{"class":86,"line":1588},[84,20751,9429],{"class":98},[84,20753,145],{"class":90},[84,20755,19036],{"class":429},[84,20757,438],{"class":90},[84,20759,20760,20762,20764],{"class":86,"line":1593},[84,20761,20627],{"class":90},[84,20763,20630],{"class":98},[84,20765,20137],{"class":90},[84,20767,20768,20770],{"class":86,"line":1598},[84,20769,19345],{"class":108},[84,20771,20639],{"class":90},[84,20773,20774],{"class":86,"line":1607},[84,20775,1941],{"class":90},[84,20777,20778],{"class":86,"line":1612},[84,20779,18973],{"class":90},[74,20781,20783],{"className":394,"code":20782,"filename":20153,"language":397,"meta":80,"style":80},"export const vIntersect = {\n  mounted(el, binding) {\n    const { onEnter, onLeave, options } = binding.value ?? {};\n\n    const io = new IntersectionObserver((entries) => {\n      for (const entry of entries) {\n        if (entry.isIntersecting) onEnter?.(entry);\n        else onLeave?.(entry);\n      }\n    }, options);\n    \n    io.observe(el);\n    el.__io__ = io;\n  },\n  updated(el, binding) {\n    \u002F\u002F Si cambian options de forma dinámica, lo más seguro es recrear el observer\n    \u002F\u002F (micro-optimización: solo recrear si realmente cambian)\n    \u002F\u002F Aquí lo dejamos simple y explícito:\n    el.__io__?.disconnect();\n    delete el.__io__;\n    const { onEnter, onLeave, options } = binding.value ?? {};\n    const io = new IntersectionObserver((entries) => {\n      for (const entry of entries) {\n        if (entry.isIntersecting) onEnter?.(entry);\n        else onLeave?.(entry);\n      }\n    }, options);\n    io.observe(el);\n    el.__io__ = io;\n  },\n  unmounted(el) {\n    el.__io__?.disconnect();\n    delete el.__io__;\n  },\n};\n",[22,20784,20785,20797,20811,20837,20841,20863,20877,20887,20895,20899,20903,20908,20916,20924,20928,20942,20946,20950,20954,20962,20968,20994,21016,21030,21040,21048,21052,21056,21064,21072,21076,21086,21094,21100,21104],{"__ignoreMap":80},[84,20786,20787,20789,20791,20793,20795],{"class":86,"line":87},[84,20788,418],{"class":108},[84,20790,20023],{"class":108},[84,20792,20425],{"class":135},[84,20794,139],{"class":108},[84,20796,175],{"class":90},[84,20798,20799,20801,20803,20805,20807,20809],{"class":86,"line":105},[84,20800,7551],{"class":98},[84,20802,145],{"class":90},[84,20804,19036],{"class":429},[84,20806,754],{"class":90},[84,20808,18600],{"class":429},[84,20810,438],{"class":90},[84,20812,20813,20815,20817,20819,20821,20823,20825,20827,20829,20831,20833,20835],{"class":86,"line":122},[84,20814,3021],{"class":108},[84,20816,6763],{"class":90},[84,20818,20468],{"class":135},[84,20820,754],{"class":90},[84,20822,20473],{"class":135},[84,20824,754],{"class":90},[84,20826,16839],{"class":135},[84,20828,18230],{"class":90},[84,20830,184],{"class":108},[84,20832,19053],{"class":90},[84,20834,10610],{"class":108},[84,20836,20488],{"class":90},[84,20838,20839],{"class":86,"line":129},[84,20840,126],{"emptyLinePlaceholder":125},[84,20842,20843,20845,20847,20849,20851,20853,20855,20857,20859,20861],{"class":86,"line":154},[84,20844,3021],{"class":108},[84,20846,20499],{"class":135},[84,20848,139],{"class":108},[84,20850,1355],{"class":108},[84,20852,20409],{"class":98},[84,20854,3120],{"class":90},[84,20856,20510],{"class":429},[84,20858,3126],{"class":90},[84,20860,172],{"class":108},[84,20862,175],{"class":90},[84,20864,20865,20867,20869,20871,20873,20875],{"class":86,"line":159},[84,20866,20521],{"class":108},[84,20868,1341],{"class":90},[84,20870,132],{"class":108},[84,20872,20528],{"class":135},[84,20874,16787],{"class":108},[84,20876,20533],{"class":90},[84,20878,20879,20881,20883,20885],{"class":86,"line":178},[84,20880,9603],{"class":108},[84,20882,20540],{"class":90},[84,20884,20468],{"class":98},[84,20886,20545],{"class":90},[84,20888,20889,20891,20893],{"class":86,"line":190},[84,20890,20550],{"class":108},[84,20892,20553],{"class":98},[84,20894,20545],{"class":90},[84,20896,20897],{"class":86,"line":196},[84,20898,2013],{"class":90},[84,20900,20901],{"class":86,"line":201},[84,20902,20564],{"class":90},[84,20904,20905],{"class":86,"line":217},[84,20906,20907],{"class":90},"    \n",[84,20909,20910,20912,20914],{"class":86,"line":227},[84,20911,20573],{"class":90},[84,20913,20576],{"class":98},[84,20915,20579],{"class":90},[84,20917,20918,20920,20922],{"class":86,"line":232},[84,20919,20584],{"class":90},[84,20921,184],{"class":108},[84,20923,20589],{"class":90},[84,20925,20926],{"class":86,"line":237},[84,20927,1941],{"class":90},[84,20929,20930,20932,20934,20936,20938,20940],{"class":86,"line":253},[84,20931,11072],{"class":98},[84,20933,145],{"class":90},[84,20935,19036],{"class":429},[84,20937,754],{"class":90},[84,20939,18600],{"class":429},[84,20941,438],{"class":90},[84,20943,20944],{"class":86,"line":266},[84,20945,20612],{"class":13481},[84,20947,20948],{"class":86,"line":271},[84,20949,20617],{"class":13481},[84,20951,20952],{"class":86,"line":281},[84,20953,20622],{"class":13481},[84,20955,20956,20958,20960],{"class":86,"line":286},[84,20957,20627],{"class":90},[84,20959,20630],{"class":98},[84,20961,20137],{"class":90},[84,20963,20964,20966],{"class":86,"line":296},[84,20965,19345],{"class":108},[84,20967,20639],{"class":90},[84,20969,20970,20972,20974,20976,20978,20980,20982,20984,20986,20988,20990,20992],{"class":86,"line":315},[84,20971,3021],{"class":108},[84,20973,6763],{"class":90},[84,20975,20468],{"class":135},[84,20977,754],{"class":90},[84,20979,20473],{"class":135},[84,20981,754],{"class":90},[84,20983,16839],{"class":135},[84,20985,18230],{"class":90},[84,20987,184],{"class":108},[84,20989,19053],{"class":90},[84,20991,10610],{"class":108},[84,20993,20488],{"class":90},[84,20995,20996,20998,21000,21002,21004,21006,21008,21010,21012,21014],{"class":86,"line":321},[84,20997,3021],{"class":108},[84,20999,20499],{"class":135},[84,21001,139],{"class":108},[84,21003,1355],{"class":108},[84,21005,20409],{"class":98},[84,21007,3120],{"class":90},[84,21009,20510],{"class":429},[84,21011,3126],{"class":90},[84,21013,172],{"class":108},[84,21015,175],{"class":90},[84,21017,21018,21020,21022,21024,21026,21028],{"class":86,"line":331},[84,21019,20521],{"class":108},[84,21021,1341],{"class":90},[84,21023,132],{"class":108},[84,21025,20528],{"class":135},[84,21027,16787],{"class":108},[84,21029,20533],{"class":90},[84,21031,21032,21034,21036,21038],{"class":86,"line":336},[84,21033,9603],{"class":108},[84,21035,20540],{"class":90},[84,21037,20468],{"class":98},[84,21039,20545],{"class":90},[84,21041,21042,21044,21046],{"class":86,"line":354},[84,21043,20550],{"class":108},[84,21045,20553],{"class":98},[84,21047,20545],{"class":90},[84,21049,21050],{"class":86,"line":360},[84,21051,2013],{"class":90},[84,21053,21054],{"class":86,"line":369},[84,21055,20564],{"class":90},[84,21057,21058,21060,21062],{"class":86,"line":1453},[84,21059,20573],{"class":90},[84,21061,20576],{"class":98},[84,21063,20579],{"class":90},[84,21065,21066,21068,21070],{"class":86,"line":1462},[84,21067,20584],{"class":90},[84,21069,184],{"class":108},[84,21071,20589],{"class":90},[84,21073,21074],{"class":86,"line":1484},[84,21075,1941],{"class":90},[84,21077,21078,21080,21082,21084],{"class":86,"line":1489},[84,21079,9429],{"class":98},[84,21081,145],{"class":90},[84,21083,19036],{"class":429},[84,21085,438],{"class":90},[84,21087,21088,21090,21092],{"class":86,"line":1495},[84,21089,20627],{"class":90},[84,21091,20630],{"class":98},[84,21093,20137],{"class":90},[84,21095,21096,21098],{"class":86,"line":1500},[84,21097,19345],{"class":108},[84,21099,20639],{"class":90},[84,21101,21102],{"class":86,"line":1516},[84,21103,1941],{"class":90},[84,21105,21106],{"class":86,"line":1533},[84,21107,18973],{"class":90},[74,21109,21111],{"className":76,"code":21110,"filename":10092,"language":79,"meta":80,"style":80},"\u003Cdiv\n  v-intersect=\"{\n    onEnter: () => (visible = true),\n    onLeave: () => (visible = false),\n    options: { threshold: 0.2 }\n  }\"\n>\n  ...\n\u003C\u002Fdiv>\n",[22,21112,21113,21120,21132,21151,21168,21178,21186,21190,21195],{"__ignoreMap":80},[84,21114,21115,21117],{"class":86,"line":87},[84,21116,91],{"class":90},[84,21118,21119],{"class":94},"div\n",[84,21121,21122,21125,21127,21129],{"class":86,"line":105},[84,21123,21124],{"class":98},"  v-intersect",[84,21126,184],{"class":90},[84,21128,1678],{"class":118},[84,21130,21131],{"class":90},"{\n",[84,21133,21134,21137,21139,21141,21144,21146,21149],{"class":86,"line":122},[84,21135,21136],{"class":98},"    onEnter",[84,21138,4568],{"class":90},[84,21140,172],{"class":108},[84,21142,21143],{"class":90}," (visible ",[84,21145,184],{"class":108},[84,21147,21148],{"class":135}," true",[84,21150,4531],{"class":90},[84,21152,21153,21156,21158,21160,21162,21164,21166],{"class":86,"line":129},[84,21154,21155],{"class":98},"    onLeave",[84,21157,4568],{"class":90},[84,21159,172],{"class":108},[84,21161,21143],{"class":90},[84,21163,184],{"class":108},[84,21165,435],{"class":135},[84,21167,4531],{"class":90},[84,21169,21170,21173,21176],{"class":86,"line":154},[84,21171,21172],{"class":90},"    options: { threshold: ",[84,21174,21175],{"class":135},"0.2",[84,21177,2968],{"class":90},[84,21179,21180,21183],{"class":86,"line":159},[84,21181,21182],{"class":90},"  }",[84,21184,21185],{"class":118},"\"\n",[84,21187,21188],{"class":86,"line":178},[84,21189,102],{"class":90},[84,21191,21192],{"class":86,"line":190},[84,21193,21194],{"class":90},"  ...\n",[84,21196,21197,21199,21201],{"class":86,"line":196},[84,21198,274],{"class":90},[84,21200,4978],{"class":94},[84,21202,102],{"class":90},[823,21204,21205],{},[15,21206,21207,21208,21210,21211,13234,21213,21215],{},"Si vas a recrear observers en ",[22,21209,9844],{},", intenta comparar ",[22,21212,18608],{},[22,21214,18617],{}," para evitar trabajo innecesario.",[34,21217,2406],{"id":2405},[737,21219,21220,21226,21232,21242,21252],{},[740,21221,21222,21223,764],{},"Las directivas personalizadas son ideales para encapsular ",[958,21224,21225],{},"comportamiento de DOM reutilizable",[740,21227,21228,21229,21231],{},"El hook ",[22,21230,6063],{}," es obligatorio para limpieza y evitar fugas.",[740,21233,21234,21235,754,21237,754,21239,21241],{},"Mantén un contrato simple (",[22,21236,4663],{},[22,21238,18740],{},[22,21240,18743],{},") y evita mezclar estado de negocio.",[740,21243,21244,21245,21248,21249,21251],{},"En Vue 3, ",[958,21246,21247],{},"si el callback puede cambiar",", actualízalo en ",[22,21250,9844],{}," para no quedarte con una referencia vieja.",[740,21253,21254],{},"Prioriza Composition API; usa Options API cuando lo necesites por compatibilidad incremental.",[835,21256,21257],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}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);}",{"title":80,"searchDepth":105,"depth":105,"links":21259},[21260,21261,21262,21263,21264,21265,21269,21275],{"id":18507,"depth":105,"text":18508},{"id":946,"depth":105,"text":947},{"id":18653,"depth":105,"text":18654},{"id":18677,"depth":105,"text":18678},{"id":783,"depth":105,"text":784},{"id":2735,"depth":105,"text":2736,"children":21266},[21267],{"id":18828,"depth":122,"text":21268},"v-click-outside (con callback actualizable)",{"id":19983,"depth":105,"text":19984,"children":21270},[21271,21273],{"id":19987,"depth":122,"text":21272},"v-autofocus (básico y práctico)",{"id":20281,"depth":122,"text":21274},"v-intersect (IntersectionObserver)",{"id":2405,"depth":105,"text":2406},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1772207944\u002Fdirectives-vue-custom-directives-guide_nwp7od.png","Ejemplo de directiva personalizada en Vue 3","2026-02-27","Aprende a crear directivas personalizadas en Vue 3 con casos reales, ciclo de vida, limpieza correcta y ejemplos equivalentes en Composition API y Options API.",{"updatedAt":21281,"coverCaption":21277,"author":868,"keywords":21282},"2026-02-27T12:30:00-05:00",[870,21283,21284,21285,873,1782],"directivas personalizadas","custom directives","ciclo de vida","\u002Fblog\u002Fdirectives-vue-custom-directives-guide.es",[21288],{"headline":18504,"author":21289,"datePublished":21281,"@type":880},{"name":868,"@type":879},{"title":18498,"description":21279},"vue-directives","Ruta paso a paso para dominar las directivas principales de Vue.","Directivas en Vue","blog\u002Fdirectives-vue-custom-directives-guide.es",[21296,21299,21302,21303,21304],{"tag":21297,"color":21298},"Directivas","#6C5CE7",{"tag":21300,"color":21301},"Directivas Personalizadas","#7D5FFF",{"tag":2458,"color":2459},{"tag":3945,"color":3946},{"tag":2462,"color":2463},"wVpr_e--WXOvyGkAScAp5eWTfVDbzY9Te6sVUdj96GA",{"id":21307,"title":21308,"body":21309,"cover":22575,"coverAlt":22576,"date":22577,"description":22578,"draft":852,"extension":853,"lab":882,"locale":864,"meta":22579,"navigation":125,"path":22584,"schemaOrg":22585,"seo":22589,"series":21291,"seriesDescription":21292,"seriesOrder":201,"seriesTitle":21293,"slug":882,"stem":22590,"tags":22591,"__hash__":22598},"blog\u002Fblog\u002Fdirectives-vue-v-cloak-guide.es.md","Directivas en Vue: v-cloak",{"type":8,"value":21310,"toc":22553},[21311,21318,21331,21335,21338,21343,21348,21363,21365,21373,21378,21383,21418,21431,21441,21445,21452,21455,21468,21471,21482,21484,21489,21500,21502,21504,21518,21525,21527,21534,21541,21548,21558,21562,21568,21572,21577,21579,21583,21611,21619,21623,21760,21898,22013,22017,22023,22027,22266,22496,22522,22524,22529,22534,22550],[11,21312,21314,21315],{"id":21313},"directivas-en-vue-v-cloak","Directivas en Vue: ",[22,21316,21317],{},"v-cloak",[15,21319,21320,21322,21323,21326,21327,21330],{},[22,21321,21317],{}," resuelve un problema visual clásico en aplicaciones con ",[958,21324,21325],{},"Vue",": el parpadeo de plantillas sin compilar (",[22,21328,21329],{},"{{ ... }}",") antes de que la instancia termine de montarse. Es una directiva simple, pero estratégica cuando te importa la percepción de calidad en la primera carga.",[34,21332,21334],{"id":21333},"por-qué-importa","Por qué importa",[15,21336,21337],{},"Si tu HTML inicial contiene expresiones de Vue, el navegador puede renderizarlas en crudo durante unos milisegundos, especialmente si el bundle aún no se ha descargado o ejecutado.\nEse “flash” degrada la experiencia y transmite sensación de inestabilidad.",[15,21339,21340,21342],{},[22,21341,21317],{}," evita ese estado intermedio ocultando el contenido hasta que Vue haya completado el montaje y compilado el template.",[15,21344,21345],{},[958,21346,21347],{},"Beneficios directos:",[737,21349,21350,21357,21360],{},[740,21351,21352,21353,21356],{},"El usuario no ve ",[22,21354,21355],{},"{{ message }}"," ni estructuras sin procesar.",[740,21358,21359],{},"La carga inicial se percibe más limpia y profesional.",[740,21361,21362],{},"Reduces ruido visual en landing pages, layouts estáticos o integraciones progresivas.",[34,21364,947],{"id":946},[15,21366,21367,21369,21370,21372],{},[22,21368,21317],{}," funciona en conjunto con CSS.\nVue elimina automáticamente el atributo ",[22,21371,21317],{}," del nodo cuando la instancia ha sido montada y el template compilado.",[15,21374,21375],{},[958,21376,21377],{},"Patrón típico:",[10842,21379,21380],{},[740,21381,21382],{},"Añades una regla CSS global:",[74,21384,21389],{"className":21385,"code":21386,"filename":21387,"language":21388,"meta":80,"style":80},"language-css shiki shiki-themes github-light github-dark","[v-cloak] {\n display: none;\n}\n","style.css","css",[22,21390,21391,21401,21414],{"__ignoreMap":80},[84,21392,21393,21396,21398],{"class":86,"line":87},[84,21394,21395],{"class":90},"[",[84,21397,21317],{"class":98},[84,21399,21400],{"class":90},"] {\n",[84,21402,21403,21406,21409,21412],{"class":86,"line":105},[84,21404,21405],{"class":135}," display",[84,21407,21408],{"class":90},": ",[84,21410,21411],{"class":135},"none",[84,21413,18869],{"class":90},[84,21415,21416],{"class":86,"line":122},[84,21417,193],{"class":90},[10842,21419,21420,21425,21428],{"start":105},[740,21421,21422,21423,764],{},"Marcas el contenedor raíz (o el fragmento necesario) con ",[22,21424,21317],{},[740,21426,21427],{},"Mientras Vue no monta, el bloque permanece oculto.",[740,21429,21430],{},"Cuando Vue monta, elimina el atributo y el contenido aparece ya procesado.",[823,21432,21433],{},[15,21434,21435,21437,21438,2686],{},[22,21436,21317],{}," no transforma datos ni agrega reactividad. Solo controla la visibilidad durante la fase previa al montaje (",[22,21439,21440],{},"before mount",[34,21442,21444],{"id":21443},"consideraciones-en-vue-3-y-ssr","Consideraciones en Vue 3 y SSR",[15,21446,21447,21448,21451],{},"En aplicaciones con SSR (por ejemplo, usando ",[958,21449,21450],{},"Nuxt 4","), el HTML ya llega compilado desde el servidor, por lo que normalmente no existe riesgo de mostrar interpolaciones en crudo.",[15,21453,21454],{},"En esos casos:",[737,21456,21457,21462,21465],{},[740,21458,21459,21461],{},[22,21460,21317],{}," suele ser innecesario.",[740,21463,21464],{},"No corrige problemas de hydration mismatch.",[740,21466,21467],{},"No sustituye una estrategia adecuada de loading o streaming.",[15,21469,21470],{},"Su utilidad es mayor en:",[737,21472,21473,21476,21479],{},[740,21474,21475],{},"Integraciones progresivas sobre HTML existente.",[740,21477,21478],{},"Aplicaciones SPA donde el bundle puede tardar en ejecutarse.",[740,21480,21481],{},"Entornos donde el HTML inicial contiene marcadores Vue sin procesar.",[34,21483,1013],{"id":1012},[15,21485,21486,21487,8430],{},"Usa ",[22,21488,21317],{},[737,21490,21491,21494,21497],{},[740,21492,21493],{},"Sirves HTML inicial con plantillas Vue visibles (CMS, integración progresiva).",[740,21495,21496],{},"La app tarda perceptiblemente en montar por tamaño del bundle o red lenta.",[740,21498,21499],{},"Quieres blindar la primera impresión visual de componentes críticos (hero, login, pricing).",[34,21501,1040],{"id":1039},[15,21503,1046],{},[737,21505,21506,21509,21512,21515],{},[740,21507,21508],{},"No existe riesgo real de mostrar interpolaciones.",[740,21510,21511],{},"Puedes resolver el estado inicial con skeletons o placeholders más ricos.",[740,21513,21514],{},"Ocultar el contenedor completo afecta accesibilidad o continuidad visual.",[740,21516,21517],{},"Estás en SSR donde el HTML ya llega procesado correctamente.",[823,21519,21520],{},[15,21521,21522,21524],{},[22,21523,21317],{}," no es una estrategia de performance; es un ajuste de acabado visual.",[34,21526,784],{"id":783},[1074,21528,21530,21531,21533],{"id":21529},"_1-usar-v-cloak-sin-css","1) Usar ",[22,21532,21317],{}," sin CSS",[15,21535,21536,21537,21540],{},"Si no defines ",[22,21538,21539],{},"[v-cloak] { display: none; }",", la directiva no tendrá efecto visible.",[1074,21542,21544,21545],{"id":21543},"_2-declarar-la-regla-en-un-style-scoped","2) Declarar la regla en un ",[22,21546,21547],{},"\u003Cstyle scoped>",[15,21549,21550,21551,21553,21554,21557],{},"Si la regla vive en un ",[22,21552,21547],{}," de otro componente, no afectará al nodo marcado.\nDeclárala en estilos globales (por ejemplo, en ",[22,21555,21556],{},"main.css"," o en el layout raíz).",[1074,21559,21561],{"id":21560},"_3-ocultar-demasiado-contenido","3) Ocultar demasiado contenido",[15,21563,21564,21565,21567],{},"Aplicar ",[22,21566,21317],{}," al wrapper completo puede dejar la pantalla vacía durante el arranque.\nEn vistas complejas, úsalo solo en fragmentos donde exista riesgo real de parpadeo.",[1074,21569,21571],{"id":21570},"_4-esperar-que-resuelva-hydration-mismatches","4) Esperar que resuelva hydration mismatches",[15,21573,21574,21576],{},[22,21575,21317],{}," no corrige diferencias entre el HTML del servidor y el render del cliente.\nLos hydration mismatches deben resolverse alineando la lógica de renderizado entre servidor y cliente.",[34,21578,2736],{"id":2735},[1074,21580,21582],{"id":21581},"_1-uso-mínimo-global","1) Uso mínimo global",[74,21584,21586],{"className":21385,"code":21585,"filename":21387,"language":21388,"meta":80,"style":80},"[v-cloak] {\n  display: none;\n}\n",[22,21587,21588,21596,21607],{"__ignoreMap":80},[84,21589,21590,21592,21594],{"class":86,"line":87},[84,21591,21395],{"class":90},[84,21593,21317],{"class":98},[84,21595,21400],{"class":90},[84,21597,21598,21601,21603,21605],{"class":86,"line":105},[84,21599,21600],{"class":135},"  display",[84,21602,21408],{"class":90},[84,21604,21411],{"class":135},[84,21606,18869],{"class":90},[84,21608,21609],{"class":86,"line":122},[84,21610,193],{"class":90},[823,21612,21613],{},[15,21614,21615,21616,21618],{},"Con esa regla global, cualquier bloque marcado con ",[22,21617,21317],{}," permanecerá oculto hasta que Vue elimine el atributo tras el montaje.",[1074,21620,21622],{"id":21621},"_2-hero-con-texto-reactivo","2) Hero con texto reactivo",[74,21624,21627],{"className":76,"code":21625,"filename":873,"highlights":21626,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\nconst headline = ref(\"Aprende Vue sin fricción\");\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection v-cloak class=\"hero\">\n    \u003Ch1>{{ headline }}\u003C\u002Fh1>\n    \u003Cp>Guías prácticas para equipos frontend.\u003C\u002Fp>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[190],[22,21628,21629,21645,21657,21661,21679,21687,21691,21699,21718,21731,21744,21752],{"__ignoreMap":80},[84,21630,21631,21633,21635,21637,21639,21641,21643],{"class":86,"line":87},[84,21632,91],{"class":90},[84,21634,95],{"class":94},[84,21636,99],{"class":98},[84,21638,1161],{"class":98},[84,21640,184],{"class":90},[84,21642,1166],{"class":118},[84,21644,102],{"class":90},[84,21646,21647,21649,21651,21653,21655],{"class":86,"line":105},[84,21648,109],{"class":108},[84,21650,112],{"class":90},[84,21652,115],{"class":108},[84,21654,18866],{"class":118},[84,21656,18869],{"class":90},[84,21658,21659],{"class":86,"line":122},[84,21660,126],{"emptyLinePlaceholder":125},[84,21662,21663,21665,21668,21670,21672,21674,21677],{"class":86,"line":129},[84,21664,132],{"class":108},[84,21666,21667],{"class":135}," headline",[84,21669,139],{"class":108},[84,21671,142],{"class":98},[84,21673,145],{"class":90},[84,21675,21676],{"class":118},"\"Aprende Vue sin fricción\"",[84,21678,18994],{"class":90},[84,21680,21681,21683,21685],{"class":86,"line":154},[84,21682,274],{"class":90},[84,21684,95],{"class":94},[84,21686,102],{"class":90},[84,21688,21689],{"class":86,"line":159},[84,21690,126],{"emptyLinePlaceholder":125},[84,21692,21693,21695,21697],{"class":86,"line":178},[84,21694,91],{"class":90},[84,21696,291],{"class":94},[84,21698,102],{"class":90},[84,21700,21702,21704,21706,21709,21711,21713,21716],{"class":21701,"line":190},[86,10151],[84,21703,299],{"class":90},[84,21705,4898],{"class":94},[84,21707,21708],{"class":98}," v-cloak",[84,21710,1629],{"class":98},[84,21712,184],{"class":90},[84,21714,21715],{"class":118},"\"hero\"",[84,21717,102],{"class":90},[84,21719,21720,21722,21724,21727,21729],{"class":86,"line":196},[84,21721,1642],{"class":90},[84,21723,11],{"class":94},[84,21725,21726],{"class":90},">{{ headline }}\u003C\u002F",[84,21728,11],{"class":94},[84,21730,102],{"class":90},[84,21732,21733,21735,21737,21740,21742],{"class":86,"line":201},[84,21734,1642],{"class":90},[84,21736,15],{"class":94},[84,21738,21739],{"class":90},">Guías prácticas para equipos frontend.\u003C\u002F",[84,21741,15],{"class":94},[84,21743,102],{"class":90},[84,21745,21746,21748,21750],{"class":86,"line":217},[84,21747,324],{"class":90},[84,21749,4898],{"class":94},[84,21751,102],{"class":90},[84,21753,21754,21756,21758],{"class":86,"line":227},[84,21755,274],{"class":90},[84,21757,291],{"class":94},[84,21759,102],{"class":90},[74,21761,21764],{"className":76,"code":21762,"filename":1782,"highlights":21763,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      headline: \"Aprende Vue sin fricción\",\n    };\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection v-cloak class=\"hero\">\n    \u003Ch1>{{ headline }}\u003C\u002Fh1>\n    \u003Cp>Guías prácticas para equipos frontend.\u003C\u002Fp>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[227],[22,21765,21766,21780,21788,21794,21800,21809,21813,21817,21821,21829,21833,21841,21858,21870,21882,21890],{"__ignoreMap":80},[84,21767,21768,21770,21772,21774,21776,21778],{"class":86,"line":87},[84,21769,91],{"class":90},[84,21771,95],{"class":94},[84,21773,1161],{"class":98},[84,21775,184],{"class":90},[84,21777,1166],{"class":118},[84,21779,102],{"class":90},[84,21781,21782,21784,21786],{"class":86,"line":105},[84,21783,418],{"class":108},[84,21785,1870],{"class":108},[84,21787,175],{"class":90},[84,21789,21790,21792],{"class":86,"line":122},[84,21791,1896],{"class":98},[84,21793,1307],{"class":90},[84,21795,21796,21798],{"class":86,"line":129},[84,21797,1903],{"class":108},[84,21799,175],{"class":90},[84,21801,21802,21805,21807],{"class":86,"line":154},[84,21803,21804],{"class":90},"      headline: ",[84,21806,21676],{"class":118},[84,21808,1887],{"class":90},[84,21810,21811],{"class":86,"line":159},[84,21812,19195],{"class":90},[84,21814,21815],{"class":86,"line":178},[84,21816,1941],{"class":90},[84,21818,21819],{"class":86,"line":190},[84,21820,18973],{"class":90},[84,21822,21823,21825,21827],{"class":86,"line":196},[84,21824,274],{"class":90},[84,21826,95],{"class":94},[84,21828,102],{"class":90},[84,21830,21831],{"class":86,"line":201},[84,21832,126],{"emptyLinePlaceholder":125},[84,21834,21835,21837,21839],{"class":86,"line":217},[84,21836,91],{"class":90},[84,21838,291],{"class":94},[84,21840,102],{"class":90},[84,21842,21844,21846,21848,21850,21852,21854,21856],{"class":21843,"line":227},[86,10151],[84,21845,299],{"class":90},[84,21847,4898],{"class":94},[84,21849,21708],{"class":98},[84,21851,1629],{"class":98},[84,21853,184],{"class":90},[84,21855,21715],{"class":118},[84,21857,102],{"class":90},[84,21859,21860,21862,21864,21866,21868],{"class":86,"line":232},[84,21861,1642],{"class":90},[84,21863,11],{"class":94},[84,21865,21726],{"class":90},[84,21867,11],{"class":94},[84,21869,102],{"class":90},[84,21871,21872,21874,21876,21878,21880],{"class":86,"line":237},[84,21873,1642],{"class":90},[84,21875,15],{"class":94},[84,21877,21739],{"class":90},[84,21879,15],{"class":94},[84,21881,102],{"class":90},[84,21883,21884,21886,21888],{"class":86,"line":253},[84,21885,324],{"class":90},[84,21887,4898],{"class":94},[84,21889,102],{"class":90},[84,21891,21892,21894,21896],{"class":86,"line":266},[84,21893,274],{"class":90},[84,21895,291],{"class":94},[84,21897,102],{"class":90},[74,21899,21902],{"className":21385,"code":21900,"filename":21387,"highlights":21901,"language":21388,"meta":80,"style":80},"[v-cloak] {\n  display: none;\n}\n\n.hero {\n  background: linear-gradient(135deg, #6C5CE7, #B173BF);\n  color: white;\n  padding: 2rem;\n  border-radius: 8px;\n}\n",[87,105,122],[22,21903,21904,21913,21924,21929,21933,21940,21968,21980,21994,22009],{"__ignoreMap":80},[84,21905,21907,21909,21911],{"class":21906,"line":87},[86,10151],[84,21908,21395],{"class":90},[84,21910,21317],{"class":98},[84,21912,21400],{"class":90},[84,21914,21916,21918,21920,21922],{"class":21915,"line":105},[86,10151],[84,21917,21600],{"class":135},[84,21919,21408],{"class":90},[84,21921,21411],{"class":135},[84,21923,18869],{"class":90},[84,21925,21927],{"class":21926,"line":122},[86,10151],[84,21928,193],{"class":90},[84,21930,21931],{"class":86,"line":129},[84,21932,126],{"emptyLinePlaceholder":125},[84,21934,21935,21938],{"class":86,"line":154},[84,21936,21937],{"class":98},".hero",[84,21939,175],{"class":90},[84,21941,21942,21945,21947,21950,21952,21955,21958,21960,21962,21964,21966],{"class":86,"line":159},[84,21943,21944],{"class":135},"  background",[84,21946,21408],{"class":90},[84,21948,21949],{"class":135},"linear-gradient",[84,21951,145],{"class":90},[84,21953,21954],{"class":135},"135",[84,21956,21957],{"class":108},"deg",[84,21959,754],{"class":90},[84,21961,21298],{"class":135},[84,21963,754],{"class":90},[84,21965,895],{"class":135},[84,21967,18994],{"class":90},[84,21969,21970,21973,21975,21978],{"class":86,"line":178},[84,21971,21972],{"class":135},"  color",[84,21974,21408],{"class":90},[84,21976,21977],{"class":135},"white",[84,21979,18869],{"class":90},[84,21981,21982,21985,21987,21989,21992],{"class":86,"line":190},[84,21983,21984],{"class":135},"  padding",[84,21986,21408],{"class":90},[84,21988,2928],{"class":135},[84,21990,21991],{"class":108},"rem",[84,21993,18869],{"class":90},[84,21995,21996,21999,22001,22004,22007],{"class":86,"line":196},[84,21997,21998],{"class":135},"  border-radius",[84,22000,21408],{"class":90},[84,22002,22003],{"class":135},"8",[84,22005,22006],{"class":108},"px",[84,22008,18869],{"class":90},[84,22010,22011],{"class":86,"line":201},[84,22012,193],{"class":90},[1074,22014,22016],{"id":22015},"_3-integración-progresiva-en-html-existente","3) Integración progresiva en HTML existente",[15,22018,22019,22020,22022],{},"Cuando montas Vue en una sección específica de una página legacy (por ejemplo, un bloque de login o un widget interactivo), ",[22,22021,21317],{}," evita mostrar marcadores sin procesar durante el bootstrap inicial.",[1074,22024,22026],{"id":22025},"_4-ejemplo-completo-con-estado-asíncrono","4) Ejemplo completo con estado asíncrono",[74,22028,22030],{"className":76,"code":22029,"filename":873,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { onMounted, ref } from \"vue\";\n\nconst user = ref\u003C{ name: string } | null>(null);\n\nonMounted(async () => {\n  await new Promise((resolve) => setTimeout(resolve, 350));\n  user.value = { name: \"Cristhian\" };\n});\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Caside v-cloak class=\"welcome-card\">\n    \u003Ch2>Panel\u003C\u002Fh2>\n    \u003Cp v-if=\"user\">Hola, {{ user.name }}\u003C\u002Fp>\n    \u003Cp v-else>Cargando perfil...\u003C\u002Fp>\n  \u003C\u002Faside>\n\u003C\u002Ftemplate>\n",[22,22031,22032,22048,22061,22065,22098,22102,22116,22144,22159,22164,22172,22176,22184,22202,22215,22235,22250,22258],{"__ignoreMap":80},[84,22033,22034,22036,22038,22040,22042,22044,22046],{"class":86,"line":87},[84,22035,91],{"class":90},[84,22037,95],{"class":94},[84,22039,99],{"class":98},[84,22041,1161],{"class":98},[84,22043,184],{"class":90},[84,22045,1166],{"class":118},[84,22047,102],{"class":90},[84,22049,22050,22052,22055,22057,22059],{"class":86,"line":105},[84,22051,109],{"class":108},[84,22053,22054],{"class":90}," { onMounted, ref } ",[84,22056,115],{"class":108},[84,22058,18866],{"class":118},[84,22060,18869],{"class":90},[84,22062,22063],{"class":86,"line":122},[84,22064,126],{"emptyLinePlaceholder":125},[84,22066,22067,22069,22071,22073,22075,22078,22081,22083,22086,22088,22090,22092,22094,22096],{"class":86,"line":129},[84,22068,132],{"class":108},[84,22070,18297],{"class":135},[84,22072,139],{"class":108},[84,22074,142],{"class":98},[84,22076,22077],{"class":90},"\u003C{ ",[84,22079,22080],{"class":429},"name",[84,22082,1203],{"class":108},[84,22084,22085],{"class":135}," string",[84,22087,18230],{"class":90},[84,22089,6558],{"class":108},[84,22091,1264],{"class":135},[84,22093,1267],{"class":90},[84,22095,1270],{"class":135},[84,22097,18994],{"class":90},[84,22099,22100],{"class":86,"line":154},[84,22101,126],{"emptyLinePlaceholder":125},[84,22103,22104,22106,22108,22110,22112,22114],{"class":86,"line":159},[84,22105,1503],{"class":98},[84,22107,145],{"class":90},[84,22109,1299],{"class":108},[84,22111,169],{"class":90},[84,22113,172],{"class":108},[84,22115,175],{"class":90},[84,22117,22118,22120,22122,22124,22126,22128,22130,22132,22135,22138,22141],{"class":86,"line":178},[84,22119,7020],{"class":108},[84,22121,1355],{"class":108},[84,22123,18074],{"class":135},[84,22125,3120],{"class":90},[84,22127,18079],{"class":429},[84,22129,3126],{"class":90},[84,22131,172],{"class":108},[84,22133,22134],{"class":98}," setTimeout",[84,22136,22137],{"class":90},"(resolve, ",[84,22139,22140],{"class":135},"350",[84,22142,22143],{"class":90},"));\n",[84,22145,22146,22149,22151,22154,22157],{"class":86,"line":190},[84,22147,22148],{"class":90},"  user.value ",[84,22150,184],{"class":108},[84,22152,22153],{"class":90}," { name: ",[84,22155,22156],{"class":118},"\"Cristhian\"",[84,22158,20412],{"class":90},[84,22160,22161],{"class":86,"line":196},[84,22162,22163],{"class":90},"});\n",[84,22165,22166,22168,22170],{"class":86,"line":201},[84,22167,274],{"class":90},[84,22169,95],{"class":94},[84,22171,102],{"class":90},[84,22173,22174],{"class":86,"line":217},[84,22175,126],{"emptyLinePlaceholder":125},[84,22177,22178,22180,22182],{"class":86,"line":227},[84,22179,91],{"class":90},[84,22181,291],{"class":94},[84,22183,102],{"class":90},[84,22185,22186,22188,22191,22193,22195,22197,22200],{"class":86,"line":232},[84,22187,299],{"class":90},[84,22189,22190],{"class":94},"aside",[84,22192,21708],{"class":98},[84,22194,1629],{"class":98},[84,22196,184],{"class":90},[84,22198,22199],{"class":118},"\"welcome-card\"",[84,22201,102],{"class":90},[84,22203,22204,22206,22208,22211,22213],{"class":86,"line":237},[84,22205,1642],{"class":90},[84,22207,34],{"class":94},[84,22209,22210],{"class":90},">Panel\u003C\u002F",[84,22212,34],{"class":94},[84,22214,102],{"class":90},[84,22216,22217,22219,22221,22223,22225,22228,22231,22233],{"class":86,"line":253},[84,22218,1642],{"class":90},[84,22220,15],{"class":94},[84,22222,344],{"class":98},[84,22224,184],{"class":90},[84,22226,22227],{"class":118},"\"user\"",[84,22229,22230],{"class":90},">Hola, {{ user.name }}\u003C\u002F",[84,22232,15],{"class":94},[84,22234,102],{"class":90},[84,22236,22237,22239,22241,22243,22246,22248],{"class":86,"line":266},[84,22238,1642],{"class":90},[84,22240,15],{"class":94},[84,22242,1753],{"class":98},[84,22244,22245],{"class":90},">Cargando perfil...\u003C\u002F",[84,22247,15],{"class":94},[84,22249,102],{"class":90},[84,22251,22252,22254,22256],{"class":86,"line":271},[84,22253,324],{"class":90},[84,22255,22190],{"class":94},[84,22257,102],{"class":90},[84,22259,22260,22262,22264],{"class":86,"line":281},[84,22261,274],{"class":90},[84,22263,291],{"class":94},[84,22265,102],{"class":90},[74,22267,22269],{"className":76,"code":22268,"filename":1782,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nexport default {\n  name: \"WelcomeCard\",\n  data() {\n    return {\n      user: null as null | { name: string },\n    };\n  },\n  async mounted() {\n    await new Promise((resolve) => setTimeout(resolve, 350));\n    this.user = { name: \"Cristhian\" };\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Caside v-cloak class=\"welcome-card\">\n    \u003Ch2>Panel\u003C\u002Fh2>\n    \u003Cp v-if=\"user\">Hola, {{ user.name }}\u003C\u002Fp>\n    \u003Cp v-else>Cargando perfil...\u003C\u002Fp>\n  \u003C\u002Faside>\n\u003C\u002Ftemplate>\n",[22,22270,22271,22285,22293,22302,22308,22314,22337,22341,22345,22353,22377,22392,22396,22400,22408,22412,22420,22436,22448,22466,22480,22488],{"__ignoreMap":80},[84,22272,22273,22275,22277,22279,22281,22283],{"class":86,"line":87},[84,22274,91],{"class":90},[84,22276,95],{"class":94},[84,22278,1161],{"class":98},[84,22280,184],{"class":90},[84,22282,1166],{"class":118},[84,22284,102],{"class":90},[84,22286,22287,22289,22291],{"class":86,"line":105},[84,22288,418],{"class":108},[84,22290,1870],{"class":108},[84,22292,175],{"class":90},[84,22294,22295,22297,22300],{"class":86,"line":122},[84,22296,1881],{"class":90},[84,22298,22299],{"class":118},"\"WelcomeCard\"",[84,22301,1887],{"class":90},[84,22303,22304,22306],{"class":86,"line":129},[84,22305,1896],{"class":98},[84,22307,1307],{"class":90},[84,22309,22310,22312],{"class":86,"line":154},[84,22311,1903],{"class":108},[84,22313,175],{"class":90},[84,22315,22316,22319,22321,22323,22325,22327,22329,22331,22333,22335],{"class":86,"line":159},[84,22317,22318],{"class":90},"      user: ",[84,22320,1270],{"class":135},[84,22322,1915],{"class":108},[84,22324,1264],{"class":135},[84,22326,1261],{"class":108},[84,22328,6763],{"class":90},[84,22330,22080],{"class":429},[84,22332,1203],{"class":108},[84,22334,22085],{"class":135},[84,22336,2921],{"class":90},[84,22338,22339],{"class":86,"line":178},[84,22340,19195],{"class":90},[84,22342,22343],{"class":86,"line":190},[84,22344,1941],{"class":90},[84,22346,22347,22349,22351],{"class":86,"line":196},[84,22348,2058],{"class":108},[84,22350,2139],{"class":98},[84,22352,1307],{"class":90},[84,22354,22355,22357,22359,22361,22363,22365,22367,22369,22371,22373,22375],{"class":86,"line":201},[84,22356,1435],{"class":108},[84,22358,1355],{"class":108},[84,22360,18074],{"class":135},[84,22362,3120],{"class":90},[84,22364,18079],{"class":429},[84,22366,3126],{"class":90},[84,22368,172],{"class":108},[84,22370,22134],{"class":98},[84,22372,22137],{"class":90},[84,22374,22140],{"class":135},[84,22376,22143],{"class":90},[84,22378,22379,22381,22384,22386,22388,22390],{"class":86,"line":217},[84,22380,5499],{"class":135},[84,22382,22383],{"class":90},".user ",[84,22385,184],{"class":108},[84,22387,22153],{"class":90},[84,22389,22156],{"class":118},[84,22391,20412],{"class":90},[84,22393,22394],{"class":86,"line":227},[84,22395,1941],{"class":90},[84,22397,22398],{"class":86,"line":232},[84,22399,18973],{"class":90},[84,22401,22402,22404,22406],{"class":86,"line":237},[84,22403,274],{"class":90},[84,22405,95],{"class":94},[84,22407,102],{"class":90},[84,22409,22410],{"class":86,"line":253},[84,22411,126],{"emptyLinePlaceholder":125},[84,22413,22414,22416,22418],{"class":86,"line":266},[84,22415,91],{"class":90},[84,22417,291],{"class":94},[84,22419,102],{"class":90},[84,22421,22422,22424,22426,22428,22430,22432,22434],{"class":86,"line":271},[84,22423,299],{"class":90},[84,22425,22190],{"class":94},[84,22427,21708],{"class":98},[84,22429,1629],{"class":98},[84,22431,184],{"class":90},[84,22433,22199],{"class":118},[84,22435,102],{"class":90},[84,22437,22438,22440,22442,22444,22446],{"class":86,"line":281},[84,22439,1642],{"class":90},[84,22441,34],{"class":94},[84,22443,22210],{"class":90},[84,22445,34],{"class":94},[84,22447,102],{"class":90},[84,22449,22450,22452,22454,22456,22458,22460,22462,22464],{"class":86,"line":286},[84,22451,1642],{"class":90},[84,22453,15],{"class":94},[84,22455,344],{"class":98},[84,22457,184],{"class":90},[84,22459,22227],{"class":118},[84,22461,22230],{"class":90},[84,22463,15],{"class":94},[84,22465,102],{"class":90},[84,22467,22468,22470,22472,22474,22476,22478],{"class":86,"line":296},[84,22469,1642],{"class":90},[84,22471,15],{"class":94},[84,22473,1753],{"class":98},[84,22475,22245],{"class":90},[84,22477,15],{"class":94},[84,22479,102],{"class":90},[84,22481,22482,22484,22486],{"class":86,"line":315},[84,22483,324],{"class":90},[84,22485,22190],{"class":94},[84,22487,102],{"class":90},[84,22489,22490,22492,22494],{"class":86,"line":321},[84,22491,274],{"class":90},[84,22493,291],{"class":94},[84,22495,102],{"class":90},[74,22497,22498],{"className":21385,"code":21585,"filename":21387,"language":21388,"meta":80,"style":80},[22,22499,22500,22508,22518],{"__ignoreMap":80},[84,22501,22502,22504,22506],{"class":86,"line":87},[84,22503,21395],{"class":90},[84,22505,21317],{"class":98},[84,22507,21400],{"class":90},[84,22509,22510,22512,22514,22516],{"class":86,"line":105},[84,22511,21600],{"class":135},[84,22513,21408],{"class":90},[84,22515,21411],{"class":135},[84,22517,18869],{"class":90},[84,22519,22520],{"class":86,"line":122},[84,22521,193],{"class":90},[34,22523,2406],{"id":2405},[15,22525,22526,22528],{},[22,22527,21317],{}," es una directiva de acabado visual: no modifica tu lógica ni tu modelo de reactividad, pero sí mejora la calidad percibida del render inicial en contextos donde el template puede mostrarse sin compilar.",[15,22530,22531],{},[958,22532,22533],{},"Puntos clave:",[737,22535,22536,22541,22544,22547],{},[740,22537,22538,22539,764],{},"Requiere una regla CSS global: ",[22,22540,21539],{},[740,22542,22543],{},"Previene el flash de interpolaciones sin procesar.",[740,22545,22546],{},"No sustituye optimización de rendimiento ni resuelve hydration mismatches.",[740,22548,22549],{},"Debe aplicarse de forma selectiva y consciente del contexto (SPA vs SSR).",[835,22551,22552],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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 .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":80,"searchDepth":105,"depth":105,"links":22554},[22555,22556,22557,22558,22559,22560,22568,22574],{"id":21333,"depth":105,"text":21334},{"id":946,"depth":105,"text":947},{"id":21443,"depth":105,"text":21444},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":783,"depth":105,"text":784,"children":22561},[22562,22564,22566,22567],{"id":21529,"depth":122,"text":22563},"1) Usar v-cloak sin CSS",{"id":21543,"depth":122,"text":22565},"2) Declarar la regla en un \u003Cstyle scoped>",{"id":21560,"depth":122,"text":21561},{"id":21570,"depth":122,"text":21571},{"id":2735,"depth":105,"text":2736,"children":22569},[22570,22571,22572,22573],{"id":21581,"depth":122,"text":21582},{"id":21621,"depth":122,"text":21622},{"id":22015,"depth":122,"text":22016},{"id":22025,"depth":122,"text":22026},{"id":2405,"depth":105,"text":2406},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1771976009\u002Fdirectives-vue-v-cloak-guide_vhkz2i.png","Portada temporal para el artículo sobre v-cloak en Vue","2026-02-25","Aprende a usar v-cloak en Vue 3 para evitar el parpadeo de plantillas sin compilar, con Composition API y Options API, casos reales, errores comunes y buenas prácticas.",{"updatedAt":22580,"coverCaption":18477,"author":868,"keywords":22581},"2026-02-25T12:30:00-05:00",[870,21317,22582,22583,873,1782],"FOUC","hydration","\u002Fblog\u002Fdirectives-vue-v-cloak-guide.es",[22586],{"headline":22587,"author":22588,"datePublished":22580,"@type":880},"Directiva v-cloak en Vue: evita parpadeos antes del montaje",{"name":868,"@type":879},{"title":21308,"description":22578},"blog\u002Fdirectives-vue-v-cloak-guide.es",[22592,22593,22596,22597],{"tag":21297,"color":21298},{"tag":22594,"color":22595},"Templates","#00B894",{"tag":3942,"color":3943},{"tag":894,"color":895},"JfS7unY1XQ1HsdW8oWBHbTqDpzHjl2-9BrnPQZr3SRE",{"id":22600,"title":22601,"body":22602,"cover":25252,"coverAlt":25253,"date":25254,"description":25255,"draft":852,"extension":853,"lab":882,"locale":864,"meta":25256,"navigation":125,"path":25260,"schemaOrg":25261,"seo":25265,"series":21291,"seriesDescription":21292,"seriesOrder":196,"seriesTitle":21293,"slug":882,"stem":25266,"tags":25267,"__hash__":25273},"blog\u002Fblog\u002Fdirectives-vue-v-once-v-memo-v-pre-guide.es.md","Directivas en Vue: v-once \u002F v-memo \u002F v-pre",{"type":8,"value":22603,"toc":25222},[22604,22616,22629,22631,22634,22637,22654,22657,22659,22663,22666,22669,22673,22684,22693,22697,22707,22710,22712,22715,22735,22738,22753,22755,22758,22776,22779,22781,22798,22801,22818,22820,22827,22833,22842,22848,22851,22856,22863,22868,22875,22879,22882,22887,22889,22895,23033,23165,23177,23183,23536,23807,23823,23829,23927,24044,24048,24060,24666,25188,25190,25199,25216,25219],[11,22605,21314,22607,6014,22610,6014,22613],{"id":22606},"directivas-en-vue-v-once-v-memo-v-pre",[22,22608,22609],{},"v-once",[22,22611,22612],{},"v-memo",[22,22614,22615],{},"v-pre",[15,22617,22618,754,22620,2488,22622,22624,22625,22628],{},[22,22619,22609],{},[22,22621,22612],{},[22,22623,22615],{}," son directivas enfocadas en rendimiento y control de compilación\u002Frender. No son para “poner en todo”, pero en escenarios concretos reducen trabajo innecesario y evitan ",[4070,22626,22627],{},"re-renders"," costosos.",[34,22630,21334],{"id":21333},[15,22632,22633],{},"En apps grandes, muchos problemas de rendimiento no vienen de una sola operación pesada, sino de miles de renders pequeños que se repiten sin necesidad.",[15,22635,22636],{},"Estas directivas te permiten:",[737,22638,22639,22644,22649],{},[740,22640,22641,22642,2686],{},"Congelar fragmentos estáticos (",[22,22643,22609],{},[740,22645,22646,22647,2686],{},"Reutilizar subárboles cuando dependencias clave no cambian (",[22,22648,22612],{},[740,22650,22651,22652,2686],{},"Omitir compilación de expresiones para contenido literal (",[22,22653,22615],{},[15,22655,22656],{},"Usadas con criterio, mejoran la fluidez sin romper la legibilidad.",[34,22658,947],{"id":946},[1074,22660,22661],{"id":22609},[22,22662,22609],{},[15,22664,22665],{},"Renderiza el nodo una sola vez. En actualizaciones posteriores, Vue reutiliza el resultado y no vuelve a evaluarlo.",[15,22667,22668],{},"Ideal para contenido realmente inmutable (versión de build, texto legal fijo, metadata de entorno, etc.).",[1074,22670,22671],{"id":22612},[22,22672,22612],{},[15,22674,22675,22676,22679,22680,22683],{},"Memoiza (cachea) un subárbol del template con base en un ",[958,22677,22678],{},"arreglo de dependencias",". Si ninguna dependencia cambia, Vue omite el ",[4070,22681,22682],{},"patch"," de ese subárbol.",[15,22685,22686,22687,22689,22690,764],{},"Útil cuando una porción del template es costosa y depende de pocas señales estables. Nota importante: ",[22,22688,22612],{}," existe desde Vue ",[958,22691,22692],{},"3.2+",[1074,22694,22695],{"id":22615},[22,22696,22615],{},[15,22698,22699,22700,22703,22704,22706],{},"Le dice a Vue que ",[958,22701,22702],{},"no compile"," ese bloque. Las interpolaciones ",[22,22705,21329],{}," se muestran como texto literal.",[15,22708,22709],{},"Es perfecto para ejemplos de código o snippets donde quieres imprimir sintaxis de Vue sin evaluarla.",[34,22711,1013],{"id":1012},[15,22713,22714],{},"Usa estas directivas cuando tengas una razón concreta y medible:",[737,22716,22717,22722,22730],{},[740,22718,22719,22721],{},[22,22720,22609],{},": bloques estáticos que no deben reaccionar a cambios.",[740,22723,22724,22726,22727,764],{},[22,22725,22612],{},": listas o tarjetas complejas con alto costo de render cuando conoces ",[958,22728,22729],{},"dependencias exactas",[740,22731,22732,22734],{},[22,22733,22615],{},": documentación, tutoriales o demos donde quieres mostrar moustaches literalmente.",[15,22736,22737],{},"Casos reales:",[737,22739,22740,22747,22750],{},[740,22741,22742,22743,22746],{},"Dashboard con cards densas que solo cambian por ",[22,22744,22745],{},"id"," y estado puntual.",[740,22748,22749],{},"Pantalla de onboarding con secciones 100% estáticas.",[740,22751,22752],{},"Vista de documentación dentro de tu app que muestra sintaxis de Vue “en crudo”.",[34,22754,1040],{"id":1039},[15,22756,22757],{},"Evítalas cuando solo intentas “optimizar por optimizar”:",[737,22759,22760,22766,22771],{},[740,22761,22762,22763,22765],{},"No uses ",[22,22764,22609],{}," en datos que luego deben actualizarse.",[740,22767,22762,22768,22770],{},[22,22769,22612],{}," sin entender bien sus dependencias; puede ocultar cambios esperados.",[740,22772,22762,22773,22775],{},[22,22774,22615],{}," en bloques que sí necesitan bindings o eventos.",[15,22777,22778],{},"Si no has detectado un problema real de render, primero mide con Vue Devtools antes de complejizar el template.",[34,22780,6158],{"id":6157},[737,22782,22783,22788,22793],{},[740,22784,22785,22787],{},[22,22786,22609],{},": congelado permanente después del primer render.",[740,22789,22790,22792],{},[22,22791,22612],{},": congelado condicional según dependencias.",[740,22794,22795,22797],{},[22,22796,22615],{},": sin compilación de plantilla; salida literal.",[15,22799,22800],{},"Regla rápida:",[737,22802,22803,22808,22813],{},[740,22804,22805,22806,764],{},"Quieres “no volver a actualizar nunca”: ",[22,22807,22609],{},[740,22809,22810,22811,764],{},"Quieres “actualizar solo si cambian X dependencias”: ",[22,22812,22612],{},[740,22814,22815,22816,764],{},"Quieres “mostrar template sin interpretar”: ",[22,22817,22615],{},[34,22819,784],{"id":783},[1074,22821,22823,22824,22826],{"id":22822},"_1-aplicar-v-once-sobre-datos-que-sí-cambian","1) Aplicar ",[22,22825,22609],{}," sobre datos que sí cambian",[15,22828,22829,22830,22832],{},"Si la fuente cambia pero el nodo tiene ",[22,22831,22609],{},", la UI quedará desfasada.",[15,22834,22835,22838,22839,22841],{},[958,22836,22837],{},"Solución:"," limita ",[22,22840,22609],{}," a contenido estrictamente inmutable.",[1074,22843,22845,22846],{"id":22844},"_2-definir-mal-dependencias-en-v-memo","2) Definir mal dependencias en ",[22,22847,22612],{},[15,22849,22850],{},"Si olvidas una dependencia relevante, Vue puede reutilizar un subárbol viejo.\nSi incluyes demasiadas dependencias, pierdes el beneficio.",[15,22852,22853,22855],{},[958,22854,22837],{}," declara solo señales que realmente afectan el HTML renderizado (y asegúrate de incluir todas).",[1074,22857,22859,22860,22862],{"id":22858},"_3-esperar-que-v-pre-procese-directivas-o-interpolaciones","3) Esperar que ",[22,22861,22615],{}," procese directivas o interpolaciones",[15,22864,12736,22865,22867],{},[22,22866,22615],{},", Vue no interpreta nada dentro del bloque (ni moustaches, ni directivas anidadas).",[15,22869,22870,17743,22872,22874],{},[958,22871,22837],{},[22,22873,22615],{}," solo para salida literal\u002Fdocumentación.",[1074,22876,22878],{"id":22877},"_4-usarlas-sin-validar-impacto","4) Usarlas sin validar impacto",[15,22880,22881],{},"Agregar estas directivas indiscriminadamente puede aumentar complejidad sin mejorar performance real.",[15,22883,22884,22886],{},[958,22885,22837],{}," perfila primero y optimiza donde el costo sea comprobable.",[34,22888,2736],{"id":2735},[1074,22890,22892,22893],{"id":22891},"_1-bloque-estático-con-v-once","1) Bloque estático con ",[22,22894,22609],{},[74,22896,22899],{"className":76,"code":22897,"filename":873,"highlights":22898,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\nconst counter = ref(0);\nconst buildVersion = \"2026.02.24\";\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"counter++\">Clicks: {{ counter }}\u003C\u002Fbutton>\n\n  \u003Cp v-once>Build: {{ buildVersion }}\u003C\u002Fp>\n\u003C\u002Ftemplate>\n",[217],[22,22900,22901,22917,22929,22933,22950,22964,22972,22976,22984,23004,23008,23025],{"__ignoreMap":80},[84,22902,22903,22905,22907,22909,22911,22913,22915],{"class":86,"line":87},[84,22904,91],{"class":90},[84,22906,95],{"class":94},[84,22908,99],{"class":98},[84,22910,1161],{"class":98},[84,22912,184],{"class":90},[84,22914,1166],{"class":118},[84,22916,102],{"class":90},[84,22918,22919,22921,22923,22925,22927],{"class":86,"line":105},[84,22920,109],{"class":108},[84,22922,112],{"class":90},[84,22924,115],{"class":108},[84,22926,18866],{"class":118},[84,22928,18869],{"class":90},[84,22930,22931],{"class":86,"line":122},[84,22932,126],{"emptyLinePlaceholder":125},[84,22934,22935,22937,22940,22942,22944,22946,22948],{"class":86,"line":129},[84,22936,132],{"class":108},[84,22938,22939],{"class":135}," counter",[84,22941,139],{"class":108},[84,22943,142],{"class":98},[84,22945,145],{"class":90},[84,22947,4320],{"class":135},[84,22949,18994],{"class":90},[84,22951,22952,22954,22957,22959,22962],{"class":86,"line":154},[84,22953,132],{"class":108},[84,22955,22956],{"class":135}," buildVersion",[84,22958,139],{"class":108},[84,22960,22961],{"class":118}," \"2026.02.24\"",[84,22963,18869],{"class":90},[84,22965,22966,22968,22970],{"class":86,"line":159},[84,22967,274],{"class":90},[84,22969,95],{"class":94},[84,22971,102],{"class":90},[84,22973,22974],{"class":86,"line":178},[84,22975,126],{"emptyLinePlaceholder":125},[84,22977,22978,22980,22982],{"class":86,"line":190},[84,22979,91],{"class":90},[84,22981,291],{"class":94},[84,22983,102],{"class":90},[84,22985,22986,22988,22990,22992,22994,22997,23000,23002],{"class":86,"line":196},[84,22987,299],{"class":90},[84,22989,302],{"class":94},[84,22991,305],{"class":98},[84,22993,184],{"class":90},[84,22995,22996],{"class":118},"\"counter++\"",[84,22998,22999],{"class":90},">Clicks: {{ counter }}\u003C\u002F",[84,23001,302],{"class":94},[84,23003,102],{"class":90},[84,23005,23006],{"class":86,"line":201},[84,23007,126],{"emptyLinePlaceholder":125},[84,23009,23011,23013,23015,23018,23021,23023],{"class":23010,"line":217},[86,10151],[84,23012,299],{"class":90},[84,23014,15],{"class":94},[84,23016,23017],{"class":98}," v-once",[84,23019,23020],{"class":90},">Build: {{ buildVersion }}\u003C\u002F",[84,23022,15],{"class":94},[84,23024,102],{"class":90},[84,23026,23027,23029,23031],{"class":86,"line":227},[84,23028,274],{"class":90},[84,23030,291],{"class":94},[84,23032,102],{"class":90},[74,23034,23037],{"className":76,"code":23035,"filename":1782,"highlights":23036,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      counter: 0,\n      buildVersion: \"2026.02.24\",\n    };\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"counter++\">Clicks: {{ counter }}\u003C\u002Fbutton>\n  \u003Cp v-once>Build: {{ buildVersion }}\u003C\u002Fp>\n\u003C\u002Ftemplate>\n",[237],[22,23038,23039,23053,23061,23067,23073,23082,23092,23096,23100,23104,23112,23116,23124,23142,23157],{"__ignoreMap":80},[84,23040,23041,23043,23045,23047,23049,23051],{"class":86,"line":87},[84,23042,91],{"class":90},[84,23044,95],{"class":94},[84,23046,1161],{"class":98},[84,23048,184],{"class":90},[84,23050,1166],{"class":118},[84,23052,102],{"class":90},[84,23054,23055,23057,23059],{"class":86,"line":105},[84,23056,418],{"class":108},[84,23058,1870],{"class":108},[84,23060,175],{"class":90},[84,23062,23063,23065],{"class":86,"line":122},[84,23064,1896],{"class":98},[84,23066,1307],{"class":90},[84,23068,23069,23071],{"class":86,"line":129},[84,23070,1903],{"class":108},[84,23072,175],{"class":90},[84,23074,23075,23078,23080],{"class":86,"line":154},[84,23076,23077],{"class":90},"      counter: ",[84,23079,4320],{"class":135},[84,23081,1887],{"class":90},[84,23083,23084,23087,23090],{"class":86,"line":159},[84,23085,23086],{"class":90},"      buildVersion: ",[84,23088,23089],{"class":118},"\"2026.02.24\"",[84,23091,1887],{"class":90},[84,23093,23094],{"class":86,"line":178},[84,23095,19195],{"class":90},[84,23097,23098],{"class":86,"line":190},[84,23099,1941],{"class":90},[84,23101,23102],{"class":86,"line":196},[84,23103,18973],{"class":90},[84,23105,23106,23108,23110],{"class":86,"line":201},[84,23107,274],{"class":90},[84,23109,95],{"class":94},[84,23111,102],{"class":90},[84,23113,23114],{"class":86,"line":217},[84,23115,126],{"emptyLinePlaceholder":125},[84,23117,23118,23120,23122],{"class":86,"line":227},[84,23119,91],{"class":90},[84,23121,291],{"class":94},[84,23123,102],{"class":90},[84,23125,23126,23128,23130,23132,23134,23136,23138,23140],{"class":86,"line":232},[84,23127,299],{"class":90},[84,23129,302],{"class":94},[84,23131,305],{"class":98},[84,23133,184],{"class":90},[84,23135,22996],{"class":118},[84,23137,22999],{"class":90},[84,23139,302],{"class":94},[84,23141,102],{"class":90},[84,23143,23145,23147,23149,23151,23153,23155],{"class":23144,"line":237},[86,10151],[84,23146,299],{"class":90},[84,23148,15],{"class":94},[84,23150,23017],{"class":98},[84,23152,23020],{"class":90},[84,23154,15],{"class":94},[84,23156,102],{"class":90},[84,23158,23159,23161,23163],{"class":86,"line":253},[84,23160,274],{"class":90},[84,23162,291],{"class":94},[84,23164,102],{"class":90},[823,23166,23167],{},[15,23168,23169,23170,23173,23174,23176],{},"Nota: este ejemplo asume que ",[22,23171,23172],{},"buildVersion"," es inmutable. Si en tu app podría cambiar (p. ej., viene de una llamada async), ",[22,23175,22609],{}," no es lo correcto.",[1074,23178,23180,23181],{"id":23179},"_2-segmento-pesado-con-v-memo","2) Segmento pesado con ",[22,23182,22612],{},[74,23184,23187],{"className":76,"code":23185,"filename":873,"highlights":23186,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\ntype UserCard = { id: number; name: string; isOnline: boolean; score: number };\n\nconst selectedId = ref\u003Cnumber | null>(null);\nconst users = ref\u003CUserCard[]>([\n  { id: 1, name: \"Ana\", isOnline: true, score: 98 },\n  { id: 2, name: \"Luis\", isOnline: false, score: 77 },\n  { id: 3, name: \"Marta\", isOnline: true, score: 88 },\n]);\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Carticle\n    v-for=\"user in users\"\n    :key=\"user.id\"\n    v-memo=\"[user.id, user.isOnline, selectedId === user.id]\"\n    class=\"card\"\n  >\n    \u003Ch3>{{ user.name }}\u003C\u002Fh3>\n    \u003Cp>Puntaje: {{ user.score }}\u003C\u002Fp>\n    \u003Cp>{{ user.isOnline ? \"En línea\" : \"Desconectado\" }}\u003C\u002Fp>\n    \u003Cbutton @click=\"selectedId = user.id\">Seleccionar\u003C\u002Fbutton>\n  \u003C\u002Farticle>\n\u003C\u002Ftemplate>\n",[281],[22,23188,23189,23205,23217,23221,23268,23272,23297,23315,23339,23361,23383,23388,23396,23400,23408,23415,23425,23435,23446,23456,23461,23474,23487,23500,23520,23528],{"__ignoreMap":80},[84,23190,23191,23193,23195,23197,23199,23201,23203],{"class":86,"line":87},[84,23192,91],{"class":90},[84,23194,95],{"class":94},[84,23196,99],{"class":98},[84,23198,1161],{"class":98},[84,23200,184],{"class":90},[84,23202,1166],{"class":118},[84,23204,102],{"class":90},[84,23206,23207,23209,23211,23213,23215],{"class":86,"line":105},[84,23208,109],{"class":108},[84,23210,112],{"class":90},[84,23212,115],{"class":108},[84,23214,18866],{"class":118},[84,23216,18869],{"class":90},[84,23218,23219],{"class":86,"line":122},[84,23220,126],{"emptyLinePlaceholder":125},[84,23222,23223,23225,23228,23230,23232,23234,23236,23238,23241,23243,23245,23247,23249,23252,23254,23257,23259,23262,23264,23266],{"class":86,"line":129},[84,23224,1188],{"class":108},[84,23226,23227],{"class":98}," UserCard",[84,23229,139],{"class":108},[84,23231,6763],{"class":90},[84,23233,22745],{"class":429},[84,23235,1203],{"class":108},[84,23237,3259],{"class":135},[84,23239,23240],{"class":90},"; ",[84,23242,22080],{"class":429},[84,23244,1203],{"class":108},[84,23246,22085],{"class":135},[84,23248,23240],{"class":90},[84,23250,23251],{"class":429},"isOnline",[84,23253,1203],{"class":108},[84,23255,23256],{"class":135}," boolean",[84,23258,23240],{"class":90},[84,23260,23261],{"class":429},"score",[84,23263,1203],{"class":108},[84,23265,3259],{"class":135},[84,23267,20412],{"class":90},[84,23269,23270],{"class":86,"line":154},[84,23271,126],{"emptyLinePlaceholder":125},[84,23273,23274,23276,23279,23281,23283,23285,23287,23289,23291,23293,23295],{"class":86,"line":159},[84,23275,132],{"class":108},[84,23277,23278],{"class":135}," selectedId",[84,23280,139],{"class":108},[84,23282,142],{"class":98},[84,23284,91],{"class":90},[84,23286,8732],{"class":135},[84,23288,1261],{"class":108},[84,23290,1264],{"class":135},[84,23292,1267],{"class":90},[84,23294,1270],{"class":135},[84,23296,18994],{"class":90},[84,23298,23299,23301,23303,23305,23307,23309,23312],{"class":86,"line":178},[84,23300,132],{"class":108},[84,23302,11767],{"class":135},[84,23304,139],{"class":108},[84,23306,142],{"class":98},[84,23308,91],{"class":90},[84,23310,23311],{"class":98},"UserCard",[84,23313,23314],{"class":90},"[]>([\n",[84,23316,23317,23319,23321,23324,23326,23329,23331,23334,23337],{"class":86,"line":190},[84,23318,2899],{"class":90},[84,23320,2862],{"class":135},[84,23322,23323],{"class":90},", name: ",[84,23325,18308],{"class":118},[84,23327,23328],{"class":90},", isOnline: ",[84,23330,2938],{"class":135},[84,23332,23333],{"class":90},", score: ",[84,23335,23336],{"class":135},"98",[84,23338,2921],{"class":90},[84,23340,23341,23343,23345,23347,23350,23352,23354,23356,23359],{"class":86,"line":196},[84,23342,2899],{"class":90},[84,23344,2928],{"class":135},[84,23346,23323],{"class":90},[84,23348,23349],{"class":118},"\"Luis\"",[84,23351,23328],{"class":90},[84,23353,148],{"class":135},[84,23355,23333],{"class":90},[84,23357,23358],{"class":135},"77",[84,23360,2921],{"class":90},[84,23362,23363,23365,23367,23369,23372,23374,23376,23378,23381],{"class":86,"line":201},[84,23364,2899],{"class":90},[84,23366,2952],{"class":135},[84,23368,23323],{"class":90},[84,23370,23371],{"class":118},"\"Marta\"",[84,23373,23328],{"class":90},[84,23375,2938],{"class":135},[84,23377,23333],{"class":90},[84,23379,23380],{"class":135},"88",[84,23382,2921],{"class":90},[84,23384,23385],{"class":86,"line":217},[84,23386,23387],{"class":90},"]);\n",[84,23389,23390,23392,23394],{"class":86,"line":227},[84,23391,274],{"class":90},[84,23393,95],{"class":94},[84,23395,102],{"class":90},[84,23397,23398],{"class":86,"line":232},[84,23399,126],{"emptyLinePlaceholder":125},[84,23401,23402,23404,23406],{"class":86,"line":237},[84,23403,91],{"class":90},[84,23405,291],{"class":94},[84,23407,102],{"class":90},[84,23409,23410,23412],{"class":86,"line":253},[84,23411,299],{"class":90},[84,23413,23414],{"class":94},"article\n",[84,23416,23417,23420,23422],{"class":86,"line":266},[84,23418,23419],{"class":98},"    v-for",[84,23421,184],{"class":90},[84,23423,23424],{"class":118},"\"user in users\"\n",[84,23426,23427,23430,23432],{"class":86,"line":271},[84,23428,23429],{"class":98},"    :key",[84,23431,184],{"class":90},[84,23433,23434],{"class":118},"\"user.id\"\n",[84,23436,23438,23441,23443],{"class":23437,"line":281},[86,10151],[84,23439,23440],{"class":98},"    v-memo",[84,23442,184],{"class":90},[84,23444,23445],{"class":118},"\"[user.id, user.isOnline, selectedId === user.id]\"\n",[84,23447,23448,23451,23453],{"class":86,"line":286},[84,23449,23450],{"class":98},"    class",[84,23452,184],{"class":90},[84,23454,23455],{"class":118},"\"card\"\n",[84,23457,23458],{"class":86,"line":296},[84,23459,23460],{"class":90},"  >\n",[84,23462,23463,23465,23467,23470,23472],{"class":86,"line":315},[84,23464,1642],{"class":90},[84,23466,1074],{"class":94},[84,23468,23469],{"class":90},">{{ user.name }}\u003C\u002F",[84,23471,1074],{"class":94},[84,23473,102],{"class":90},[84,23475,23476,23478,23480,23483,23485],{"class":86,"line":321},[84,23477,1642],{"class":90},[84,23479,15],{"class":94},[84,23481,23482],{"class":90},">Puntaje: {{ user.score }}\u003C\u002F",[84,23484,15],{"class":94},[84,23486,102],{"class":90},[84,23488,23489,23491,23493,23496,23498],{"class":86,"line":331},[84,23490,1642],{"class":90},[84,23492,15],{"class":94},[84,23494,23495],{"class":90},">{{ user.isOnline ? \"En línea\" : \"Desconectado\" }}\u003C\u002F",[84,23497,15],{"class":94},[84,23499,102],{"class":90},[84,23501,23502,23504,23506,23508,23510,23513,23516,23518],{"class":86,"line":336},[84,23503,1642],{"class":90},[84,23505,302],{"class":94},[84,23507,305],{"class":98},[84,23509,184],{"class":90},[84,23511,23512],{"class":118},"\"selectedId = user.id\"",[84,23514,23515],{"class":90},">Seleccionar\u003C\u002F",[84,23517,302],{"class":94},[84,23519,102],{"class":90},[84,23521,23522,23524,23526],{"class":86,"line":354},[84,23523,324],{"class":90},[84,23525,1626],{"class":94},[84,23527,102],{"class":90},[84,23529,23530,23532,23534],{"class":86,"line":360},[84,23531,274],{"class":90},[84,23533,291],{"class":94},[84,23535,102],{"class":90},[74,23537,23540],{"className":76,"code":23538,"filename":1782,"highlights":23539,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      selectedId: null as number | null,\n      users: [\n        { id: 1, name: \"Ana\", isOnline: true, score: 98 },\n        { id: 2, name: \"Luis\", isOnline: false, score: 77 },\n        { id: 3, name: \"Marta\", isOnline: true, score: 88 },\n      ],\n    };\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Carticle\n    v-for=\"user in users\"\n    :key=\"user.id\"\n    v-memo=\"[user.id, user.isOnline, selectedId === user.id]\"\n    class=\"card\"\n  >\n    \u003Ch3>{{ user.name }}\u003C\u002Fh3>\n    \u003Cp>Puntaje: {{ user.score }}\u003C\u002Fp>\n    \u003Cp>{{ user.isOnline ? \"En línea\" : \"Desconectado\" }}\u003C\u002Fp>\n    \u003Cbutton @click=\"selectedId = user.id\">Seleccionar\u003C\u002Fbutton>\n  \u003C\u002Farticle>\n\u003C\u002Ftemplate>\n",[296],[22,23541,23542,23556,23564,23570,23576,23593,23598,23618,23638,23658,23662,23666,23670,23674,23682,23686,23694,23700,23708,23716,23725,23733,23737,23749,23761,23773,23791,23799],{"__ignoreMap":80},[84,23543,23544,23546,23548,23550,23552,23554],{"class":86,"line":87},[84,23545,91],{"class":90},[84,23547,95],{"class":94},[84,23549,1161],{"class":98},[84,23551,184],{"class":90},[84,23553,1166],{"class":118},[84,23555,102],{"class":90},[84,23557,23558,23560,23562],{"class":86,"line":105},[84,23559,418],{"class":108},[84,23561,1870],{"class":108},[84,23563,175],{"class":90},[84,23565,23566,23568],{"class":86,"line":122},[84,23567,1896],{"class":98},[84,23569,1307],{"class":90},[84,23571,23572,23574],{"class":86,"line":129},[84,23573,1903],{"class":108},[84,23575,175],{"class":90},[84,23577,23578,23581,23583,23585,23587,23589,23591],{"class":86,"line":154},[84,23579,23580],{"class":90},"      selectedId: ",[84,23582,1270],{"class":135},[84,23584,1915],{"class":108},[84,23586,3259],{"class":135},[84,23588,1261],{"class":108},[84,23590,1264],{"class":135},[84,23592,1887],{"class":90},[84,23594,23595],{"class":86,"line":159},[84,23596,23597],{"class":90},"      users: [\n",[84,23599,23600,23602,23604,23606,23608,23610,23612,23614,23616],{"class":86,"line":178},[84,23601,3449],{"class":90},[84,23603,2862],{"class":135},[84,23605,23323],{"class":90},[84,23607,18308],{"class":118},[84,23609,23328],{"class":90},[84,23611,2938],{"class":135},[84,23613,23333],{"class":90},[84,23615,23336],{"class":135},[84,23617,2921],{"class":90},[84,23619,23620,23622,23624,23626,23628,23630,23632,23634,23636],{"class":86,"line":190},[84,23621,3449],{"class":90},[84,23623,2928],{"class":135},[84,23625,23323],{"class":90},[84,23627,23349],{"class":118},[84,23629,23328],{"class":90},[84,23631,148],{"class":135},[84,23633,23333],{"class":90},[84,23635,23358],{"class":135},[84,23637,2921],{"class":90},[84,23639,23640,23642,23644,23646,23648,23650,23652,23654,23656],{"class":86,"line":196},[84,23641,3449],{"class":90},[84,23643,2952],{"class":135},[84,23645,23323],{"class":90},[84,23647,23371],{"class":118},[84,23649,23328],{"class":90},[84,23651,2938],{"class":135},[84,23653,23333],{"class":90},[84,23655,23380],{"class":135},[84,23657,2921],{"class":90},[84,23659,23660],{"class":86,"line":201},[84,23661,10927],{"class":90},[84,23663,23664],{"class":86,"line":217},[84,23665,19195],{"class":90},[84,23667,23668],{"class":86,"line":227},[84,23669,1941],{"class":90},[84,23671,23672],{"class":86,"line":232},[84,23673,18973],{"class":90},[84,23675,23676,23678,23680],{"class":86,"line":237},[84,23677,274],{"class":90},[84,23679,95],{"class":94},[84,23681,102],{"class":90},[84,23683,23684],{"class":86,"line":253},[84,23685,126],{"emptyLinePlaceholder":125},[84,23687,23688,23690,23692],{"class":86,"line":266},[84,23689,91],{"class":90},[84,23691,291],{"class":94},[84,23693,102],{"class":90},[84,23695,23696,23698],{"class":86,"line":271},[84,23697,299],{"class":90},[84,23699,23414],{"class":94},[84,23701,23702,23704,23706],{"class":86,"line":281},[84,23703,23419],{"class":98},[84,23705,184],{"class":90},[84,23707,23424],{"class":118},[84,23709,23710,23712,23714],{"class":86,"line":286},[84,23711,23429],{"class":98},[84,23713,184],{"class":90},[84,23715,23434],{"class":118},[84,23717,23719,23721,23723],{"class":23718,"line":296},[86,10151],[84,23720,23440],{"class":98},[84,23722,184],{"class":90},[84,23724,23445],{"class":118},[84,23726,23727,23729,23731],{"class":86,"line":315},[84,23728,23450],{"class":98},[84,23730,184],{"class":90},[84,23732,23455],{"class":118},[84,23734,23735],{"class":86,"line":321},[84,23736,23460],{"class":90},[84,23738,23739,23741,23743,23745,23747],{"class":86,"line":331},[84,23740,1642],{"class":90},[84,23742,1074],{"class":94},[84,23744,23469],{"class":90},[84,23746,1074],{"class":94},[84,23748,102],{"class":90},[84,23750,23751,23753,23755,23757,23759],{"class":86,"line":336},[84,23752,1642],{"class":90},[84,23754,15],{"class":94},[84,23756,23482],{"class":90},[84,23758,15],{"class":94},[84,23760,102],{"class":90},[84,23762,23763,23765,23767,23769,23771],{"class":86,"line":354},[84,23764,1642],{"class":90},[84,23766,15],{"class":94},[84,23768,23495],{"class":90},[84,23770,15],{"class":94},[84,23772,102],{"class":90},[84,23774,23775,23777,23779,23781,23783,23785,23787,23789],{"class":86,"line":360},[84,23776,1642],{"class":90},[84,23778,302],{"class":94},[84,23780,305],{"class":98},[84,23782,184],{"class":90},[84,23784,23512],{"class":118},[84,23786,23515],{"class":90},[84,23788,302],{"class":94},[84,23790,102],{"class":90},[84,23792,23793,23795,23797],{"class":86,"line":369},[84,23794,324],{"class":90},[84,23796,1626],{"class":94},[84,23798,102],{"class":90},[84,23800,23801,23803,23805],{"class":86,"line":1453},[84,23802,274],{"class":90},[84,23804,291],{"class":94},[84,23806,102],{"class":90},[823,23808,23809],{},[15,23810,23811,23812,23814,23815,23818,23819,23822],{},"Importante: el arreglo de ",[22,23813,22612],{}," debe incluir ",[958,23816,23817],{},"todo"," lo que afecte el HTML. Si ",[22,23820,23821],{},"user.score"," puede cambiar, también debería estar en dependencias (si no, el DOM podría quedarse con un puntaje viejo).",[1074,23824,23826,23827],{"id":23825},"_3-bloque-literal-con-v-pre","3) Bloque literal con ",[22,23828,22615],{},[74,23830,23833],{"className":76,"code":23831,"filename":873,"highlights":23832,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nconst message = \"No debe renderizarse dentro del bloque v-pre\";\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cp>{{ message }}\u003C\u002Fp>\n\n  \u003Cpre v-pre>{{ message }} + {{ 2 + 2 }}\u003C\u002Fpre>\n\u003C\u002Ftemplate>\n",[190],[22,23834,23835,23851,23865,23873,23877,23885,23898,23902,23919],{"__ignoreMap":80},[84,23836,23837,23839,23841,23843,23845,23847,23849],{"class":86,"line":87},[84,23838,91],{"class":90},[84,23840,95],{"class":94},[84,23842,99],{"class":98},[84,23844,1161],{"class":98},[84,23846,184],{"class":90},[84,23848,1166],{"class":118},[84,23850,102],{"class":90},[84,23852,23853,23855,23858,23860,23863],{"class":86,"line":105},[84,23854,132],{"class":108},[84,23856,23857],{"class":135}," message",[84,23859,139],{"class":108},[84,23861,23862],{"class":118}," \"No debe renderizarse dentro del bloque v-pre\"",[84,23864,18869],{"class":90},[84,23866,23867,23869,23871],{"class":86,"line":122},[84,23868,274],{"class":90},[84,23870,95],{"class":94},[84,23872,102],{"class":90},[84,23874,23875],{"class":86,"line":129},[84,23876,126],{"emptyLinePlaceholder":125},[84,23878,23879,23881,23883],{"class":86,"line":154},[84,23880,91],{"class":90},[84,23882,291],{"class":94},[84,23884,102],{"class":90},[84,23886,23887,23889,23891,23894,23896],{"class":86,"line":159},[84,23888,299],{"class":90},[84,23890,15],{"class":94},[84,23892,23893],{"class":90},">{{ message }}\u003C\u002F",[84,23895,15],{"class":94},[84,23897,102],{"class":90},[84,23899,23900],{"class":86,"line":178},[84,23901,126],{"emptyLinePlaceholder":125},[84,23903,23905,23907,23909,23912,23915,23917],{"class":23904,"line":190},[86,10151],[84,23906,299],{"class":90},[84,23908,74],{"class":94},[84,23910,23911],{"class":98}," v-pre",[84,23913,23914],{"class":90},">{{ message }} + {{ 2 + 2 }}\u003C\u002F",[84,23916,74],{"class":94},[84,23918,102],{"class":90},[84,23920,23921,23923,23925],{"class":86,"line":196},[84,23922,274],{"class":90},[84,23924,291],{"class":94},[84,23926,102],{"class":90},[74,23928,23931],{"className":76,"code":23929,"filename":1782,"highlights":23930,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      message: \"No debe renderizarse dentro del bloque v-pre\",\n    };\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cp>{{ message }}\u003C\u002Fp>\n  \u003Cpre v-pre>{{ message }} + {{ 2 + 2 }}\u003C\u002Fpre>\n\u003C\u002Ftemplate>\n",[232],[22,23932,23933,23947,23955,23961,23967,23977,23981,23985,23989,23997,24001,24009,24021,24036],{"__ignoreMap":80},[84,23934,23935,23937,23939,23941,23943,23945],{"class":86,"line":87},[84,23936,91],{"class":90},[84,23938,95],{"class":94},[84,23940,1161],{"class":98},[84,23942,184],{"class":90},[84,23944,1166],{"class":118},[84,23946,102],{"class":90},[84,23948,23949,23951,23953],{"class":86,"line":105},[84,23950,418],{"class":108},[84,23952,1870],{"class":108},[84,23954,175],{"class":90},[84,23956,23957,23959],{"class":86,"line":122},[84,23958,1896],{"class":98},[84,23960,1307],{"class":90},[84,23962,23963,23965],{"class":86,"line":129},[84,23964,1903],{"class":108},[84,23966,175],{"class":90},[84,23968,23969,23972,23975],{"class":86,"line":154},[84,23970,23971],{"class":90},"      message: ",[84,23973,23974],{"class":118},"\"No debe renderizarse dentro del bloque v-pre\"",[84,23976,1887],{"class":90},[84,23978,23979],{"class":86,"line":159},[84,23980,19195],{"class":90},[84,23982,23983],{"class":86,"line":178},[84,23984,1941],{"class":90},[84,23986,23987],{"class":86,"line":190},[84,23988,18973],{"class":90},[84,23990,23991,23993,23995],{"class":86,"line":196},[84,23992,274],{"class":90},[84,23994,95],{"class":94},[84,23996,102],{"class":90},[84,23998,23999],{"class":86,"line":201},[84,24000,126],{"emptyLinePlaceholder":125},[84,24002,24003,24005,24007],{"class":86,"line":217},[84,24004,91],{"class":90},[84,24006,291],{"class":94},[84,24008,102],{"class":90},[84,24010,24011,24013,24015,24017,24019],{"class":86,"line":227},[84,24012,299],{"class":90},[84,24014,15],{"class":94},[84,24016,23893],{"class":90},[84,24018,15],{"class":94},[84,24020,102],{"class":90},[84,24022,24024,24026,24028,24030,24032,24034],{"class":24023,"line":232},[86,10151],[84,24025,299],{"class":90},[84,24027,74],{"class":94},[84,24029,23911],{"class":98},[84,24031,23914],{"class":90},[84,24033,74],{"class":94},[84,24035,102],{"class":90},[84,24037,24038,24040,24042],{"class":86,"line":237},[84,24039,274],{"class":90},[84,24041,291],{"class":94},[84,24043,102],{"class":90},[1074,24045,24047],{"id":24046},"_4-ejemplo-completo","4) Ejemplo completo",[15,24049,24050,24051,24053,24054,24056,24057,24059],{},"Componente de lista con cabecera estática (",[22,24052,22609],{},"), tarjetas memoizadas (",[22,24055,22612],{},") y snippet literal (",[22,24058,22615],{},"):",[74,24061,24063],{"className":76,"code":24062,"filename":873,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { computed, ref } from \"vue\";\n\ntype Task = { id: number; title: string; done: boolean; owner: string };\n\nconst selectedOwner = ref\u003C\"all\" | string>(\"all\");\nconst tasks = ref\u003CTask[]>([\n  { id: 1, title: \"Configurar CI\", done: true, owner: \"Ana\" },\n  { id: 2, title: \"Refactor store\", done: false, owner: \"Luis\" },\n  { id: 3, title: \"Actualizar docs\", done: false, owner: \"Ana\" },\n]);\n\nconst owners = computed(() => [\"all\", ...new Set(tasks.value.map((t) => t.owner))]);\nconst visibleTasks = computed(() =>\n  selectedOwner.value === \"all\"\n    ? tasks.value\n    : tasks.value.filter((t) => t.owner === selectedOwner.value)\n);\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cheader v-once>\n    \u003Ch2>Panel de tareas del sprint\u003C\u002Fh2>\n    \u003Cp>Contenido institucional estático\u003C\u002Fp>\n  \u003C\u002Fheader>\n\n  \u003Clabel>\n    Filtrar por owner\n    \u003Cselect v-model=\"selectedOwner\">\n      \u003Coption v-for=\"owner in owners\" :key=\"owner\" :value=\"owner\">{{ owner }}\u003C\u002Foption>\n    \u003C\u002Fselect>\n  \u003C\u002Flabel>\n\n  \u003Csection\n    v-for=\"task in visibleTasks\"\n    :key=\"task.id\"\n    v-memo=\"[task.id, task.title, task.owner, task.done, selectedOwner]\"\n    class=\"task-card\"\n  >\n    \u003Ch3>{{ task.title }}\u003C\u002Fh3>\n    \u003Cp>Owner: {{ task.owner }}\u003C\u002Fp>\n    \u003Cp>Estado: {{ task.done ? \"Completada\" : \"Pendiente\" }}\u003C\u002Fp>\n  \u003C\u002Fsection>\n\n  \u003Caside>\n    \u003Ch4>Snippet para docs\u003C\u002Fh4>\n    \u003Ccode v-pre>{{ title }} - {{ owner }}\u003C\u002Fcode>\n  \u003C\u002Faside>\n\u003C\u002Ftemplate>\n",[22,24064,24065,24081,24094,24098,24143,24147,24173,24189,24210,24231,24252,24256,24260,24304,24318,24328,24335,24360,24364,24372,24376,24384,24394,24407,24420,24428,24432,24440,24445,24462,24497,24505,24513,24517,24524,24532,24540,24549,24558,24562,24575,24588,24601,24609,24613,24621,24635,24650,24658],{"__ignoreMap":80},[84,24066,24067,24069,24071,24073,24075,24077,24079],{"class":86,"line":87},[84,24068,91],{"class":90},[84,24070,95],{"class":94},[84,24072,99],{"class":98},[84,24074,1161],{"class":98},[84,24076,184],{"class":90},[84,24078,1166],{"class":118},[84,24080,102],{"class":90},[84,24082,24083,24085,24088,24090,24092],{"class":86,"line":105},[84,24084,109],{"class":108},[84,24086,24087],{"class":90}," { computed, ref } ",[84,24089,115],{"class":108},[84,24091,18866],{"class":118},[84,24093,18869],{"class":90},[84,24095,24096],{"class":86,"line":122},[84,24097,126],{"emptyLinePlaceholder":125},[84,24099,24100,24102,24104,24106,24108,24110,24112,24114,24116,24119,24121,24123,24125,24128,24130,24132,24134,24137,24139,24141],{"class":86,"line":129},[84,24101,1188],{"class":108},[84,24103,6398],{"class":98},[84,24105,139],{"class":108},[84,24107,6763],{"class":90},[84,24109,22745],{"class":429},[84,24111,1203],{"class":108},[84,24113,3259],{"class":135},[84,24115,23240],{"class":90},[84,24117,24118],{"class":429},"title",[84,24120,1203],{"class":108},[84,24122,22085],{"class":135},[84,24124,23240],{"class":90},[84,24126,24127],{"class":429},"done",[84,24129,1203],{"class":108},[84,24131,23256],{"class":135},[84,24133,23240],{"class":90},[84,24135,24136],{"class":429},"owner",[84,24138,1203],{"class":108},[84,24140,22085],{"class":135},[84,24142,20412],{"class":90},[84,24144,24145],{"class":86,"line":154},[84,24146,126],{"emptyLinePlaceholder":125},[84,24148,24149,24151,24154,24156,24158,24160,24163,24165,24167,24169,24171],{"class":86,"line":159},[84,24150,132],{"class":108},[84,24152,24153],{"class":135}," selectedOwner",[84,24155,139],{"class":108},[84,24157,142],{"class":98},[84,24159,91],{"class":90},[84,24161,24162],{"class":118},"\"all\"",[84,24164,1261],{"class":108},[84,24166,22085],{"class":135},[84,24168,1267],{"class":90},[84,24170,24162],{"class":118},[84,24172,18994],{"class":90},[84,24174,24175,24177,24179,24181,24183,24185,24187],{"class":86,"line":178},[84,24176,132],{"class":108},[84,24178,2887],{"class":135},[84,24180,139],{"class":108},[84,24182,142],{"class":98},[84,24184,91],{"class":90},[84,24186,6452],{"class":98},[84,24188,23314],{"class":90},[84,24190,24191,24193,24195,24197,24200,24202,24204,24206,24208],{"class":86,"line":190},[84,24192,2899],{"class":90},[84,24194,2862],{"class":135},[84,24196,2904],{"class":90},[84,24198,24199],{"class":118},"\"Configurar CI\"",[84,24201,2910],{"class":90},[84,24203,2938],{"class":135},[84,24205,2915],{"class":90},[84,24207,18308],{"class":118},[84,24209,2921],{"class":90},[84,24211,24212,24214,24216,24218,24221,24223,24225,24227,24229],{"class":86,"line":196},[84,24213,2899],{"class":90},[84,24215,2928],{"class":135},[84,24217,2904],{"class":90},[84,24219,24220],{"class":118},"\"Refactor store\"",[84,24222,2910],{"class":90},[84,24224,148],{"class":135},[84,24226,2915],{"class":90},[84,24228,23349],{"class":118},[84,24230,2921],{"class":90},[84,24232,24233,24235,24237,24239,24242,24244,24246,24248,24250],{"class":86,"line":201},[84,24234,2899],{"class":90},[84,24236,2952],{"class":135},[84,24238,2904],{"class":90},[84,24240,24241],{"class":118},"\"Actualizar docs\"",[84,24243,2910],{"class":90},[84,24245,148],{"class":135},[84,24247,2915],{"class":90},[84,24249,18308],{"class":118},[84,24251,2921],{"class":90},[84,24253,24254],{"class":86,"line":217},[84,24255,23387],{"class":90},[84,24257,24258],{"class":86,"line":227},[84,24259,126],{"emptyLinePlaceholder":125},[84,24261,24262,24264,24267,24269,24271,24273,24275,24278,24280,24282,24285,24287,24290,24292,24294,24297,24299,24301],{"class":86,"line":232},[84,24263,132],{"class":108},[84,24265,24266],{"class":135}," owners",[84,24268,139],{"class":108},[84,24270,2989],{"class":98},[84,24272,2992],{"class":90},[84,24274,172],{"class":108},[84,24276,24277],{"class":90}," [",[84,24279,24162],{"class":118},[84,24281,754],{"class":90},[84,24283,24284],{"class":108},"...new",[84,24286,17144],{"class":98},[84,24288,24289],{"class":90},"(tasks.value.",[84,24291,4622],{"class":98},[84,24293,3120],{"class":90},[84,24295,24296],{"class":429},"t",[84,24298,3126],{"class":90},[84,24300,172],{"class":108},[84,24302,24303],{"class":90}," t.owner))]);\n",[84,24305,24306,24308,24310,24312,24314,24316],{"class":86,"line":237},[84,24307,132],{"class":108},[84,24309,2984],{"class":135},[84,24311,139],{"class":108},[84,24313,2989],{"class":98},[84,24315,2992],{"class":90},[84,24317,4494],{"class":108},[84,24319,24320,24323,24325],{"class":86,"line":253},[84,24321,24322],{"class":90},"  selectedOwner.value ",[84,24324,3288],{"class":108},[84,24326,24327],{"class":118}," \"all\"\n",[84,24329,24330,24333],{"class":86,"line":266},[84,24331,24332],{"class":108},"    ?",[84,24334,6687],{"class":90},[84,24336,24337,24340,24342,24344,24346,24348,24350,24352,24355,24357],{"class":86,"line":271},[84,24338,24339],{"class":108},"    :",[84,24341,3003],{"class":90},[84,24343,3006],{"class":98},[84,24345,3120],{"class":90},[84,24347,24296],{"class":429},[84,24349,3126],{"class":90},[84,24351,172],{"class":108},[84,24353,24354],{"class":90}," t.owner ",[84,24356,3288],{"class":108},[84,24358,24359],{"class":90}," selectedOwner.value)\n",[84,24361,24362],{"class":86,"line":281},[84,24363,18994],{"class":90},[84,24365,24366,24368,24370],{"class":86,"line":286},[84,24367,274],{"class":90},[84,24369,95],{"class":94},[84,24371,102],{"class":90},[84,24373,24374],{"class":86,"line":296},[84,24375,126],{"emptyLinePlaceholder":125},[84,24377,24378,24380,24382],{"class":86,"line":315},[84,24379,91],{"class":90},[84,24381,291],{"class":94},[84,24383,102],{"class":90},[84,24385,24386,24388,24390,24392],{"class":86,"line":321},[84,24387,299],{"class":90},[84,24389,4915],{"class":94},[84,24391,23017],{"class":98},[84,24393,102],{"class":90},[84,24395,24396,24398,24400,24403,24405],{"class":86,"line":331},[84,24397,1642],{"class":90},[84,24399,34],{"class":94},[84,24401,24402],{"class":90},">Panel de tareas del sprint\u003C\u002F",[84,24404,34],{"class":94},[84,24406,102],{"class":90},[84,24408,24409,24411,24413,24416,24418],{"class":86,"line":336},[84,24410,1642],{"class":90},[84,24412,15],{"class":94},[84,24414,24415],{"class":90},">Contenido institucional estático\u003C\u002F",[84,24417,15],{"class":94},[84,24419,102],{"class":90},[84,24421,24422,24424,24426],{"class":86,"line":354},[84,24423,324],{"class":90},[84,24425,4915],{"class":94},[84,24427,102],{"class":90},[84,24429,24430],{"class":86,"line":360},[84,24431,126],{"emptyLinePlaceholder":125},[84,24433,24434,24436,24438],{"class":86,"line":369},[84,24435,299],{"class":90},[84,24437,4653],{"class":94},[84,24439,102],{"class":90},[84,24441,24442],{"class":86,"line":1453},[84,24443,24444],{"class":90},"    Filtrar por owner\n",[84,24446,24447,24449,24452,24455,24457,24460],{"class":86,"line":1462},[84,24448,1642],{"class":90},[84,24450,24451],{"class":94},"select",[84,24453,24454],{"class":98}," v-model",[84,24456,184],{"class":90},[84,24458,24459],{"class":118},"\"selectedOwner\"",[84,24461,102],{"class":90},[84,24463,24464,24466,24469,24471,24473,24476,24478,24480,24483,24486,24488,24490,24493,24495],{"class":86,"line":1484},[84,24465,1691],{"class":90},[84,24467,24468],{"class":94},"option",[84,24470,13525],{"class":98},[84,24472,184],{"class":90},[84,24474,24475],{"class":118},"\"owner in owners\"",[84,24477,5092],{"class":98},[84,24479,184],{"class":90},[84,24481,24482],{"class":118},"\"owner\"",[84,24484,24485],{"class":98}," :value",[84,24487,184],{"class":90},[84,24489,24482],{"class":118},[84,24491,24492],{"class":90},">{{ owner }}\u003C\u002F",[84,24494,24468],{"class":94},[84,24496,102],{"class":90},[84,24498,24499,24501,24503],{"class":86,"line":1489},[84,24500,1734],{"class":90},[84,24502,24451],{"class":94},[84,24504,102],{"class":90},[84,24506,24507,24509,24511],{"class":86,"line":1495},[84,24508,324],{"class":90},[84,24510,4653],{"class":94},[84,24512,102],{"class":90},[84,24514,24515],{"class":86,"line":1500},[84,24516,126],{"emptyLinePlaceholder":125},[84,24518,24519,24521],{"class":86,"line":1516},[84,24520,299],{"class":90},[84,24522,24523],{"class":94},"section\n",[84,24525,24526,24528,24530],{"class":86,"line":1533},[84,24527,23419],{"class":98},[84,24529,184],{"class":90},[84,24531,7283],{"class":118},[84,24533,24534,24536,24538],{"class":86,"line":1538},[84,24535,23429],{"class":98},[84,24537,184],{"class":90},[84,24539,7293],{"class":118},[84,24541,24542,24544,24546],{"class":86,"line":1545},[84,24543,23440],{"class":98},[84,24545,184],{"class":90},[84,24547,24548],{"class":118},"\"[task.id, task.title, task.owner, task.done, selectedOwner]\"\n",[84,24550,24551,24553,24555],{"class":86,"line":1554},[84,24552,23450],{"class":98},[84,24554,184],{"class":90},[84,24556,24557],{"class":118},"\"task-card\"\n",[84,24559,24560],{"class":86,"line":1563},[84,24561,23460],{"class":90},[84,24563,24564,24566,24568,24571,24573],{"class":86,"line":1570},[84,24565,1642],{"class":90},[84,24567,1074],{"class":94},[84,24569,24570],{"class":90},">{{ task.title }}\u003C\u002F",[84,24572,1074],{"class":94},[84,24574,102],{"class":90},[84,24576,24577,24579,24581,24584,24586],{"class":86,"line":1588},[84,24578,1642],{"class":90},[84,24580,15],{"class":94},[84,24582,24583],{"class":90},">Owner: {{ task.owner }}\u003C\u002F",[84,24585,15],{"class":94},[84,24587,102],{"class":90},[84,24589,24590,24592,24594,24597,24599],{"class":86,"line":1593},[84,24591,1642],{"class":90},[84,24593,15],{"class":94},[84,24595,24596],{"class":90},">Estado: {{ task.done ? \"Completada\" : \"Pendiente\" }}\u003C\u002F",[84,24598,15],{"class":94},[84,24600,102],{"class":90},[84,24602,24603,24605,24607],{"class":86,"line":1598},[84,24604,324],{"class":90},[84,24606,4898],{"class":94},[84,24608,102],{"class":90},[84,24610,24611],{"class":86,"line":1607},[84,24612,126],{"emptyLinePlaceholder":125},[84,24614,24615,24617,24619],{"class":86,"line":1612},[84,24616,299],{"class":90},[84,24618,22190],{"class":94},[84,24620,102],{"class":90},[84,24622,24623,24625,24628,24631,24633],{"class":86,"line":1621},[84,24624,1642],{"class":90},[84,24626,24627],{"class":94},"h4",[84,24629,24630],{"class":90},">Snippet para docs\u003C\u002F",[84,24632,24627],{"class":94},[84,24634,102],{"class":90},[84,24636,24637,24639,24641,24643,24646,24648],{"class":86,"line":1639},[84,24638,1642],{"class":90},[84,24640,22],{"class":94},[84,24642,23911],{"class":98},[84,24644,24645],{"class":90},">{{ title }} - {{ owner }}\u003C\u002F",[84,24647,22],{"class":94},[84,24649,102],{"class":90},[84,24651,24652,24654,24656],{"class":86,"line":1661},[84,24653,324],{"class":90},[84,24655,22190],{"class":94},[84,24657,102],{"class":90},[84,24659,24660,24662,24664],{"class":86,"line":1666},[84,24661,274],{"class":90},[84,24663,291],{"class":94},[84,24665,102],{"class":90},[74,24667,24669],{"className":76,"code":24668,"filename":1782,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      selectedOwner: \"all\",\n      tasks: [\n        { id: 1, title: \"Configurar CI\", done: true, owner: \"Ana\" },\n        { id: 2, title: \"Refactor store\", done: false, owner: \"Luis\" },\n        { id: 3, title: \"Actualizar docs\", done: false, owner: \"Ana\" },\n      ],\n    };\n  },\n  computed: {\n    owners() {\n      return [\"all\", ...new Set(this.tasks.map((t) => t.owner))];\n    },\n    visibleTasks() {\n      return this.selectedOwner === \"all\"\n        ? this.tasks\n        : this.tasks.filter((t) => t.owner === this.selectedOwner);\n    },\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cheader v-once>\n    \u003Ch2>Panel de tareas del sprint\u003C\u002Fh2>\n    \u003Cp>Contenido institucional estático\u003C\u002Fp>\n  \u003C\u002Fheader>\n\n  \u003Clabel>\n    Filtrar por owner\n    \u003Cselect v-model=\"selectedOwner\">\n      \u003Coption v-for=\"owner in owners\" :key=\"owner\" :value=\"owner\">{{ owner }}\u003C\u002Foption>\n    \u003C\u002Fselect>\n  \u003C\u002Flabel>\n\n  \u003Csection\n    v-for=\"task in visibleTasks\"\n    :key=\"task.id\"\n    v-memo=\"[task.id, task.title, task.owner, task.done, selectedOwner]\"\n    class=\"task-card\"\n  >\n    \u003Ch3>{{ task.title }}\u003C\u002Fh3>\n    \u003Cp>Owner: {{ task.owner }}\u003C\u002Fp>\n    \u003Cp>Estado: {{ task.done ? \"Completada\" : \"Pendiente\" }}\u003C\u002Fp>\n  \u003C\u002Fsection>\n\n  \u003Caside>\n    \u003Ch4>Snippet para docs\u003C\u002Fh4>\n    \u003Ccode v-pre>{{ title }} - {{ owner }}\u003C\u002Fcode>\n  \u003C\u002Faside>\n\u003C\u002Ftemplate>\n",[22,24670,24671,24685,24693,24699,24705,24714,24718,24738,24758,24778,24782,24786,24790,24794,24801,24834,24838,24844,24857,24866,24894,24898,24902,24906,24914,24918,24926,24936,24948,24960,24968,24972,24980,24984,24998,25028,25036,25044,25048,25054,25062,25070,25078,25086,25090,25102,25114,25126,25134,25138,25146,25158,25172,25180],{"__ignoreMap":80},[84,24672,24673,24675,24677,24679,24681,24683],{"class":86,"line":87},[84,24674,91],{"class":90},[84,24676,95],{"class":94},[84,24678,1161],{"class":98},[84,24680,184],{"class":90},[84,24682,1166],{"class":118},[84,24684,102],{"class":90},[84,24686,24687,24689,24691],{"class":86,"line":105},[84,24688,418],{"class":108},[84,24690,1870],{"class":108},[84,24692,175],{"class":90},[84,24694,24695,24697],{"class":86,"line":122},[84,24696,1896],{"class":98},[84,24698,1307],{"class":90},[84,24700,24701,24703],{"class":86,"line":129},[84,24702,1903],{"class":108},[84,24704,175],{"class":90},[84,24706,24707,24710,24712],{"class":86,"line":154},[84,24708,24709],{"class":90},"      selectedOwner: ",[84,24711,24162],{"class":118},[84,24713,1887],{"class":90},[84,24715,24716],{"class":86,"line":159},[84,24717,3444],{"class":90},[84,24719,24720,24722,24724,24726,24728,24730,24732,24734,24736],{"class":86,"line":178},[84,24721,3449],{"class":90},[84,24723,2862],{"class":135},[84,24725,2904],{"class":90},[84,24727,24199],{"class":118},[84,24729,2910],{"class":90},[84,24731,2938],{"class":135},[84,24733,2915],{"class":90},[84,24735,18308],{"class":118},[84,24737,2921],{"class":90},[84,24739,24740,24742,24744,24746,24748,24750,24752,24754,24756],{"class":86,"line":190},[84,24741,3449],{"class":90},[84,24743,2928],{"class":135},[84,24745,2904],{"class":90},[84,24747,24220],{"class":118},[84,24749,2910],{"class":90},[84,24751,148],{"class":135},[84,24753,2915],{"class":90},[84,24755,23349],{"class":118},[84,24757,2921],{"class":90},[84,24759,24760,24762,24764,24766,24768,24770,24772,24774,24776],{"class":86,"line":196},[84,24761,3449],{"class":90},[84,24763,2952],{"class":135},[84,24765,2904],{"class":90},[84,24767,24241],{"class":118},[84,24769,2910],{"class":90},[84,24771,148],{"class":135},[84,24773,2915],{"class":90},[84,24775,18308],{"class":118},[84,24777,2921],{"class":90},[84,24779,24780],{"class":86,"line":201},[84,24781,10927],{"class":90},[84,24783,24784],{"class":86,"line":217},[84,24785,19195],{"class":90},[84,24787,24788],{"class":86,"line":227},[84,24789,1941],{"class":90},[84,24791,24792],{"class":86,"line":232},[84,24793,3527],{"class":90},[84,24795,24796,24799],{"class":86,"line":237},[84,24797,24798],{"class":98},"    owners",[84,24800,1307],{"class":90},[84,24802,24803,24805,24807,24809,24811,24813,24815,24817,24819,24821,24823,24825,24827,24829,24831],{"class":86,"line":253},[84,24804,3539],{"class":108},[84,24806,24277],{"class":90},[84,24808,24162],{"class":118},[84,24810,754],{"class":90},[84,24812,24284],{"class":108},[84,24814,17144],{"class":98},[84,24816,145],{"class":90},[84,24818,2151],{"class":135},[84,24820,3544],{"class":90},[84,24822,4622],{"class":98},[84,24824,3120],{"class":90},[84,24826,24296],{"class":429},[84,24828,3126],{"class":90},[84,24830,172],{"class":108},[84,24832,24833],{"class":90}," t.owner))];\n",[84,24835,24836],{"class":86,"line":266},[84,24837,7783],{"class":90},[84,24839,24840,24842],{"class":86,"line":271},[84,24841,3532],{"class":98},[84,24843,1307],{"class":90},[84,24845,24846,24848,24850,24853,24855],{"class":86,"line":281},[84,24847,3539],{"class":108},[84,24849,2078],{"class":135},[84,24851,24852],{"class":90},".selectedOwner ",[84,24854,3288],{"class":108},[84,24856,24327],{"class":118},[84,24858,24859,24862,24864],{"class":86,"line":286},[84,24860,24861],{"class":108},"        ?",[84,24863,2078],{"class":135},[84,24865,7534],{"class":90},[84,24867,24868,24871,24873,24875,24877,24879,24881,24883,24885,24887,24889,24891],{"class":86,"line":296},[84,24869,24870],{"class":108},"        :",[84,24872,2078],{"class":135},[84,24874,3544],{"class":90},[84,24876,3006],{"class":98},[84,24878,3120],{"class":90},[84,24880,24296],{"class":429},[84,24882,3126],{"class":90},[84,24884,172],{"class":108},[84,24886,24354],{"class":90},[84,24888,3288],{"class":108},[84,24890,2078],{"class":135},[84,24892,24893],{"class":90},".selectedOwner);\n",[84,24895,24896],{"class":86,"line":315},[84,24897,7783],{"class":90},[84,24899,24900],{"class":86,"line":321},[84,24901,1941],{"class":90},[84,24903,24904],{"class":86,"line":331},[84,24905,18973],{"class":90},[84,24907,24908,24910,24912],{"class":86,"line":336},[84,24909,274],{"class":90},[84,24911,95],{"class":94},[84,24913,102],{"class":90},[84,24915,24916],{"class":86,"line":354},[84,24917,126],{"emptyLinePlaceholder":125},[84,24919,24920,24922,24924],{"class":86,"line":360},[84,24921,91],{"class":90},[84,24923,291],{"class":94},[84,24925,102],{"class":90},[84,24927,24928,24930,24932,24934],{"class":86,"line":369},[84,24929,299],{"class":90},[84,24931,4915],{"class":94},[84,24933,23017],{"class":98},[84,24935,102],{"class":90},[84,24937,24938,24940,24942,24944,24946],{"class":86,"line":1453},[84,24939,1642],{"class":90},[84,24941,34],{"class":94},[84,24943,24402],{"class":90},[84,24945,34],{"class":94},[84,24947,102],{"class":90},[84,24949,24950,24952,24954,24956,24958],{"class":86,"line":1462},[84,24951,1642],{"class":90},[84,24953,15],{"class":94},[84,24955,24415],{"class":90},[84,24957,15],{"class":94},[84,24959,102],{"class":90},[84,24961,24962,24964,24966],{"class":86,"line":1484},[84,24963,324],{"class":90},[84,24965,4915],{"class":94},[84,24967,102],{"class":90},[84,24969,24970],{"class":86,"line":1489},[84,24971,126],{"emptyLinePlaceholder":125},[84,24973,24974,24976,24978],{"class":86,"line":1495},[84,24975,299],{"class":90},[84,24977,4653],{"class":94},[84,24979,102],{"class":90},[84,24981,24982],{"class":86,"line":1500},[84,24983,24444],{"class":90},[84,24985,24986,24988,24990,24992,24994,24996],{"class":86,"line":1516},[84,24987,1642],{"class":90},[84,24989,24451],{"class":94},[84,24991,24454],{"class":98},[84,24993,184],{"class":90},[84,24995,24459],{"class":118},[84,24997,102],{"class":90},[84,24999,25000,25002,25004,25006,25008,25010,25012,25014,25016,25018,25020,25022,25024,25026],{"class":86,"line":1533},[84,25001,1691],{"class":90},[84,25003,24468],{"class":94},[84,25005,13525],{"class":98},[84,25007,184],{"class":90},[84,25009,24475],{"class":118},[84,25011,5092],{"class":98},[84,25013,184],{"class":90},[84,25015,24482],{"class":118},[84,25017,24485],{"class":98},[84,25019,184],{"class":90},[84,25021,24482],{"class":118},[84,25023,24492],{"class":90},[84,25025,24468],{"class":94},[84,25027,102],{"class":90},[84,25029,25030,25032,25034],{"class":86,"line":1538},[84,25031,1734],{"class":90},[84,25033,24451],{"class":94},[84,25035,102],{"class":90},[84,25037,25038,25040,25042],{"class":86,"line":1545},[84,25039,324],{"class":90},[84,25041,4653],{"class":94},[84,25043,102],{"class":90},[84,25045,25046],{"class":86,"line":1554},[84,25047,126],{"emptyLinePlaceholder":125},[84,25049,25050,25052],{"class":86,"line":1563},[84,25051,299],{"class":90},[84,25053,24523],{"class":94},[84,25055,25056,25058,25060],{"class":86,"line":1570},[84,25057,23419],{"class":98},[84,25059,184],{"class":90},[84,25061,7283],{"class":118},[84,25063,25064,25066,25068],{"class":86,"line":1588},[84,25065,23429],{"class":98},[84,25067,184],{"class":90},[84,25069,7293],{"class":118},[84,25071,25072,25074,25076],{"class":86,"line":1593},[84,25073,23440],{"class":98},[84,25075,184],{"class":90},[84,25077,24548],{"class":118},[84,25079,25080,25082,25084],{"class":86,"line":1598},[84,25081,23450],{"class":98},[84,25083,184],{"class":90},[84,25085,24557],{"class":118},[84,25087,25088],{"class":86,"line":1607},[84,25089,23460],{"class":90},[84,25091,25092,25094,25096,25098,25100],{"class":86,"line":1612},[84,25093,1642],{"class":90},[84,25095,1074],{"class":94},[84,25097,24570],{"class":90},[84,25099,1074],{"class":94},[84,25101,102],{"class":90},[84,25103,25104,25106,25108,25110,25112],{"class":86,"line":1621},[84,25105,1642],{"class":90},[84,25107,15],{"class":94},[84,25109,24583],{"class":90},[84,25111,15],{"class":94},[84,25113,102],{"class":90},[84,25115,25116,25118,25120,25122,25124],{"class":86,"line":1639},[84,25117,1642],{"class":90},[84,25119,15],{"class":94},[84,25121,24596],{"class":90},[84,25123,15],{"class":94},[84,25125,102],{"class":90},[84,25127,25128,25130,25132],{"class":86,"line":1661},[84,25129,324],{"class":90},[84,25131,4898],{"class":94},[84,25133,102],{"class":90},[84,25135,25136],{"class":86,"line":1666},[84,25137,126],{"emptyLinePlaceholder":125},[84,25139,25140,25142,25144],{"class":86,"line":1688},[84,25141,299],{"class":90},[84,25143,22190],{"class":94},[84,25145,102],{"class":90},[84,25147,25148,25150,25152,25154,25156],{"class":86,"line":1703},[84,25149,1642],{"class":90},[84,25151,24627],{"class":94},[84,25153,24630],{"class":90},[84,25155,24627],{"class":94},[84,25157,102],{"class":90},[84,25159,25160,25162,25164,25166,25168,25170],{"class":86,"line":1717},[84,25161,1642],{"class":90},[84,25163,22],{"class":94},[84,25165,23911],{"class":98},[84,25167,24645],{"class":90},[84,25169,22],{"class":94},[84,25171,102],{"class":90},[84,25173,25174,25176,25178],{"class":86,"line":1731},[84,25175,324],{"class":90},[84,25177,22190],{"class":94},[84,25179,102],{"class":90},[84,25181,25182,25184,25186],{"class":86,"line":1741},[84,25183,274],{"class":90},[84,25185,291],{"class":94},[84,25187,102],{"class":90},[34,25189,2406],{"id":2405},[15,25191,25192,754,25194,2488,25196,25198],{},[22,25193,22609],{},[22,25195,22612],{},[22,25197,22615],{}," son herramientas de precisión:",[737,25200,25201,25206,25211],{},[740,25202,25203,25205],{},[22,25204,22609],{}," para congelar contenido inmutable.",[740,25207,25208,25210],{},[22,25209,22612],{}," para evitar renders cuando dependencias clave no cambian.",[740,25212,25213,25215],{},[22,25214,22615],{}," para mostrar template literal sin compilación.",[15,25217,25218],{},"La clave no es usarlas en todo, sino en puntos donde el costo de render sea real y el comportamiento esperado sea claro.",[835,25220,25221],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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 .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":80,"searchDepth":105,"depth":105,"links":25223},[25224,25225,25230,25231,25232,25233,25242,25251],{"id":21333,"depth":105,"text":21334},{"id":946,"depth":105,"text":947,"children":25226},[25227,25228,25229],{"id":22609,"depth":122,"text":22609},{"id":22612,"depth":122,"text":22612},{"id":22615,"depth":122,"text":22615},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":6157,"depth":105,"text":6158},{"id":783,"depth":105,"text":784,"children":25234},[25235,25237,25239,25241],{"id":22822,"depth":122,"text":25236},"1) Aplicar v-once sobre datos que sí cambian",{"id":22844,"depth":122,"text":25238},"2) Definir mal dependencias en v-memo",{"id":22858,"depth":122,"text":25240},"3) Esperar que v-pre procese directivas o interpolaciones",{"id":22877,"depth":122,"text":22878},{"id":2735,"depth":105,"text":2736,"children":25243},[25244,25246,25248,25250],{"id":22891,"depth":122,"text":25245},"1) Bloque estático con v-once",{"id":23179,"depth":122,"text":25247},"2) Segmento pesado con v-memo",{"id":23825,"depth":122,"text":25249},"3) Bloque literal con v-pre",{"id":24046,"depth":122,"text":24047},{"id":2405,"depth":105,"text":2406},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1771897190\u002Fdirectives-vue-v-once-v-memo-v-pre-guide_ljsdlv.png","Imagen temporal para portada del artículo sobre v-once, v-memo y v-pre en Vue","2026-02-24","Aprende cuándo usar v-once, v-memo y v-pre en Vue 3 para optimizar renderizado, evitar trabajo innecesario y mantener componentes claros.",{"updatedAt":25257,"coverCaption":18477,"author":868,"keywords":25258},"2026-02-23T21:00:00-05:00",[870,22609,22612,22615,25259],"optimización render","\u002Fblog\u002Fdirectives-vue-v-once-v-memo-v-pre-guide.es",[25262],{"headline":25263,"author":25264,"datePublished":25257,"@type":880},"Directivas en Vue: v-once, v-memo y v-pre para renderizado eficiente",{"name":868,"@type":879},{"title":22601,"description":25255},"blog\u002Fdirectives-vue-v-once-v-memo-v-pre-guide.es",[25268,25269,25270,25271,25272],{"tag":21297,"color":21298},{"tag":18492,"color":18493},{"tag":3942,"color":3943},{"tag":3945,"color":3946},{"tag":2462,"color":2463},"ltUtJZ-ViSqRogEpVIS3x2XdEz345biUTyEg7SJpXLo",{"id":25275,"title":25276,"body":25277,"cover":26529,"coverAlt":26530,"date":26531,"description":26532,"draft":852,"extension":853,"lab":882,"locale":882,"meta":26533,"navigation":125,"path":26538,"schemaOrg":26539,"seo":26542,"series":21291,"seriesDescription":21292,"seriesOrder":190,"seriesTitle":21293,"slug":882,"stem":26543,"tags":26544,"__hash__":26549},"blog\u002Fblog\u002Fdirectives-vue-v-text-v-html-guide.es.md","Directivas en Vue: v-text y v-html",{"type":8,"value":25278,"toc":26492},[25279,25288,25296,25313,25318,25320,25328,25342,25347,25351,25355,25362,25392,25395,25412,25421,25425,25432,25461,25464,25488,25492,25497,25516,25521,25542,25546,25551,25556,25561,25579,25581,25587,25590,25618,25635,25642,25645,25662,25673,25680,25689,25693,25696,25698,25704,25739,25746,25781,25785,25848,25850,26158,26445,26447,26475,26489],[11,25280,21314,25282,13234,25285],{"id":25281},"directivas-en-vue-v-text-vs-v-html",[22,25283,25284],{},"v-text",[22,25286,25287],{},"v-html",[15,25289,25290,25291,2488,25293,25295],{},"En Vue, ",[22,25292,25284],{},[22,25294,25287],{}," permiten renderizar contenido dinámico en el DOM, pero no hacen lo mismo ni implican el mismo nivel de riesgo.",[737,25297,25298,25306],{},[740,25299,25300,25302,25303,764],{},[22,25301,25284],{}," inserta ",[958,25304,25305],{},"texto plano",[740,25307,25308,25302,25310,764],{},[22,25309,25287],{},[958,25311,25312],{},"HTML interpretado por el navegador",[823,25314,25315],{},[15,25316,25317],{},"Entender esta diferencia es clave para evitar bugs de UI y, sobre todo, vulnerabilidades de seguridad como XSS.",[34,25319,21334],{"id":21333},[15,25321,25322,25323,2488,25325,25327],{},"En proyectos reales es habitual recibir contenido desde APIs, CMS o incluso formularios de usuario. Elegir incorrectamente entre ",[22,25324,25284],{},[22,25326,25287],{}," puede provocar:",[737,25329,25330,25333,25336,25339],{},[740,25331,25332],{},"Diseños rotos por etiquetas inesperadas.",[740,25334,25335],{},"Exposición a ataques XSS.",[740,25337,25338],{},"Lógica de sanitización duplicada en múltiples componentes.",[740,25340,25341],{},"Inconsistencias visuales difíciles de depurar.",[823,25343,25344],{},[15,25345,25346],{},"Tomar la decisión correcta desde el inicio mejora la seguridad, el mantenimiento y la coherencia del código.",[34,25348,25350],{"id":25349},"concepto-base","Concepto base",[1074,25352,25353],{"id":25284},[22,25354,25284],{},[15,25356,25357,25358,25361],{},"Renderiza el valor como contenido textual del nodo (",[22,25359,25360],{},"textContent",").\nSi el valor incluye etiquetas HTML, estas se muestran como texto literal, no se interpretan.",[74,25363,25365],{"className":76,"code":25364,"filename":10092,"language":79,"meta":80,"style":80},"\u003Cp v-text=\"message\">\u003C\u002Fp>\n",[22,25366,25367],{"__ignoreMap":80},[84,25368,25369,25371,25373,25376,25378,25380,25383,25385,25388,25390],{"class":86,"line":87},[84,25370,91],{"class":90},[84,25372,15],{"class":94},[84,25374,25375],{"class":98}," v-text",[84,25377,184],{"class":90},[84,25379,1678],{"class":118},[84,25381,25382],{"class":90},"message",[84,25384,1678],{"class":118},[84,25386,25387],{"class":90},">\u003C\u002F",[84,25389,15],{"class":94},[84,25391,102],{"class":90},[15,25393,25394],{},"Es equivalente a la interpolación estándar:",[74,25396,25398],{"className":76,"code":25397,"filename":10092,"language":79,"meta":80,"style":80},"\u003Cp>{{ message }}\u003C\u002Fp>\n",[22,25399,25400],{"__ignoreMap":80},[84,25401,25402,25404,25406,25408,25410],{"class":86,"line":87},[84,25403,91],{"class":90},[84,25405,15],{"class":94},[84,25407,23893],{"class":90},[84,25409,15],{"class":94},[84,25411,102],{"class":90},[823,25413,25414],{},[15,25415,25416,25417,25420],{},"En la práctica, la interpolación (",[22,25418,25419],{},"{{ }}",") es la forma más común y legible para texto dinámico.",[1074,25422,25423],{"id":25287},[22,25424,25287],{},[15,25426,25427,25428,25431],{},"Renderiza el valor como HTML dentro del nodo (",[22,25429,25430],{},"innerHTML",").\nSi el string contiene etiquetas, el navegador las procesa como parte del DOM.",[74,25433,25435],{"className":76,"code":25434,"filename":10092,"language":79,"meta":80,"style":80},"\u003Cdiv v-html=\"htmlSnippet\">\u003C\u002Fdiv>\n",[22,25436,25437],{"__ignoreMap":80},[84,25438,25439,25441,25443,25446,25448,25450,25453,25455,25457,25459],{"class":86,"line":87},[84,25440,91],{"class":90},[84,25442,4978],{"class":94},[84,25444,25445],{"class":98}," v-html",[84,25447,184],{"class":90},[84,25449,1678],{"class":118},[84,25451,25452],{"class":90},"htmlSnippet",[84,25454,1678],{"class":118},[84,25456,25387],{"class":90},[84,25458,4978],{"class":94},[84,25460,102],{"class":90},[15,25462,25463],{},"Consideraciones importantes:",[737,25465,25466,25474,25482,25485],{},[740,25467,25468,11716,25470,25473],{},[22,25469,25287],{},[958,25471,25472],{},"no compila plantillas Vue"," dentro del contenido inyectado.",[740,25475,25476,25477,754,25479,2599],{},"No enlaza directivas (",[22,25478,8299],{},[22,25480,25481],{},"@click",[740,25483,25484],{},"No debe utilizarse con contenido no confiable.",[740,25486,25487],{},"El contenido inyectado queda fuera del scope del compilador de plantillas.",[34,25489,25491],{"id":25490},"cuándo-usar-cada-uno","Cuándo usar cada uno",[1074,25493,21486,25495,8430],{"id":25494},"usa-v-text-cuando",[22,25496,25284],{},[737,25498,25499,25502,25510,25513],{},[740,25500,25501],{},"Renderizas texto dinámico simple y seguro.",[740,25503,25504,25505,50,25507,25509],{},"El contenido puede incluir ",[22,25506,91],{},[22,25508,10674],{}," y necesitas que se muestren literalmente.",[740,25511,25512],{},"No necesitas formato enriquecido.",[740,25514,25515],{},"Quieres la opción más segura por defecto.",[1074,25517,21486,25519,8430],{"id":25518},"usa-v-html-cuando",[22,25520,25287],{},[737,25522,25523,25526,25529,25539],{},[740,25524,25525],{},"Renderizas contenido HTML previamente sanitizado.",[740,25527,25528],{},"El contenido proviene de un CMS controlado o backend confiable.",[740,25530,25531,25532,754,25535,25538],{},"Necesitas respetar formato enriquecido (",[22,25533,25534],{},"\u003Cstrong>",[22,25536,25537],{},"\u003Cem>",", listas, enlaces, etc.).",[740,25540,25541],{},"Existe una estrategia clara y centralizada de sanitización.",[34,25543,25545],{"id":25544},"cuándo-evitarlos","Cuándo evitarlos",[1074,25547,8425,25549,8430],{"id":25548},"evita-v-text-cuando",[22,25550,25284],{},[737,25552,25553],{},[740,25554,25555],{},"Necesitas HTML real con formato enriquecido.",[1074,25557,8425,25559,8430],{"id":25558},"evita-v-html-cuando",[22,25560,25287],{},[737,25562,25563,25566,25569,25572],{},[740,25564,25565],{},"El contenido proviene directamente de input de usuario sin sanitizar.",[740,25567,25568],{},"No tienes una estrategia centralizada de sanitización.",[740,25570,25571],{},"El mismo resultado puede lograrse con componentes explícitos (más seguro y mantenible).",[740,25573,25574,25575,25578],{},"Puedes modelar la estructura con datos y renderizarla con ",[22,25576,25577],{},"v-for"," y componentes en lugar de inyectar HTML crudo.",[34,25580,784],{"id":783},[1074,25582,21530,25584,25586],{"id":25583},"_1-usar-v-html-con-contenido-no-confiable",[22,25585,25287],{}," con contenido no confiable",[15,25588,25589],{},"Incorrecto:",[74,25591,25593],{"className":76,"code":25592,"filename":10092,"language":79,"meta":80,"style":80},"\u003Cdiv v-html=\"userBio\">\u003C\u002Fdiv>\n",[22,25594,25595],{"__ignoreMap":80},[84,25596,25597,25599,25601,25603,25605,25607,25610,25612,25614,25616],{"class":86,"line":87},[84,25598,91],{"class":90},[84,25600,4978],{"class":94},[84,25602,25445],{"class":98},[84,25604,184],{"class":90},[84,25606,1678],{"class":118},[84,25608,25609],{"class":90},"userBio",[84,25611,1678],{"class":118},[84,25613,25387],{"class":90},[84,25615,4978],{"class":94},[84,25617,102],{"class":90},[15,25619,25620,25621,25623,25624,25627,25628,754,25631,25634],{},"Si ",[22,25622,25609],{}," no está sanitizado, puede inyectar ",[22,25625,25626],{},"\u003Cscript>",", atributos peligrosos (",[22,25629,25630],{},"onerror",[22,25632,25633],{},"onclick",") o URLs maliciosas.",[1074,25636,25638,25639,25641],{"id":25637},"_2-esperar-que-v-html-procese-directivas-de-vue","2) Esperar que ",[22,25640,25287],{}," procese directivas de Vue",[15,25643,25644],{},"Esto no funciona:",[74,25646,25648],{"className":394,"code":25647,"filename":20153,"language":397,"meta":80,"style":80},"const html = '\u003Cbutton @click=\"save\">Guardar\u003C\u002Fbutton>'\n",[22,25649,25650],{"__ignoreMap":80},[84,25651,25652,25654,25657,25659],{"class":86,"line":87},[84,25653,132],{"class":108},[84,25655,25656],{"class":135}," html",[84,25658,139],{"class":108},[84,25660,25661],{"class":118}," '\u003Cbutton @click=\"save\">Guardar\u003C\u002Fbutton>'\n",[823,25663,25664],{},[15,25665,25666,25667,11716,25669,25672],{},"Las directivas dentro de un string inyectado con ",[22,25668,25287],{},[958,25670,25671],{},"no se compilan ni se enlazan"," al contexto del componente.",[1074,25674,25676,25677,25679],{"id":25675},"_3-usar-v-html-por-flexibilidad","3) Usar ",[22,25678,25287],{}," “por flexibilidad”",[15,25681,25682,25683,25685,25686,25688],{},"Si solo necesitas texto, usa interpolación (",[22,25684,25419],{},") o ",[22,25687,25284],{},".\nEs más simple, más legible y más seguro.",[1074,25690,25692],{"id":25691},"_4-repetir-la-sanitización-en-cada-componente","4) Repetir la sanitización en cada componente",[15,25694,25695],{},"La sanitización debe vivir en una función, composable o utility centralizada.\nDuplicarla en cada vista aumenta el riesgo de inconsistencias y errores.",[34,25697,2736],{"id":2735},[1074,25699,25701,25702,909],{"id":25700},"_1-mensaje-dinámico-seguro-v-text","1) Mensaje dinámico seguro (",[22,25703,25284],{},[74,25705,25707],{"className":76,"code":25706,"filename":10092,"language":79,"meta":80,"style":80},"\u003Cp class=\"status\" v-text=\"statusMessage\">\u003C\u002Fp>\n",[22,25708,25709],{"__ignoreMap":80},[84,25710,25711,25713,25715,25717,25719,25722,25724,25726,25728,25731,25733,25735,25737],{"class":86,"line":87},[84,25712,91],{"class":90},[84,25714,15],{"class":94},[84,25716,1629],{"class":98},[84,25718,184],{"class":90},[84,25720,25721],{"class":118},"\"status\"",[84,25723,25375],{"class":98},[84,25725,184],{"class":90},[84,25727,1678],{"class":118},[84,25729,25730],{"class":90},"statusMessage",[84,25732,1678],{"class":118},[84,25734,25387],{"class":90},[84,25736,15],{"class":94},[84,25738,102],{"class":90},[1074,25740,25742,25743,25745],{"id":25741},"_2-descripción-enriquecida-desde-un-cms-v-html-sanitización-previa","2) Descripción enriquecida desde un CMS (",[22,25744,25287],{}," + sanitización previa)",[74,25747,25749],{"className":76,"code":25748,"filename":10092,"language":79,"meta":80,"style":80},"\u003Carticle class=\"prose\" v-html=\"safeHtml\">\u003C\u002Farticle>\n",[22,25750,25751],{"__ignoreMap":80},[84,25752,25753,25755,25757,25759,25761,25764,25766,25768,25770,25773,25775,25777,25779],{"class":86,"line":87},[84,25754,91],{"class":90},[84,25756,1626],{"class":94},[84,25758,1629],{"class":98},[84,25760,184],{"class":90},[84,25762,25763],{"class":118},"\"prose\"",[84,25765,25445],{"class":98},[84,25767,184],{"class":90},[84,25769,1678],{"class":118},[84,25771,25772],{"class":90},"safeHtml",[84,25774,1678],{"class":118},[84,25776,25387],{"class":90},[84,25778,1626],{"class":94},[84,25780,102],{"class":90},[1074,25782,25784],{"id":25783},"_3-fallback-entre-html-permitido-y-texto-plano","3) Fallback entre HTML permitido y texto plano",[74,25786,25788],{"className":76,"code":25787,"filename":10092,"language":79,"meta":80,"style":80},"\u003Cdiv v-if=\"allowRichText\" v-html=\"safeHtml\">\u003C\u002Fdiv>\n\u003Cp v-else v-text=\"plainText\">\u003C\u002Fp>\n",[22,25789,25790,25823],{"__ignoreMap":80},[84,25791,25792,25794,25796,25798,25800,25802,25805,25807,25809,25811,25813,25815,25817,25819,25821],{"class":86,"line":87},[84,25793,91],{"class":90},[84,25795,4978],{"class":94},[84,25797,344],{"class":108},[84,25799,184],{"class":90},[84,25801,1678],{"class":118},[84,25803,25804],{"class":90},"allowRichText",[84,25806,1678],{"class":118},[84,25808,25445],{"class":98},[84,25810,184],{"class":90},[84,25812,1678],{"class":118},[84,25814,25772],{"class":90},[84,25816,1678],{"class":118},[84,25818,25387],{"class":90},[84,25820,4978],{"class":94},[84,25822,102],{"class":90},[84,25824,25825,25827,25829,25831,25833,25835,25837,25840,25842,25844,25846],{"class":86,"line":105},[84,25826,91],{"class":90},[84,25828,15],{"class":94},[84,25830,1753],{"class":108},[84,25832,25375],{"class":98},[84,25834,184],{"class":90},[84,25836,1678],{"class":118},[84,25838,25839],{"class":90},"plainText",[84,25841,1678],{"class":118},[84,25843,25387],{"class":90},[84,25845,15],{"class":94},[84,25847,102],{"class":90},[34,25849,2766],{"id":2765},[74,25851,25853],{"className":76,"code":25852,"filename":873,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { computed, ref } from \"vue\";\n\nconst allowRichText = ref(true);\nconst rawFromCms = ref(\"\u003Ch3>Novedades\u003C\u002Fh3>\u003Cp>\u003Cstrong>Vue 3\u003C\u002Fstrong> mejora DX.\u003C\u002Fp>\");\nconst plainFallback = ref(\"Novedades: Vue 3 mejora DX.\");\n\nfunction sanitizeHtml(input: string) {\n  \u002F\u002F Placeholder: en producción usa una librería robusta como DOMPurify.\n  return input.replace(\u002F\u003Cscript.*?>.*?\u003C\\\u002Fscript>\u002Fgi, \"\");\n}\n\nconst safeHtml = computed(() => sanitizeHtml(rawFromCms.value));\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection>\n    \u003Ch2>Contenido editorial\u003C\u002Fh2>\n\n    \u003Cdiv v-if=\"allowRichText\" class=\"prose\" v-html=\"safeHtml\">\u003C\u002Fdiv>\n    \u003Cp v-else v-text=\"plainFallback\">\u003C\u002Fp>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[22,25854,25855,25871,25883,25887,25904,25922,25940,25944,25961,25966,26016,26020,26024,26044,26052,26056,26064,26072,26085,26089,26121,26142,26150],{"__ignoreMap":80},[84,25856,25857,25859,25861,25863,25865,25867,25869],{"class":86,"line":87},[84,25858,91],{"class":90},[84,25860,95],{"class":94},[84,25862,99],{"class":98},[84,25864,1161],{"class":98},[84,25866,184],{"class":90},[84,25868,1166],{"class":118},[84,25870,102],{"class":90},[84,25872,25873,25875,25877,25879,25881],{"class":86,"line":105},[84,25874,109],{"class":108},[84,25876,24087],{"class":90},[84,25878,115],{"class":108},[84,25880,18866],{"class":118},[84,25882,18869],{"class":90},[84,25884,25885],{"class":86,"line":122},[84,25886,126],{"emptyLinePlaceholder":125},[84,25888,25889,25891,25894,25896,25898,25900,25902],{"class":86,"line":129},[84,25890,132],{"class":108},[84,25892,25893],{"class":135}," allowRichText",[84,25895,139],{"class":108},[84,25897,142],{"class":98},[84,25899,145],{"class":90},[84,25901,2938],{"class":135},[84,25903,18994],{"class":90},[84,25905,25906,25908,25911,25913,25915,25917,25920],{"class":86,"line":154},[84,25907,132],{"class":108},[84,25909,25910],{"class":135}," rawFromCms",[84,25912,139],{"class":108},[84,25914,142],{"class":98},[84,25916,145],{"class":90},[84,25918,25919],{"class":118},"\"\u003Ch3>Novedades\u003C\u002Fh3>\u003Cp>\u003Cstrong>Vue 3\u003C\u002Fstrong> mejora DX.\u003C\u002Fp>\"",[84,25921,18994],{"class":90},[84,25923,25924,25926,25929,25931,25933,25935,25938],{"class":86,"line":159},[84,25925,132],{"class":108},[84,25927,25928],{"class":135}," plainFallback",[84,25930,139],{"class":108},[84,25932,142],{"class":98},[84,25934,145],{"class":90},[84,25936,25937],{"class":118},"\"Novedades: Vue 3 mejora DX.\"",[84,25939,18994],{"class":90},[84,25941,25942],{"class":86,"line":178},[84,25943,126],{"emptyLinePlaceholder":125},[84,25945,25946,25948,25951,25953,25955,25957,25959],{"class":86,"line":190},[84,25947,3246],{"class":108},[84,25949,25950],{"class":98}," sanitizeHtml",[84,25952,145],{"class":90},[84,25954,18759],{"class":429},[84,25956,1203],{"class":108},[84,25958,22085],{"class":135},[84,25960,438],{"class":90},[84,25962,25963],{"class":86,"line":196},[84,25964,25965],{"class":13481},"  \u002F\u002F Placeholder: en producción usa una librería robusta como DOMPurify.\n",[84,25967,25968,25970,25973,25976,25978,25980,25984,25986,25989,25991,25993,25995,25997,26001,26004,26006,26009,26011,26014],{"class":86,"line":201},[84,25969,557],{"class":108},[84,25971,25972],{"class":90}," input.",[84,25974,25975],{"class":98},"replace",[84,25977,145],{"class":90},[84,25979,16677],{"class":118},[84,25981,25983],{"class":25982},"sA_wV","\u003Cscript",[84,25985,764],{"class":135},[84,25987,25988],{"class":108},"*?",[84,25990,10674],{"class":25982},[84,25992,764],{"class":135},[84,25994,25988],{"class":108},[84,25996,91],{"class":25982},[84,25998,26000],{"class":25999},"snhLl","\\\u002F",[84,26002,26003],{"class":25982},"script>",[84,26005,16677],{"class":118},[84,26007,26008],{"class":108},"gi",[84,26010,754],{"class":90},[84,26012,26013],{"class":118},"\"\"",[84,26015,18994],{"class":90},[84,26017,26018],{"class":86,"line":217},[84,26019,193],{"class":90},[84,26021,26022],{"class":86,"line":227},[84,26023,126],{"emptyLinePlaceholder":125},[84,26025,26026,26028,26031,26033,26035,26037,26039,26041],{"class":86,"line":232},[84,26027,132],{"class":108},[84,26029,26030],{"class":135}," safeHtml",[84,26032,139],{"class":108},[84,26034,2989],{"class":98},[84,26036,2992],{"class":90},[84,26038,172],{"class":108},[84,26040,25950],{"class":98},[84,26042,26043],{"class":90},"(rawFromCms.value));\n",[84,26045,26046,26048,26050],{"class":86,"line":237},[84,26047,274],{"class":90},[84,26049,95],{"class":94},[84,26051,102],{"class":90},[84,26053,26054],{"class":86,"line":253},[84,26055,126],{"emptyLinePlaceholder":125},[84,26057,26058,26060,26062],{"class":86,"line":266},[84,26059,91],{"class":90},[84,26061,291],{"class":94},[84,26063,102],{"class":90},[84,26065,26066,26068,26070],{"class":86,"line":271},[84,26067,299],{"class":90},[84,26069,4898],{"class":94},[84,26071,102],{"class":90},[84,26073,26074,26076,26078,26081,26083],{"class":86,"line":281},[84,26075,1642],{"class":90},[84,26077,34],{"class":94},[84,26079,26080],{"class":90},">Contenido editorial\u003C\u002F",[84,26082,34],{"class":94},[84,26084,102],{"class":90},[84,26086,26087],{"class":86,"line":286},[84,26088,126],{"emptyLinePlaceholder":125},[84,26090,26091,26093,26095,26097,26099,26102,26104,26106,26108,26110,26112,26115,26117,26119],{"class":86,"line":296},[84,26092,1642],{"class":90},[84,26094,4978],{"class":94},[84,26096,344],{"class":98},[84,26098,184],{"class":90},[84,26100,26101],{"class":118},"\"allowRichText\"",[84,26103,1629],{"class":98},[84,26105,184],{"class":90},[84,26107,25763],{"class":118},[84,26109,25445],{"class":98},[84,26111,184],{"class":90},[84,26113,26114],{"class":118},"\"safeHtml\"",[84,26116,25387],{"class":90},[84,26118,4978],{"class":94},[84,26120,102],{"class":90},[84,26122,26123,26125,26127,26129,26131,26133,26136,26138,26140],{"class":86,"line":315},[84,26124,1642],{"class":90},[84,26126,15],{"class":94},[84,26128,1753],{"class":98},[84,26130,25375],{"class":98},[84,26132,184],{"class":90},[84,26134,26135],{"class":118},"\"plainFallback\"",[84,26137,25387],{"class":90},[84,26139,15],{"class":94},[84,26141,102],{"class":90},[84,26143,26144,26146,26148],{"class":86,"line":321},[84,26145,324],{"class":90},[84,26147,4898],{"class":94},[84,26149,102],{"class":90},[84,26151,26152,26154,26156],{"class":86,"line":331},[84,26153,274],{"class":90},[84,26155,291],{"class":94},[84,26157,102],{"class":90},[74,26159,26161],{"className":76,"code":26160,"filename":1782,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      allowRichText: true,\n      rawFromCms: \"\u003Ch3>Novedades\u003C\u002Fh3>\u003Cp>\u003Cstrong>Vue 3\u003C\u002Fstrong> mejora DX.\u003C\u002Fp>\",\n      plainFallback: \"Novedades: Vue 3 mejora DX.\",\n    };\n  },\n  computed: {\n    safeHtml() {\n      return this.sanitizeHtml(this.rawFromCms);\n    },\n  },\n  methods: {\n    sanitizeHtml(input) {\n      \u002F\u002F Placeholder: en producción usa una librería robusta como DOMPurify.\n      return input.replace(\u002F\u003Cscript.*?>.*?\u003C\\\u002Fscript>\u002Fgi, \"\");\n    },\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection>\n    \u003Ch2>Contenido editorial\u003C\u002Fh2>\n\n    \u003Cdiv v-if=\"allowRichText\" class=\"prose\" v-html=\"safeHtml\">\u003C\u002Fdiv>\n    \u003Cp v-else v-text=\"plainFallback\">\u003C\u002Fp>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[22,26162,26163,26171,26179,26185,26191,26200,26209,26218,26222,26226,26230,26237,26255,26259,26263,26267,26278,26283,26323,26327,26331,26335,26343,26347,26355,26363,26375,26379,26409,26429,26437],{"__ignoreMap":80},[84,26164,26165,26167,26169],{"class":86,"line":87},[84,26166,91],{"class":90},[84,26168,95],{"class":94},[84,26170,102],{"class":90},[84,26172,26173,26175,26177],{"class":86,"line":105},[84,26174,418],{"class":108},[84,26176,1870],{"class":108},[84,26178,175],{"class":90},[84,26180,26181,26183],{"class":86,"line":122},[84,26182,1896],{"class":98},[84,26184,1307],{"class":90},[84,26186,26187,26189],{"class":86,"line":129},[84,26188,1903],{"class":108},[84,26190,175],{"class":90},[84,26192,26193,26196,26198],{"class":86,"line":154},[84,26194,26195],{"class":90},"      allowRichText: ",[84,26197,2938],{"class":135},[84,26199,1887],{"class":90},[84,26201,26202,26205,26207],{"class":86,"line":159},[84,26203,26204],{"class":90},"      rawFromCms: ",[84,26206,25919],{"class":118},[84,26208,1887],{"class":90},[84,26210,26211,26214,26216],{"class":86,"line":178},[84,26212,26213],{"class":90},"      plainFallback: ",[84,26215,25937],{"class":118},[84,26217,1887],{"class":90},[84,26219,26220],{"class":86,"line":190},[84,26221,19195],{"class":90},[84,26223,26224],{"class":86,"line":196},[84,26225,1941],{"class":90},[84,26227,26228],{"class":86,"line":201},[84,26229,3527],{"class":90},[84,26231,26232,26235],{"class":86,"line":217},[84,26233,26234],{"class":98},"    safeHtml",[84,26236,1307],{"class":90},[84,26238,26239,26241,26243,26245,26248,26250,26252],{"class":86,"line":227},[84,26240,3539],{"class":108},[84,26242,2078],{"class":135},[84,26244,764],{"class":90},[84,26246,26247],{"class":98},"sanitizeHtml",[84,26249,145],{"class":90},[84,26251,2151],{"class":135},[84,26253,26254],{"class":90},".rawFromCms);\n",[84,26256,26257],{"class":86,"line":232},[84,26258,7783],{"class":90},[84,26260,26261],{"class":86,"line":237},[84,26262,1941],{"class":90},[84,26264,26265],{"class":86,"line":253},[84,26266,1950],{"class":90},[84,26268,26269,26272,26274,26276],{"class":86,"line":266},[84,26270,26271],{"class":98},"    sanitizeHtml",[84,26273,145],{"class":90},[84,26275,18759],{"class":429},[84,26277,438],{"class":90},[84,26279,26280],{"class":86,"line":271},[84,26281,26282],{"class":13481},"      \u002F\u002F Placeholder: en producción usa una librería robusta como DOMPurify.\n",[84,26284,26285,26287,26289,26291,26293,26295,26297,26299,26301,26303,26305,26307,26309,26311,26313,26315,26317,26319,26321],{"class":86,"line":281},[84,26286,3539],{"class":108},[84,26288,25972],{"class":90},[84,26290,25975],{"class":98},[84,26292,145],{"class":90},[84,26294,16677],{"class":118},[84,26296,25983],{"class":25982},[84,26298,764],{"class":135},[84,26300,25988],{"class":108},[84,26302,10674],{"class":25982},[84,26304,764],{"class":135},[84,26306,25988],{"class":108},[84,26308,91],{"class":25982},[84,26310,26000],{"class":25999},[84,26312,26003],{"class":25982},[84,26314,16677],{"class":118},[84,26316,26008],{"class":108},[84,26318,754],{"class":90},[84,26320,26013],{"class":118},[84,26322,18994],{"class":90},[84,26324,26325],{"class":86,"line":286},[84,26326,7783],{"class":90},[84,26328,26329],{"class":86,"line":296},[84,26330,1941],{"class":90},[84,26332,26333],{"class":86,"line":315},[84,26334,18973],{"class":90},[84,26336,26337,26339,26341],{"class":86,"line":321},[84,26338,274],{"class":90},[84,26340,95],{"class":94},[84,26342,102],{"class":90},[84,26344,26345],{"class":86,"line":331},[84,26346,126],{"emptyLinePlaceholder":125},[84,26348,26349,26351,26353],{"class":86,"line":336},[84,26350,91],{"class":90},[84,26352,291],{"class":94},[84,26354,102],{"class":90},[84,26356,26357,26359,26361],{"class":86,"line":354},[84,26358,299],{"class":90},[84,26360,4898],{"class":94},[84,26362,102],{"class":90},[84,26364,26365,26367,26369,26371,26373],{"class":86,"line":360},[84,26366,1642],{"class":90},[84,26368,34],{"class":94},[84,26370,26080],{"class":90},[84,26372,34],{"class":94},[84,26374,102],{"class":90},[84,26376,26377],{"class":86,"line":369},[84,26378,126],{"emptyLinePlaceholder":125},[84,26380,26381,26383,26385,26387,26389,26391,26393,26395,26397,26399,26401,26403,26405,26407],{"class":86,"line":1453},[84,26382,1642],{"class":90},[84,26384,4978],{"class":94},[84,26386,344],{"class":98},[84,26388,184],{"class":90},[84,26390,26101],{"class":118},[84,26392,1629],{"class":98},[84,26394,184],{"class":90},[84,26396,25763],{"class":118},[84,26398,25445],{"class":98},[84,26400,184],{"class":90},[84,26402,26114],{"class":118},[84,26404,25387],{"class":90},[84,26406,4978],{"class":94},[84,26408,102],{"class":90},[84,26410,26411,26413,26415,26417,26419,26421,26423,26425,26427],{"class":86,"line":1462},[84,26412,1642],{"class":90},[84,26414,15],{"class":94},[84,26416,1753],{"class":98},[84,26418,25375],{"class":98},[84,26420,184],{"class":90},[84,26422,26135],{"class":118},[84,26424,25387],{"class":90},[84,26426,15],{"class":94},[84,26428,102],{"class":90},[84,26430,26431,26433,26435],{"class":86,"line":1484},[84,26432,324],{"class":90},[84,26434,4898],{"class":94},[84,26436,102],{"class":90},[84,26438,26439,26441,26443],{"class":86,"line":1489},[84,26440,274],{"class":90},[84,26442,291],{"class":94},[84,26444,102],{"class":90},[34,26446,2406],{"id":2405},[737,26448,26449,26454,26462,26467,26472],{},[740,26450,26451,26453],{},[22,26452,25284],{}," es para texto plano y es la opción por defecto cuando no necesitas HTML.",[740,26455,26456,26457,26459,26460,764],{},"La interpolación (",[22,26458,25419],{},") suele ser más idiomática que ",[22,26461,25284],{},[740,26463,26464,26466],{},[22,26465,25287],{}," solo debe usarse con contenido confiable o previamente sanitizado.",[740,26468,26469,26471],{},[22,26470,25287],{}," no compila ni enlaza directivas Vue.",[740,26473,26474],{},"Centraliza la sanitización en una capa clara (utility\u002Fcomposable).",[823,26476,26477],{},[15,26478,26479,26482,26483,26485,26486,26488],{},[958,26480,26481],{},"Regla práctica:"," si dudas, empieza con interpolación o ",[22,26484,25284],{},", y utiliza ",[22,26487,25287],{}," únicamente cuando el caso de uso lo justifique explícitamente.",[835,26490,26491],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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 .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sA_wV, html code.shiki .sA_wV{--shiki-default:#032F62;--shiki-dark:#DBEDFF}html pre.shiki code .snhLl, html code.shiki .snhLl{--shiki-default:#22863A;--shiki-default-font-weight:bold;--shiki-dark:#85E89D;--shiki-dark-font-weight:bold}",{"title":80,"searchDepth":105,"depth":105,"links":26493},[26494,26495,26499,26505,26511,26520,26527,26528],{"id":21333,"depth":105,"text":21334},{"id":25349,"depth":105,"text":25350,"children":26496},[26497,26498],{"id":25284,"depth":122,"text":25284},{"id":25287,"depth":122,"text":25287},{"id":25490,"depth":105,"text":25491,"children":26500},[26501,26503],{"id":25494,"depth":122,"text":26502},"Usa v-text cuando:",{"id":25518,"depth":122,"text":26504},"Usa v-html cuando:",{"id":25544,"depth":105,"text":25545,"children":26506},[26507,26509],{"id":25548,"depth":122,"text":26508},"Evita v-text cuando:",{"id":25558,"depth":122,"text":26510},"Evita v-html cuando:",{"id":783,"depth":105,"text":784,"children":26512},[26513,26515,26517,26519],{"id":25583,"depth":122,"text":26514},"1) Usar v-html con contenido no confiable",{"id":25637,"depth":122,"text":26516},"2) Esperar que v-html procese directivas de Vue",{"id":25675,"depth":122,"text":26518},"3) Usar v-html “por flexibilidad”",{"id":25691,"depth":122,"text":25692},{"id":2735,"depth":105,"text":2736,"children":26521},[26522,26524,26526],{"id":25700,"depth":122,"text":26523},"1) Mensaje dinámico seguro (v-text)",{"id":25741,"depth":122,"text":26525},"2) Descripción enriquecida desde un CMS (v-html + sanitización previa)",{"id":25783,"depth":122,"text":25784},{"id":2765,"depth":105,"text":2766},{"id":2405,"depth":105,"text":2406},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1771635700\u002Fdirectives-vue-v-text-v-html-guide_n0cemz.png","Ejemplo de uso de v-text y v-html en Vue.js","2026-02-21","Aprende cuándo usar v-text y v-html en Vue, diferencias clave, riesgos de seguridad, errores comunes y patrones recomendados con ejemplos en Composition API y Options API.",{"updatedAt":26534,"coverCaption":26535,"keywords":26536},"2026-02-20T20:00:00-05:00","Aprende a usar v-text y v-html de forma segura y efectiva en tus proyectos Vue",[870,25284,25287,26537,11392,873,1782],"XSS","\u002Fblog\u002Fdirectives-vue-v-text-v-html-guide.es",[26540],{"headline":25276,"author":26541,"datePublished":26534,"@type":880},{"name":868,"@type":879},{"title":25276,"description":26532},"blog\u002Fdirectives-vue-v-text-v-html-guide.es",[26545,26546,26547,26548],{"tag":21297,"color":21298},{"tag":22594,"color":22595},{"tag":3942,"color":3943},{"tag":894,"color":895},"nRl4DrJhzsMVrCXStftR_-Go1SJK8NAAhi0uuGqgmkI",{"id":26551,"title":26552,"body":26553,"cover":28780,"coverAlt":28781,"date":28782,"description":28783,"draft":852,"extension":853,"lab":882,"locale":864,"meta":28784,"navigation":125,"path":28790,"schemaOrg":28791,"seo":28795,"series":21291,"seriesDescription":21292,"seriesOrder":178,"seriesTitle":21293,"slug":882,"stem":28796,"tags":28797,"__hash__":28803},"blog\u002Fblog\u002Fdirectives-vue-v-slot-guide.es.md","Directivas en Vue: v-slot",{"type":8,"value":26554,"toc":28759},[26555,26561,26566,26569,26571,26574,26585,26592,26594,26601,26661,26728,26731,26756,26759,26782,26793,26795,26799,26820,26822,26824,26835,26840,26842,26851,26856,26866,26902,26942,26946,26953,27007,27010,27014,27017,27019,27039,27044,27048,27051,27054,27080,27082,27086,27161,27165,27317,27321,27462,27469,27472,27545,27550,27554,27557,27883,28140,28144,28147,28470,28728,28730,28756],[11,26556,21314,26558],{"id":26557},"directivas-en-vue-v-slot",[22,26559,26560],{},"v-slot",[15,26562,26563,26565],{},[22,26564,26560],{}," permite decidir, desde el componente padre, qué contenido se renderizará dentro de zonas específicas definidas por el componente hijo.\nEn términos simples: el hijo define “huecos” y el padre decide qué colocar en ellos.",[15,26567,26568],{},"Es una de las herramientas más potentes de Vue 3 para construir componentes reutilizables sin perder control sobre el renderizado.",[34,26570,21334],{"id":21333},[15,26572,26573],{},"Sin slots, muchos componentes terminan siendo rígidos:",[737,26575,26576,26579,26582],{},[740,26577,26578],{},"Con textos y botones “quemados” dentro del hijo.",[740,26580,26581],{},"Con demasiadas props para cubrir casos muy específicos.",[740,26583,26584],{},"Difíciles de reutilizar en pantallas diferentes.",[823,26586,26587],{},[15,26588,12736,26589,26591],{},[22,26590,26560],{},", puedes diseñar componentes base (cards, modals, tablas, layouts) que se adapten a distintos contextos sin duplicar lógica ni sacrificar claridad.",[34,26593,25350],{"id":25349},[15,26595,26596,26597,26600],{},"Un componente hijo define ",[22,26598,26599],{},"\u003Cslot \u002F>",", y el padre inyecta contenido:",[74,26602,26606],{"className":76,"code":26603,"filename":26604,"highlights":26605,"language":79,"meta":80,"style":80},"\u003Ctemplate>\n  \u003Csection class=\"card\">\n    \u003Cslot \u002F>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n","BaseCard.vue",[122],[22,26607,26608,26616,26631,26645,26653],{"__ignoreMap":80},[84,26609,26610,26612,26614],{"class":86,"line":87},[84,26611,91],{"class":90},[84,26613,291],{"class":94},[84,26615,102],{"class":90},[84,26617,26618,26620,26622,26624,26626,26629],{"class":86,"line":105},[84,26619,299],{"class":90},[84,26621,4898],{"class":94},[84,26623,1629],{"class":98},[84,26625,184],{"class":90},[84,26627,26628],{"class":118},"\"card\"",[84,26630,102],{"class":90},[84,26632,26634,26636,26639,26643],{"class":26633,"line":122},[86,10151],[84,26635,1642],{"class":90},[84,26637,26638],{"class":94},"slot",[84,26640,26642],{"class":26641},"s7hpK"," \u002F",[84,26644,102],{"class":90},[84,26646,26647,26649,26651],{"class":86,"line":129},[84,26648,324],{"class":90},[84,26650,4898],{"class":94},[84,26652,102],{"class":90},[84,26654,26655,26657,26659],{"class":86,"line":154},[84,26656,274],{"class":90},[84,26658,291],{"class":94},[84,26660,102],{"class":90},[74,26662,26665],{"className":76,"code":26663,"filename":10092,"highlights":26664,"language":79,"meta":80,"style":80},"\u003Ctemplate>\n  \u003CBaseCard>\n    \u003Ch2>Título dinámico\u003C\u002Fh2>\n    \u003Cp>Contenido personalizado desde el padre.\u003C\u002Fp>\n  \u003C\u002FBaseCard>\n\u003C\u002Ftemplate>\n",[105,154],[22,26666,26667,26675,26685,26698,26711,26720],{"__ignoreMap":80},[84,26668,26669,26671,26673],{"class":86,"line":87},[84,26670,91],{"class":90},[84,26672,291],{"class":94},[84,26674,102],{"class":90},[84,26676,26678,26680,26683],{"class":26677,"line":105},[86,10151],[84,26679,299],{"class":90},[84,26681,26682],{"class":94},"BaseCard",[84,26684,102],{"class":90},[84,26686,26687,26689,26691,26694,26696],{"class":86,"line":122},[84,26688,1642],{"class":90},[84,26690,34],{"class":94},[84,26692,26693],{"class":90},">Título dinámico\u003C\u002F",[84,26695,34],{"class":94},[84,26697,102],{"class":90},[84,26699,26700,26702,26704,26707,26709],{"class":86,"line":129},[84,26701,1642],{"class":90},[84,26703,15],{"class":94},[84,26705,26706],{"class":90},">Contenido personalizado desde el padre.\u003C\u002F",[84,26708,15],{"class":94},[84,26710,102],{"class":90},[84,26712,26714,26716,26718],{"class":26713,"line":154},[86,10151],[84,26715,324],{"class":90},[84,26717,26682],{"class":94},[84,26719,102],{"class":90},[84,26721,26722,26724,26726],{"class":86,"line":159},[84,26723,274],{"class":90},[84,26725,291],{"class":94},[84,26727,102],{"class":90},[15,26729,26730],{},"Tipos de slots:",[737,26732,26733,26740,26748],{},[740,26734,26735,21408,26738],{},[958,26736,26737],{},"Slot por defecto",[22,26739,26599],{},[740,26741,26742,21408,26745],{},[958,26743,26744],{},"Slots nombrados",[22,26746,26747],{},"\u003Cslot name=\"header\" \u002F>",[740,26749,26750,21408,26753],{},[958,26751,26752],{},"Slots con props (scoped slots)",[22,26754,26755],{},"\u003Cslot name=\"row\" :item=\"item\" \u002F>",[15,26757,26758],{},"Sintaxis común en el padre:",[737,26760,26761,26767,26776],{},[740,26762,26763,26766],{},[22,26764,26765],{},"#default"," para el slot por defecto.",[740,26768,26769,754,26772,26775],{},[22,26770,26771],{},"#header",[22,26773,26774],{},"#footer",", etc. para slots nombrados.",[740,26777,26778,26781],{},[22,26779,26780],{},"#row=\"{ item }\""," para recibir props desde el hijo.",[823,26783,26784],{},[15,26785,26786,26789,26790,764],{},[22,26787,26788],{},"#"," es la forma abreviada de ",[22,26791,26792],{},"v-slot:",[34,26794,1013],{"id":1012},[15,26796,21486,26797,8430],{},[22,26798,26560],{},[737,26800,26801,26804,26810],{},[740,26802,26803],{},"Tienes un componente estructural (card, modal, layout) cuyo contenido cambia según la vista.",[740,26805,26806,26807,2686],{},"Necesitas exponer datos internos del hijo al padre para personalizar el render (",[22,26808,26809],{},"scoped slots",[740,26811,26812,26813,754,26816,26819],{},"Quieres una API flexible sin proliferar props booleanas como ",[22,26814,26815],{},"showHeader",[22,26817,26818],{},"showFooter",", etc.",[34,26821,1040],{"id":1039},[15,26823,1046],{},[737,26825,26826,26829,26832],{},[740,26827,26828],{},"El componente tiene estructura y contenido completamente fijos.",[740,26830,26831],{},"Estás usando slots para esconder lógica que debería vivir en composables o en el store.",[740,26833,26834],{},"El template se vuelve excesivamente complejo por anidación profunda de slots.",[823,26836,26837],{},[15,26838,26839],{},"En estos casos, menos flexibilidad suele traducirse en mayor mantenibilidad.",[34,26841,784],{"id":783},[1074,26843,21530,26845,26847,26848],{"id":26844},"_1-usar-v-slot-en-un-elemento-que-no-es-componente-o-template",[22,26846,26560],{}," en un elemento que no es componente o ",[22,26849,26850],{},"\u003Ctemplate>",[15,26852,26853,26855],{},[22,26854,26560],{}," solo puede usarse en:",[737,26857,26858,26861],{},[740,26859,26860],{},"Un componente.",[740,26862,2651,26863,26865],{},[22,26864,26850],{}," que envuelve contenido para un slot específico.",[74,26867,26871],{"className":76,"code":26868,"filename":26869,"highlights":26870,"language":79,"meta":80,"style":80},"\u003Cdiv v-slot:header>\n  Título\n\u003C\u002Fdiv>\n","Incorrecto.vue",[87],[22,26872,26873,26889,26894],{"__ignoreMap":80},[84,26874,26876,26878,26880,26883,26885,26887],{"class":26875,"line":87},[86,10151],[84,26877,91],{"class":90},[84,26879,4978],{"class":94},[84,26881,26882],{"class":98}," v-slot",[84,26884,1203],{"class":90},[84,26886,4915],{"class":98},[84,26888,102],{"class":90},[84,26890,26891],{"class":86,"line":105},[84,26892,26893],{"class":90},"  Título\n",[84,26895,26896,26898,26900],{"class":86,"line":122},[84,26897,274],{"class":90},[84,26899,4978],{"class":94},[84,26901,102],{"class":90},[74,26903,26907],{"className":76,"code":26904,"filename":26905,"highlights":26906,"language":79,"meta":80,"style":80},"\u003CBaseCard>\n  \u003Ctemplate #header>\n    Título\n  \u003C\u002Ftemplate>\n\u003C\u002FBaseCard>\n","Correcto.vue",[105,129],[22,26908,26909,26917,26923,26928,26934],{"__ignoreMap":80},[84,26910,26911,26913,26915],{"class":86,"line":87},[84,26912,91],{"class":90},[84,26914,26682],{"class":94},[84,26916,102],{"class":90},[84,26918,26920],{"class":26919,"line":105},[86,10151],[84,26921,26922],{"class":90},"  \u003Ctemplate #header>\n",[84,26924,26925],{"class":86,"line":122},[84,26926,26927],{"class":90},"    Título\n",[84,26929,26931],{"class":26930,"line":129},[86,10151],[84,26932,26933],{"class":90},"  \u003C\u002Ftemplate>\n",[84,26935,26936,26938,26940],{"class":86,"line":154},[84,26937,274],{"class":90},[84,26939,26682],{"class":94},[84,26941,102],{"class":90},[1074,26943,26945],{"id":26944},"_2-no-destructurar-las-props-de-un-scoped-slot","2) No destructurar las props de un scoped slot",[15,26947,26948,26949,26952],{},"Si el hijo expone ",[22,26950,26951],{},":item=\"row\"",", el padre debe capturar ese objeto correctamente:",[74,26954,26958],{"className":76,"code":26955,"filename":26956,"highlights":26957,"language":79,"meta":80,"style":80},"\u003CDataTable :rows=\"users\">\n  \u003Ctemplate #row=\"{ item }\">\n    \u003Cstrong>{{ item.name }}\u003C\u002Fstrong>\n  \u003C\u002Ftemplate>\n\u003C\u002FDataTable>\n","DataTable.vue",[87,105],[22,26959,26960,26984,26990,26995,26999],{"__ignoreMap":80},[84,26961,26963,26965,26968,26970,26973,26975,26977,26980,26982],{"class":26962,"line":87},[86,10151],[84,26964,91],{"class":90},[84,26966,26967],{"class":94},"DataTable",[84,26969,7012],{"class":90},[84,26971,26972],{"class":98},"rows",[84,26974,184],{"class":90},[84,26976,1678],{"class":118},[84,26978,26979],{"class":90},"users",[84,26981,1678],{"class":118},[84,26983,102],{"class":90},[84,26985,26987],{"class":26986,"line":105},[86,10151],[84,26988,26989],{"class":90},"  \u003Ctemplate #row=\"{ item }\">\n",[84,26991,26992],{"class":86,"line":122},[84,26993,26994],{"class":90},"    \u003Cstrong>{{ item.name }}\u003C\u002Fstrong>\n",[84,26996,26997],{"class":86,"line":129},[84,26998,26933],{"class":90},[84,27000,27001,27003,27005],{"class":86,"line":154},[84,27002,274],{"class":90},[84,27004,26967],{"class":94},[84,27006,102],{"class":90},[15,27008,27009],{},"Si no se destructura correctamente, perderás acceso explícito a las props del slot.",[1074,27011,27013],{"id":27012},"_3-convertir-los-slots-en-prop-drilling-visual","3) Convertir los slots en “prop drilling visual”",[15,27015,27016],{},"Cuando todo pasa por slots y casi nada por props o eventos bien definidos, la API del componente se vuelve confusa.",[15,27018,26481],{},[737,27020,27021,27027,27033],{},[740,27022,27023,27026],{},[958,27024,27025],{},"Props"," → configuración.",[740,27028,27029,27032],{},[958,27030,27031],{},"Slots"," → estructura\u002Fcontenido.",[740,27034,27035,27038],{},[958,27036,27037],{},"Emits"," → eventos.",[823,27040,27041],{},[15,27042,27043],{},"Separar responsabilidades mantiene la API clara y predecible.",[1074,27045,27047],{"id":27046},"_4-no-definir-fallback-en-el-hijo","4) No definir fallback en el hijo",[15,27049,27050],{},"Si el padre no provee contenido para un slot, puede quedar un espacio vacío inesperado.",[15,27052,27053],{},"Siempre que tenga sentido, define contenido por defecto:",[74,27055,27057],{"className":76,"code":27056,"filename":26604,"language":79,"meta":80,"style":80},"\u003Cslot>\n  Fallback por defecto\n\u003C\u002Fslot>\n",[22,27058,27059,27067,27072],{"__ignoreMap":80},[84,27060,27061,27063,27065],{"class":86,"line":87},[84,27062,91],{"class":90},[84,27064,26638],{"class":94},[84,27066,102],{"class":90},[84,27068,27069],{"class":86,"line":105},[84,27070,27071],{"class":90},"  Fallback por defecto\n",[84,27073,27074,27076,27078],{"class":86,"line":122},[84,27075,274],{"class":90},[84,27077,26638],{"class":94},[84,27079,102],{"class":90},[34,27081,2736],{"id":2735},[1074,27083,27085],{"id":27084},"_1-slot-por-defecto-con-fallback","1) Slot por defecto con fallback",[74,27087,27090],{"className":76,"code":27088,"filename":26604,"highlights":27089,"language":79,"meta":80,"style":80},"\u003Ctemplate>\n  \u003Carticle class=\"card\">\n    \u003Cslot>\n      \u003Cp>Contenido por defecto de la tarjeta.\u003C\u002Fp>\n    \u003C\u002Fslot>\n  \u003C\u002Farticle>\n\u003C\u002Ftemplate>\n",[122,154],[22,27091,27092,27100,27114,27123,27136,27145,27153],{"__ignoreMap":80},[84,27093,27094,27096,27098],{"class":86,"line":87},[84,27095,91],{"class":90},[84,27097,291],{"class":94},[84,27099,102],{"class":90},[84,27101,27102,27104,27106,27108,27110,27112],{"class":86,"line":105},[84,27103,299],{"class":90},[84,27105,1626],{"class":94},[84,27107,1629],{"class":98},[84,27109,184],{"class":90},[84,27111,26628],{"class":118},[84,27113,102],{"class":90},[84,27115,27117,27119,27121],{"class":27116,"line":122},[86,10151],[84,27118,1642],{"class":90},[84,27120,26638],{"class":94},[84,27122,102],{"class":90},[84,27124,27125,27127,27129,27132,27134],{"class":86,"line":129},[84,27126,1691],{"class":90},[84,27128,15],{"class":94},[84,27130,27131],{"class":90},">Contenido por defecto de la tarjeta.\u003C\u002F",[84,27133,15],{"class":94},[84,27135,102],{"class":90},[84,27137,27139,27141,27143],{"class":27138,"line":154},[86,10151],[84,27140,1734],{"class":90},[84,27142,26638],{"class":94},[84,27144,102],{"class":90},[84,27146,27147,27149,27151],{"class":86,"line":159},[84,27148,324],{"class":90},[84,27150,1626],{"class":94},[84,27152,102],{"class":90},[84,27154,27155,27157,27159],{"class":86,"line":178},[84,27156,274],{"class":90},[84,27158,291],{"class":94},[84,27160,102],{"class":90},[1074,27162,27164],{"id":27163},"_2-slots-nombrados-para-estructurar-un-layout","2) Slots nombrados para estructurar un layout",[74,27166,27170],{"className":76,"code":27167,"filename":27168,"highlights":27169,"language":79,"meta":80,"style":80},"\u003Ctemplate>\n  \u003Csection class=\"layout\">\n    \u003Cheader>\n      \u003Cslot name=\"header\" \u002F>\n    \u003C\u002Fheader>\n\n    \u003Cmain>\n      \u003Cslot \u002F>\n    \u003C\u002Fmain>\n\n    \u003Cfooter>\n      \u003Cslot name=\"footer\" \u002F>\n    \u003C\u002Ffooter>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n","BaseLayout.vue",[129,190,227],[22,27171,27172,27180,27195,27203,27222,27230,27234,27243,27254,27262,27266,27275,27293,27301,27309],{"__ignoreMap":80},[84,27173,27174,27176,27178],{"class":86,"line":87},[84,27175,91],{"class":90},[84,27177,291],{"class":94},[84,27179,102],{"class":90},[84,27181,27182,27184,27186,27188,27190,27193],{"class":86,"line":105},[84,27183,299],{"class":90},[84,27185,4898],{"class":94},[84,27187,1629],{"class":98},[84,27189,184],{"class":90},[84,27191,27192],{"class":118},"\"layout\"",[84,27194,102],{"class":90},[84,27196,27197,27199,27201],{"class":86,"line":122},[84,27198,1642],{"class":90},[84,27200,4915],{"class":94},[84,27202,102],{"class":90},[84,27204,27206,27208,27210,27213,27215,27218,27220],{"class":27205,"line":129},[86,10151],[84,27207,1691],{"class":90},[84,27209,26638],{"class":94},[84,27211,27212],{"class":98}," name",[84,27214,184],{"class":90},[84,27216,27217],{"class":118},"\"header\"",[84,27219,26642],{"class":26641},[84,27221,102],{"class":90},[84,27223,27224,27226,27228],{"class":86,"line":154},[84,27225,1734],{"class":90},[84,27227,4915],{"class":94},[84,27229,102],{"class":90},[84,27231,27232],{"class":86,"line":159},[84,27233,126],{"emptyLinePlaceholder":125},[84,27235,27236,27238,27241],{"class":86,"line":178},[84,27237,1642],{"class":90},[84,27239,27240],{"class":94},"main",[84,27242,102],{"class":90},[84,27244,27246,27248,27250,27252],{"class":27245,"line":190},[86,10151],[84,27247,1691],{"class":90},[84,27249,26638],{"class":94},[84,27251,26642],{"class":26641},[84,27253,102],{"class":90},[84,27255,27256,27258,27260],{"class":86,"line":196},[84,27257,1734],{"class":90},[84,27259,27240],{"class":94},[84,27261,102],{"class":90},[84,27263,27264],{"class":86,"line":201},[84,27265,126],{"emptyLinePlaceholder":125},[84,27267,27268,27270,27273],{"class":86,"line":217},[84,27269,1642],{"class":90},[84,27271,27272],{"class":94},"footer",[84,27274,102],{"class":90},[84,27276,27278,27280,27282,27284,27286,27289,27291],{"class":27277,"line":227},[86,10151],[84,27279,1691],{"class":90},[84,27281,26638],{"class":94},[84,27283,27212],{"class":98},[84,27285,184],{"class":90},[84,27287,27288],{"class":118},"\"footer\"",[84,27290,26642],{"class":26641},[84,27292,102],{"class":90},[84,27294,27295,27297,27299],{"class":86,"line":232},[84,27296,1734],{"class":90},[84,27298,27272],{"class":94},[84,27300,102],{"class":90},[84,27302,27303,27305,27307],{"class":86,"line":237},[84,27304,324],{"class":90},[84,27306,4898],{"class":94},[84,27308,102],{"class":90},[84,27310,27311,27313,27315],{"class":86,"line":253},[84,27312,274],{"class":90},[84,27314,291],{"class":94},[84,27316,102],{"class":90},[1074,27318,27320],{"id":27319},"_3-scoped-slot-para-personalizar-filas-de-una-tabla","3) Scoped slot para personalizar filas de una tabla",[74,27322,27325],{"className":76,"code":27323,"filename":26956,"highlights":27324,"language":79,"meta":80,"style":80},"\u003Ctemplate>\n  \u003Ctable>\n    \u003Ctbody>\n      \u003Ctr v-for=\"row in rows\" :key=\"row.id\">\n        \u003Ctd>\n          \u003Cslot name=\"row\" :item=\"row\">\n            {{ row.name }}\n          \u003C\u002Fslot>\n        \u003C\u002Ftd>\n      \u003C\u002Ftr>\n    \u003C\u002Ftbody>\n  \u003C\u002Ftable>\n\u003C\u002Ftemplate>\n",[159,190],[22,27326,27327,27335,27343,27351,27373,27382,27406,27411,27421,27430,27438,27446,27454],{"__ignoreMap":80},[84,27328,27329,27331,27333],{"class":86,"line":87},[84,27330,91],{"class":90},[84,27332,291],{"class":94},[84,27334,102],{"class":90},[84,27336,27337,27339,27341],{"class":86,"line":105},[84,27338,299],{"class":90},[84,27340,6160],{"class":94},[84,27342,102],{"class":90},[84,27344,27345,27347,27349],{"class":86,"line":122},[84,27346,1642],{"class":90},[84,27348,6182],{"class":94},[84,27350,102],{"class":90},[84,27352,27353,27355,27357,27359,27361,27364,27366,27368,27371],{"class":86,"line":129},[84,27354,1691],{"class":90},[84,27356,6166],{"class":94},[84,27358,13525],{"class":98},[84,27360,184],{"class":90},[84,27362,27363],{"class":118},"\"row in rows\"",[84,27365,5092],{"class":98},[84,27367,184],{"class":90},[84,27369,27370],{"class":118},"\"row.id\"",[84,27372,102],{"class":90},[84,27374,27375,27378,27380],{"class":86,"line":154},[84,27376,27377],{"class":90},"        \u003C",[84,27379,6187],{"class":94},[84,27381,102],{"class":90},[84,27383,27385,27388,27390,27392,27394,27397,27400,27402,27404],{"class":27384,"line":159},[86,10151],[84,27386,27387],{"class":90},"          \u003C",[84,27389,26638],{"class":94},[84,27391,27212],{"class":98},[84,27393,184],{"class":90},[84,27395,27396],{"class":118},"\"row\"",[84,27398,27399],{"class":98}," :item",[84,27401,184],{"class":90},[84,27403,27396],{"class":118},[84,27405,102],{"class":90},[84,27407,27408],{"class":86,"line":178},[84,27409,27410],{"class":90},"            {{ row.name }}\n",[84,27412,27414,27417,27419],{"class":27413,"line":190},[86,10151],[84,27415,27416],{"class":90},"          \u003C\u002F",[84,27418,26638],{"class":94},[84,27420,102],{"class":90},[84,27422,27423,27426,27428],{"class":86,"line":196},[84,27424,27425],{"class":90},"        \u003C\u002F",[84,27427,6187],{"class":94},[84,27429,102],{"class":90},[84,27431,27432,27434,27436],{"class":86,"line":201},[84,27433,4952],{"class":90},[84,27435,6166],{"class":94},[84,27437,102],{"class":90},[84,27439,27440,27442,27444],{"class":86,"line":217},[84,27441,1734],{"class":90},[84,27443,6182],{"class":94},[84,27445,102],{"class":90},[84,27447,27448,27450,27452],{"class":86,"line":227},[84,27449,324],{"class":90},[84,27451,6160],{"class":94},[84,27453,102],{"class":90},[84,27455,27456,27458,27460],{"class":86,"line":232},[84,27457,274],{"class":90},[84,27459,291],{"class":94},[84,27461,102],{"class":90},[1074,27463,27465,27466,27468],{"id":27464},"_4-v-slot-con-argumento-dinámico","4) ",[22,27467,26560],{}," con argumento dinámico",[15,27470,27471],{},"Vue permite argumentos dinámicos usando la misma sintaxis que otras directivas dinámicas:",[74,27473,27477],{"className":76,"code":27474,"filename":27475,"highlights":27476,"language":79,"meta":80,"style":80},"\u003Ctemplate>\n  \u003CWidgetShell>\n    \u003Ctemplate v-slot:[zonaActiva]>\n      \u003Cp>Este bloque entra en una zona dinámica.\u003C\u002Fp>\n    \u003C\u002Ftemplate>\n  \u003C\u002FWidgetShell>\n\u003C\u002Ftemplate>\n","Padre.vue",[122],[22,27478,27479,27487,27496,27508,27521,27529,27537],{"__ignoreMap":80},[84,27480,27481,27483,27485],{"class":86,"line":87},[84,27482,91],{"class":90},[84,27484,291],{"class":94},[84,27486,102],{"class":90},[84,27488,27489,27491,27494],{"class":86,"line":105},[84,27490,299],{"class":90},[84,27492,27493],{"class":94},"WidgetShell",[84,27495,102],{"class":90},[84,27497,27499,27501,27503,27505],{"class":27498,"line":122},[86,10151],[84,27500,1642],{"class":90},[84,27502,291],{"class":94},[84,27504,26882],{"class":98},[84,27506,27507],{"class":90},":[zonaActiva]>\n",[84,27509,27510,27512,27514,27517,27519],{"class":86,"line":129},[84,27511,1691],{"class":90},[84,27513,15],{"class":94},[84,27515,27516],{"class":90},">Este bloque entra en una zona dinámica.\u003C\u002F",[84,27518,15],{"class":94},[84,27520,102],{"class":90},[84,27522,27523,27525,27527],{"class":86,"line":154},[84,27524,1734],{"class":90},[84,27526,291],{"class":94},[84,27528,102],{"class":90},[84,27530,27531,27533,27535],{"class":86,"line":159},[84,27532,324],{"class":90},[84,27534,27493],{"class":94},[84,27536,102],{"class":90},[84,27538,27539,27541,27543],{"class":86,"line":178},[84,27540,274],{"class":90},[84,27542,291],{"class":94},[84,27544,102],{"class":90},[823,27546,27547],{},[15,27548,27549],{},"Úsalo con moderación. Si existen muchas zonas dinámicas, probablemente la API del componente necesite simplificarse.",[11,27551,27553],{"id":27552},"ejemplo-con-composition-api","Ejemplo con Composition API",[15,27555,27556],{},"El hijo expone una tabla base y el padre decide cómo renderizar la celda de acciones.",[74,27558,27560],{"className":76,"code":27559,"filename":26956,"language":79,"meta":80,"style":80},"\u003Cscript setup>\ndefineProps({\n  rows: {\n    type: Array,\n    required: true,\n  },\n});\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Ctable class=\"min-w-full border-collapse\">\n    \u003Cthead>\n      \u003Ctr>\n        \u003Cth class=\"text-left\">Nombre\u003C\u002Fth>\n        \u003Cth class=\"text-left\">Rol\u003C\u002Fth>\n        \u003Cth class=\"text-left\">Acciones\u003C\u002Fth>\n      \u003C\u002Ftr>\n    \u003C\u002Fthead>\n    \u003Ctbody>\n      \u003Ctr v-for=\"user in rows\" :key=\"user.id\">\n        \u003Ctd>{{ user.name }}\u003C\u002Ftd>\n        \u003Ctd>{{ user.role }}\u003C\u002Ftd>\n        \u003Ctd>\n          \u003Cslot name=\"actions\" :user=\"user\">\n            \u003Cbutton type=\"button\">Ver perfil\u003C\u002Fbutton>\n          \u003C\u002Fslot>\n        \u003C\u002Ftd>\n      \u003C\u002Ftr>\n    \u003C\u002Ftbody>\n  \u003C\u002Ftable>\n\u003C\u002Ftemplate>\n",[22,27561,27562,27572,27579,27584,27589,27598,27602,27606,27614,27618,27626,27641,27649,27657,27677,27696,27715,27723,27731,27739,27760,27772,27785,27793,27815,27835,27843,27851,27859,27867,27875],{"__ignoreMap":80},[84,27563,27564,27566,27568,27570],{"class":86,"line":87},[84,27565,91],{"class":90},[84,27567,95],{"class":94},[84,27569,99],{"class":98},[84,27571,102],{"class":90},[84,27573,27574,27577],{"class":86,"line":105},[84,27575,27576],{"class":98},"defineProps",[84,27578,1876],{"class":90},[84,27580,27581],{"class":86,"line":122},[84,27582,27583],{"class":90},"  rows: {\n",[84,27585,27586],{"class":86,"line":129},[84,27587,27588],{"class":90},"    type: Array,\n",[84,27590,27591,27594,27596],{"class":86,"line":154},[84,27592,27593],{"class":90},"    required: ",[84,27595,2938],{"class":135},[84,27597,1887],{"class":90},[84,27599,27600],{"class":86,"line":159},[84,27601,1941],{"class":90},[84,27603,27604],{"class":86,"line":178},[84,27605,22163],{"class":90},[84,27607,27608,27610,27612],{"class":86,"line":190},[84,27609,274],{"class":90},[84,27611,95],{"class":94},[84,27613,102],{"class":90},[84,27615,27616],{"class":86,"line":196},[84,27617,126],{"emptyLinePlaceholder":125},[84,27619,27620,27622,27624],{"class":86,"line":201},[84,27621,91],{"class":90},[84,27623,291],{"class":94},[84,27625,102],{"class":90},[84,27627,27628,27630,27632,27634,27636,27639],{"class":86,"line":217},[84,27629,299],{"class":90},[84,27631,6160],{"class":94},[84,27633,1629],{"class":98},[84,27635,184],{"class":90},[84,27637,27638],{"class":118},"\"min-w-full border-collapse\"",[84,27640,102],{"class":90},[84,27642,27643,27645,27647],{"class":86,"line":227},[84,27644,1642],{"class":90},[84,27646,6163],{"class":94},[84,27648,102],{"class":90},[84,27650,27651,27653,27655],{"class":86,"line":232},[84,27652,1691],{"class":90},[84,27654,6166],{"class":94},[84,27656,102],{"class":90},[84,27658,27659,27661,27663,27665,27667,27670,27673,27675],{"class":86,"line":237},[84,27660,27377],{"class":90},[84,27662,6169],{"class":94},[84,27664,1629],{"class":98},[84,27666,184],{"class":90},[84,27668,27669],{"class":118},"\"text-left\"",[84,27671,27672],{"class":90},">Nombre\u003C\u002F",[84,27674,6169],{"class":94},[84,27676,102],{"class":90},[84,27678,27679,27681,27683,27685,27687,27689,27692,27694],{"class":86,"line":253},[84,27680,27377],{"class":90},[84,27682,6169],{"class":94},[84,27684,1629],{"class":98},[84,27686,184],{"class":90},[84,27688,27669],{"class":118},[84,27690,27691],{"class":90},">Rol\u003C\u002F",[84,27693,6169],{"class":94},[84,27695,102],{"class":90},[84,27697,27698,27700,27702,27704,27706,27708,27711,27713],{"class":86,"line":266},[84,27699,27377],{"class":90},[84,27701,6169],{"class":94},[84,27703,1629],{"class":98},[84,27705,184],{"class":90},[84,27707,27669],{"class":118},[84,27709,27710],{"class":90},">Acciones\u003C\u002F",[84,27712,6169],{"class":94},[84,27714,102],{"class":90},[84,27716,27717,27719,27721],{"class":86,"line":271},[84,27718,4952],{"class":90},[84,27720,6166],{"class":94},[84,27722,102],{"class":90},[84,27724,27725,27727,27729],{"class":86,"line":281},[84,27726,1734],{"class":90},[84,27728,6163],{"class":94},[84,27730,102],{"class":90},[84,27732,27733,27735,27737],{"class":86,"line":286},[84,27734,1642],{"class":90},[84,27736,6182],{"class":94},[84,27738,102],{"class":90},[84,27740,27741,27743,27745,27747,27749,27752,27754,27756,27758],{"class":86,"line":296},[84,27742,1691],{"class":90},[84,27744,6166],{"class":94},[84,27746,13525],{"class":98},[84,27748,184],{"class":90},[84,27750,27751],{"class":118},"\"user in rows\"",[84,27753,5092],{"class":98},[84,27755,184],{"class":90},[84,27757,13537],{"class":118},[84,27759,102],{"class":90},[84,27761,27762,27764,27766,27768,27770],{"class":86,"line":315},[84,27763,27377],{"class":90},[84,27765,6187],{"class":94},[84,27767,23469],{"class":90},[84,27769,6187],{"class":94},[84,27771,102],{"class":90},[84,27773,27774,27776,27778,27781,27783],{"class":86,"line":321},[84,27775,27377],{"class":90},[84,27777,6187],{"class":94},[84,27779,27780],{"class":90},">{{ user.role }}\u003C\u002F",[84,27782,6187],{"class":94},[84,27784,102],{"class":90},[84,27786,27787,27789,27791],{"class":86,"line":331},[84,27788,27377],{"class":90},[84,27790,6187],{"class":94},[84,27792,102],{"class":90},[84,27794,27795,27797,27799,27801,27803,27806,27809,27811,27813],{"class":86,"line":336},[84,27796,27387],{"class":90},[84,27798,26638],{"class":94},[84,27800,27212],{"class":98},[84,27802,184],{"class":90},[84,27804,27805],{"class":118},"\"actions\"",[84,27807,27808],{"class":98}," :user",[84,27810,184],{"class":90},[84,27812,22227],{"class":118},[84,27814,102],{"class":90},[84,27816,27817,27820,27822,27824,27826,27828,27831,27833],{"class":86,"line":354},[84,27818,27819],{"class":90},"            \u003C",[84,27821,302],{"class":94},[84,27823,5046],{"class":98},[84,27825,184],{"class":90},[84,27827,5051],{"class":118},[84,27829,27830],{"class":90},">Ver perfil\u003C\u002F",[84,27832,302],{"class":94},[84,27834,102],{"class":90},[84,27836,27837,27839,27841],{"class":86,"line":360},[84,27838,27416],{"class":90},[84,27840,26638],{"class":94},[84,27842,102],{"class":90},[84,27844,27845,27847,27849],{"class":86,"line":369},[84,27846,27425],{"class":90},[84,27848,6187],{"class":94},[84,27850,102],{"class":90},[84,27852,27853,27855,27857],{"class":86,"line":1453},[84,27854,4952],{"class":90},[84,27856,6166],{"class":94},[84,27858,102],{"class":90},[84,27860,27861,27863,27865],{"class":86,"line":1462},[84,27862,1734],{"class":90},[84,27864,6182],{"class":94},[84,27866,102],{"class":90},[84,27868,27869,27871,27873],{"class":86,"line":1484},[84,27870,324],{"class":90},[84,27872,6160],{"class":94},[84,27874,102],{"class":90},[84,27876,27877,27879,27881],{"class":86,"line":1489},[84,27878,274],{"class":90},[84,27880,291],{"class":94},[84,27882,102],{"class":90},[74,27884,27887],{"className":76,"code":27885,"filename":27886,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from \"vue\";\nimport DataTable from \".\u002FDataTable.vue\";\n\nconst users = ref([\n  { id: 1, name: \"Ana\", role: \"Admin\", active: true },\n  { id: 2, name: \"Luis\", role: \"Editor\", active: false },\n]);\n\nfunction toggleStatus(user) {\n  user.active = !user.active;\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003CDataTable :rows=\"users\">\n    \u003Ctemplate #actions=\"{ user }\">\n      \u003Cbutton type=\"button\" @click=\"toggleStatus(user)\">\n        {{ user.active ? \"Desactivar\" : \"Activar\" }}\n      \u003C\u002Fbutton>\n    \u003C\u002Ftemplate>\n  \u003C\u002FDataTable>\n\u003C\u002Ftemplate>\n","UsersView.vue",[22,27888,27889,27899,27911,27925,27929,27941,27964,27985,27989,27993,28007,28019,28023,28031,28035,28043,28059,28082,28103,28108,28116,28124,28132],{"__ignoreMap":80},[84,27890,27891,27893,27895,27897],{"class":86,"line":87},[84,27892,91],{"class":90},[84,27894,95],{"class":94},[84,27896,99],{"class":98},[84,27898,102],{"class":90},[84,27900,27901,27903,27905,27907,27909],{"class":86,"line":105},[84,27902,109],{"class":108},[84,27904,112],{"class":90},[84,27906,115],{"class":108},[84,27908,18866],{"class":118},[84,27910,18869],{"class":90},[84,27912,27913,27915,27918,27920,27923],{"class":86,"line":122},[84,27914,109],{"class":108},[84,27916,27917],{"class":90}," DataTable ",[84,27919,115],{"class":108},[84,27921,27922],{"class":118}," \".\u002FDataTable.vue\"",[84,27924,18869],{"class":90},[84,27926,27927],{"class":86,"line":129},[84,27928,126],{"emptyLinePlaceholder":125},[84,27930,27931,27933,27935,27937,27939],{"class":86,"line":154},[84,27932,132],{"class":108},[84,27934,11767],{"class":135},[84,27936,139],{"class":108},[84,27938,142],{"class":98},[84,27940,2894],{"class":90},[84,27942,27943,27945,27947,27949,27951,27954,27957,27960,27962],{"class":86,"line":159},[84,27944,2899],{"class":90},[84,27946,2862],{"class":135},[84,27948,23323],{"class":90},[84,27950,18308],{"class":118},[84,27952,27953],{"class":90},", role: ",[84,27955,27956],{"class":118},"\"Admin\"",[84,27958,27959],{"class":90},", active: ",[84,27961,2938],{"class":135},[84,27963,2921],{"class":90},[84,27965,27966,27968,27970,27972,27974,27976,27979,27981,27983],{"class":86,"line":178},[84,27967,2899],{"class":90},[84,27969,2928],{"class":135},[84,27971,23323],{"class":90},[84,27973,23349],{"class":118},[84,27975,27953],{"class":90},[84,27977,27978],{"class":118},"\"Editor\"",[84,27980,27959],{"class":90},[84,27982,148],{"class":135},[84,27984,2921],{"class":90},[84,27986,27987],{"class":86,"line":190},[84,27988,23387],{"class":90},[84,27990,27991],{"class":86,"line":196},[84,27992,126],{"emptyLinePlaceholder":125},[84,27994,27995,27997,28000,28002,28005],{"class":86,"line":201},[84,27996,3246],{"class":108},[84,27998,27999],{"class":98}," toggleStatus",[84,28001,145],{"class":90},[84,28003,28004],{"class":429},"user",[84,28006,438],{"class":90},[84,28008,28009,28012,28014,28016],{"class":86,"line":217},[84,28010,28011],{"class":90},"  user.active ",[84,28013,184],{"class":108},[84,28015,260],{"class":108},[84,28017,28018],{"class":90},"user.active;\n",[84,28020,28021],{"class":86,"line":227},[84,28022,193],{"class":90},[84,28024,28025,28027,28029],{"class":86,"line":232},[84,28026,274],{"class":90},[84,28028,95],{"class":94},[84,28030,102],{"class":90},[84,28032,28033],{"class":86,"line":237},[84,28034,126],{"emptyLinePlaceholder":125},[84,28036,28037,28039,28041],{"class":86,"line":253},[84,28038,91],{"class":90},[84,28040,291],{"class":94},[84,28042,102],{"class":90},[84,28044,28045,28047,28049,28052,28054,28057],{"class":86,"line":266},[84,28046,299],{"class":90},[84,28048,26967],{"class":94},[84,28050,28051],{"class":98}," :rows",[84,28053,184],{"class":90},[84,28055,28056],{"class":118},"\"users\"",[84,28058,102],{"class":90},[84,28060,28061,28063,28065,28068,28071,28073,28075,28078,28080],{"class":86,"line":271},[84,28062,1642],{"class":90},[84,28064,291],{"class":94},[84,28066,28067],{"class":90}," #",[84,28069,28070],{"class":98},"actions",[84,28072,184],{"class":90},[84,28074,1678],{"class":118},[84,28076,28077],{"class":90},"{ user }",[84,28079,1678],{"class":118},[84,28081,102],{"class":90},[84,28083,28084,28086,28088,28090,28092,28094,28096,28098,28101],{"class":86,"line":281},[84,28085,1691],{"class":90},[84,28087,302],{"class":94},[84,28089,5046],{"class":98},[84,28091,184],{"class":90},[84,28093,5051],{"class":118},[84,28095,305],{"class":98},[84,28097,184],{"class":90},[84,28099,28100],{"class":118},"\"toggleStatus(user)\"",[84,28102,102],{"class":90},[84,28104,28105],{"class":86,"line":286},[84,28106,28107],{"class":90},"        {{ user.active ? \"Desactivar\" : \"Activar\" }}\n",[84,28109,28110,28112,28114],{"class":86,"line":296},[84,28111,4952],{"class":90},[84,28113,302],{"class":94},[84,28115,102],{"class":90},[84,28117,28118,28120,28122],{"class":86,"line":315},[84,28119,1734],{"class":90},[84,28121,291],{"class":94},[84,28123,102],{"class":90},[84,28125,28126,28128,28130],{"class":86,"line":321},[84,28127,324],{"class":90},[84,28129,26967],{"class":94},[84,28131,102],{"class":90},[84,28133,28134,28136,28138],{"class":86,"line":331},[84,28135,274],{"class":90},[84,28137,291],{"class":94},[84,28139,102],{"class":90},[11,28141,28143],{"id":28142},"ejemplo-con-options-api","Ejemplo con Options API",[15,28145,28146],{},"El mismo comportamiento, ahora utilizando Options API para mantener equivalencia conceptual.",[74,28148,28150],{"className":76,"code":28149,"filename":26956,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  props: {\n    rows: {\n      type: Array,\n      required: true,\n    },\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Ctable class=\"min-w-full border-collapse\">\n    \u003Cthead>\n      \u003Ctr>\n        \u003Cth class=\"text-left\">Nombre\u003C\u002Fth>\n        \u003Cth class=\"text-left\">Rol\u003C\u002Fth>\n        \u003Cth class=\"text-left\">Acciones\u003C\u002Fth>\n      \u003C\u002Ftr>\n    \u003C\u002Fthead>\n    \u003Ctbody>\n      \u003Ctr v-for=\"user in rows\" :key=\"user.id\">\n        \u003Ctd>{{ user.name }}\u003C\u002Ftd>\n        \u003Ctd>{{ user.role }}\u003C\u002Ftd>\n        \u003Ctd>\n          \u003Cslot name=\"actions\" :user=\"user\">\n            \u003Cbutton type=\"button\">Ver perfil\u003C\u002Fbutton>\n          \u003C\u002Fslot>\n        \u003C\u002Ftd>\n      \u003C\u002Ftr>\n    \u003C\u002Ftbody>\n  \u003C\u002Ftable>\n\u003C\u002Ftemplate>\n",[22,28151,28152,28160,28168,28173,28178,28183,28192,28196,28200,28204,28212,28216,28224,28238,28246,28254,28272,28290,28308,28316,28324,28332,28352,28364,28376,28384,28404,28422,28430,28438,28446,28454,28462],{"__ignoreMap":80},[84,28153,28154,28156,28158],{"class":86,"line":87},[84,28155,91],{"class":90},[84,28157,95],{"class":94},[84,28159,102],{"class":90},[84,28161,28162,28164,28166],{"class":86,"line":105},[84,28163,418],{"class":108},[84,28165,1870],{"class":108},[84,28167,175],{"class":90},[84,28169,28170],{"class":86,"line":122},[84,28171,28172],{"class":90},"  props: {\n",[84,28174,28175],{"class":86,"line":129},[84,28176,28177],{"class":90},"    rows: {\n",[84,28179,28180],{"class":86,"line":154},[84,28181,28182],{"class":90},"      type: Array,\n",[84,28184,28185,28188,28190],{"class":86,"line":159},[84,28186,28187],{"class":90},"      required: ",[84,28189,2938],{"class":135},[84,28191,1887],{"class":90},[84,28193,28194],{"class":86,"line":178},[84,28195,7783],{"class":90},[84,28197,28198],{"class":86,"line":190},[84,28199,1941],{"class":90},[84,28201,28202],{"class":86,"line":196},[84,28203,18973],{"class":90},[84,28205,28206,28208,28210],{"class":86,"line":201},[84,28207,274],{"class":90},[84,28209,95],{"class":94},[84,28211,102],{"class":90},[84,28213,28214],{"class":86,"line":217},[84,28215,126],{"emptyLinePlaceholder":125},[84,28217,28218,28220,28222],{"class":86,"line":227},[84,28219,91],{"class":90},[84,28221,291],{"class":94},[84,28223,102],{"class":90},[84,28225,28226,28228,28230,28232,28234,28236],{"class":86,"line":232},[84,28227,299],{"class":90},[84,28229,6160],{"class":94},[84,28231,1629],{"class":98},[84,28233,184],{"class":90},[84,28235,27638],{"class":118},[84,28237,102],{"class":90},[84,28239,28240,28242,28244],{"class":86,"line":237},[84,28241,1642],{"class":90},[84,28243,6163],{"class":94},[84,28245,102],{"class":90},[84,28247,28248,28250,28252],{"class":86,"line":253},[84,28249,1691],{"class":90},[84,28251,6166],{"class":94},[84,28253,102],{"class":90},[84,28255,28256,28258,28260,28262,28264,28266,28268,28270],{"class":86,"line":266},[84,28257,27377],{"class":90},[84,28259,6169],{"class":94},[84,28261,1629],{"class":98},[84,28263,184],{"class":90},[84,28265,27669],{"class":118},[84,28267,27672],{"class":90},[84,28269,6169],{"class":94},[84,28271,102],{"class":90},[84,28273,28274,28276,28278,28280,28282,28284,28286,28288],{"class":86,"line":271},[84,28275,27377],{"class":90},[84,28277,6169],{"class":94},[84,28279,1629],{"class":98},[84,28281,184],{"class":90},[84,28283,27669],{"class":118},[84,28285,27691],{"class":90},[84,28287,6169],{"class":94},[84,28289,102],{"class":90},[84,28291,28292,28294,28296,28298,28300,28302,28304,28306],{"class":86,"line":281},[84,28293,27377],{"class":90},[84,28295,6169],{"class":94},[84,28297,1629],{"class":98},[84,28299,184],{"class":90},[84,28301,27669],{"class":118},[84,28303,27710],{"class":90},[84,28305,6169],{"class":94},[84,28307,102],{"class":90},[84,28309,28310,28312,28314],{"class":86,"line":286},[84,28311,4952],{"class":90},[84,28313,6166],{"class":94},[84,28315,102],{"class":90},[84,28317,28318,28320,28322],{"class":86,"line":296},[84,28319,1734],{"class":90},[84,28321,6163],{"class":94},[84,28323,102],{"class":90},[84,28325,28326,28328,28330],{"class":86,"line":315},[84,28327,1642],{"class":90},[84,28329,6182],{"class":94},[84,28331,102],{"class":90},[84,28333,28334,28336,28338,28340,28342,28344,28346,28348,28350],{"class":86,"line":321},[84,28335,1691],{"class":90},[84,28337,6166],{"class":94},[84,28339,13525],{"class":98},[84,28341,184],{"class":90},[84,28343,27751],{"class":118},[84,28345,5092],{"class":98},[84,28347,184],{"class":90},[84,28349,13537],{"class":118},[84,28351,102],{"class":90},[84,28353,28354,28356,28358,28360,28362],{"class":86,"line":331},[84,28355,27377],{"class":90},[84,28357,6187],{"class":94},[84,28359,23469],{"class":90},[84,28361,6187],{"class":94},[84,28363,102],{"class":90},[84,28365,28366,28368,28370,28372,28374],{"class":86,"line":336},[84,28367,27377],{"class":90},[84,28369,6187],{"class":94},[84,28371,27780],{"class":90},[84,28373,6187],{"class":94},[84,28375,102],{"class":90},[84,28377,28378,28380,28382],{"class":86,"line":354},[84,28379,27377],{"class":90},[84,28381,6187],{"class":94},[84,28383,102],{"class":90},[84,28385,28386,28388,28390,28392,28394,28396,28398,28400,28402],{"class":86,"line":360},[84,28387,27387],{"class":90},[84,28389,26638],{"class":94},[84,28391,27212],{"class":98},[84,28393,184],{"class":90},[84,28395,27805],{"class":118},[84,28397,27808],{"class":98},[84,28399,184],{"class":90},[84,28401,22227],{"class":118},[84,28403,102],{"class":90},[84,28405,28406,28408,28410,28412,28414,28416,28418,28420],{"class":86,"line":369},[84,28407,27819],{"class":90},[84,28409,302],{"class":94},[84,28411,5046],{"class":98},[84,28413,184],{"class":90},[84,28415,5051],{"class":118},[84,28417,27830],{"class":90},[84,28419,302],{"class":94},[84,28421,102],{"class":90},[84,28423,28424,28426,28428],{"class":86,"line":1453},[84,28425,27416],{"class":90},[84,28427,26638],{"class":94},[84,28429,102],{"class":90},[84,28431,28432,28434,28436],{"class":86,"line":1462},[84,28433,27425],{"class":90},[84,28435,6187],{"class":94},[84,28437,102],{"class":90},[84,28439,28440,28442,28444],{"class":86,"line":1484},[84,28441,4952],{"class":90},[84,28443,6166],{"class":94},[84,28445,102],{"class":90},[84,28447,28448,28450,28452],{"class":86,"line":1489},[84,28449,1734],{"class":90},[84,28451,6182],{"class":94},[84,28453,102],{"class":90},[84,28455,28456,28458,28460],{"class":86,"line":1495},[84,28457,324],{"class":90},[84,28459,6160],{"class":94},[84,28461,102],{"class":90},[84,28463,28464,28466,28468],{"class":86,"line":1500},[84,28465,274],{"class":90},[84,28467,291],{"class":94},[84,28469,102],{"class":90},[74,28471,28473],{"className":76,"code":28472,"filename":27886,"language":79,"meta":80,"style":80},"\u003Cscript>\nimport DataTable from \".\u002FDataTable.vue\";\n\nexport default {\n  components: { DataTable },\n  data() {\n    return {\n      users: [\n        { id: 1, name: \"Ana\", role: \"Admin\", active: true },\n        { id: 2, name: \"Luis\", role: \"Editor\", active: false },\n      ],\n    };\n  },\n  methods: {\n    toggleStatus(user) {\n      user.active = !user.active;\n    },\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003CDataTable :rows=\"users\">\n    \u003Ctemplate #actions=\"{ user }\">\n      \u003Cbutton type=\"button\" @click=\"toggleStatus(user)\">\n        {{ user.active ? \"Desactivar\" : \"Activar\" }}\n      \u003C\u002Fbutton>\n    \u003C\u002Ftemplate>\n  \u003C\u002FDataTable>\n\u003C\u002Ftemplate>\n",[22,28474,28475,28483,28495,28499,28507,28512,28518,28524,28528,28548,28568,28572,28576,28580,28584,28595,28606,28610,28614,28618,28626,28630,28638,28652,28672,28692,28696,28704,28712,28720],{"__ignoreMap":80},[84,28476,28477,28479,28481],{"class":86,"line":87},[84,28478,91],{"class":90},[84,28480,95],{"class":94},[84,28482,102],{"class":90},[84,28484,28485,28487,28489,28491,28493],{"class":86,"line":105},[84,28486,109],{"class":108},[84,28488,27917],{"class":90},[84,28490,115],{"class":108},[84,28492,27922],{"class":118},[84,28494,18869],{"class":90},[84,28496,28497],{"class":86,"line":122},[84,28498,126],{"emptyLinePlaceholder":125},[84,28500,28501,28503,28505],{"class":86,"line":129},[84,28502,418],{"class":108},[84,28504,1870],{"class":108},[84,28506,175],{"class":90},[84,28508,28509],{"class":86,"line":154},[84,28510,28511],{"class":90},"  components: { DataTable },\n",[84,28513,28514,28516],{"class":86,"line":159},[84,28515,1896],{"class":98},[84,28517,1307],{"class":90},[84,28519,28520,28522],{"class":86,"line":178},[84,28521,1903],{"class":108},[84,28523,175],{"class":90},[84,28525,28526],{"class":86,"line":190},[84,28527,23597],{"class":90},[84,28529,28530,28532,28534,28536,28538,28540,28542,28544,28546],{"class":86,"line":196},[84,28531,3449],{"class":90},[84,28533,2862],{"class":135},[84,28535,23323],{"class":90},[84,28537,18308],{"class":118},[84,28539,27953],{"class":90},[84,28541,27956],{"class":118},[84,28543,27959],{"class":90},[84,28545,2938],{"class":135},[84,28547,2921],{"class":90},[84,28549,28550,28552,28554,28556,28558,28560,28562,28564,28566],{"class":86,"line":201},[84,28551,3449],{"class":90},[84,28553,2928],{"class":135},[84,28555,23323],{"class":90},[84,28557,23349],{"class":118},[84,28559,27953],{"class":90},[84,28561,27978],{"class":118},[84,28563,27959],{"class":90},[84,28565,148],{"class":135},[84,28567,2921],{"class":90},[84,28569,28570],{"class":86,"line":217},[84,28571,10927],{"class":90},[84,28573,28574],{"class":86,"line":227},[84,28575,19195],{"class":90},[84,28577,28578],{"class":86,"line":232},[84,28579,1941],{"class":90},[84,28581,28582],{"class":86,"line":237},[84,28583,1950],{"class":90},[84,28585,28586,28589,28591,28593],{"class":86,"line":253},[84,28587,28588],{"class":98},"    toggleStatus",[84,28590,145],{"class":90},[84,28592,28004],{"class":429},[84,28594,438],{"class":90},[84,28596,28597,28600,28602,28604],{"class":86,"line":266},[84,28598,28599],{"class":90},"      user.active ",[84,28601,184],{"class":108},[84,28603,260],{"class":108},[84,28605,28018],{"class":90},[84,28607,28608],{"class":86,"line":271},[84,28609,7783],{"class":90},[84,28611,28612],{"class":86,"line":281},[84,28613,1941],{"class":90},[84,28615,28616],{"class":86,"line":286},[84,28617,18973],{"class":90},[84,28619,28620,28622,28624],{"class":86,"line":296},[84,28621,274],{"class":90},[84,28623,95],{"class":94},[84,28625,102],{"class":90},[84,28627,28628],{"class":86,"line":315},[84,28629,126],{"emptyLinePlaceholder":125},[84,28631,28632,28634,28636],{"class":86,"line":321},[84,28633,91],{"class":90},[84,28635,291],{"class":94},[84,28637,102],{"class":90},[84,28639,28640,28642,28644,28646,28648,28650],{"class":86,"line":331},[84,28641,299],{"class":90},[84,28643,26967],{"class":94},[84,28645,28051],{"class":98},[84,28647,184],{"class":90},[84,28649,28056],{"class":118},[84,28651,102],{"class":90},[84,28653,28654,28656,28658,28660,28662,28664,28666,28668,28670],{"class":86,"line":336},[84,28655,1642],{"class":90},[84,28657,291],{"class":94},[84,28659,28067],{"class":90},[84,28661,28070],{"class":98},[84,28663,184],{"class":90},[84,28665,1678],{"class":118},[84,28667,28077],{"class":90},[84,28669,1678],{"class":118},[84,28671,102],{"class":90},[84,28673,28674,28676,28678,28680,28682,28684,28686,28688,28690],{"class":86,"line":354},[84,28675,1691],{"class":90},[84,28677,302],{"class":94},[84,28679,5046],{"class":98},[84,28681,184],{"class":90},[84,28683,5051],{"class":118},[84,28685,305],{"class":98},[84,28687,184],{"class":90},[84,28689,28100],{"class":118},[84,28691,102],{"class":90},[84,28693,28694],{"class":86,"line":360},[84,28695,28107],{"class":90},[84,28697,28698,28700,28702],{"class":86,"line":369},[84,28699,4952],{"class":90},[84,28701,302],{"class":94},[84,28703,102],{"class":90},[84,28705,28706,28708,28710],{"class":86,"line":1453},[84,28707,1734],{"class":90},[84,28709,291],{"class":94},[84,28711,102],{"class":90},[84,28713,28714,28716,28718],{"class":86,"line":1462},[84,28715,324],{"class":90},[84,28717,26967],{"class":94},[84,28719,102],{"class":90},[84,28721,28722,28724,28726],{"class":86,"line":1484},[84,28723,274],{"class":90},[84,28725,291],{"class":94},[84,28727,102],{"class":90},[34,28729,2406],{"id":2405},[737,28731,28732,28737,28740,28747,28750,28753],{},[740,28733,28734,28736],{},[22,28735,26560],{}," transforma componentes rígidos en piezas reutilizables y expresivas.",[740,28738,28739],{},"Usa el slot por defecto para el contenido principal.",[740,28741,28742,28743,754,28745,2599],{},"Usa slots nombrados para estructura (",[22,28744,4915],{},[22,28746,27272],{},[740,28748,28749],{},"Usa scoped slots cuando el hijo deba compartir datos y el padre controlar el render.",[740,28751,28752],{},"Define fallback cuando tenga sentido para evitar huecos vacíos.",[740,28754,28755],{},"Mantén la API clara: props para configuración, slots para contenido y emits para eventos.",[835,28757,28758],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .s7hpK, html code.shiki .s7hpK{--shiki-default:#B31D28;--shiki-default-font-style:italic;--shiki-dark:#FDAEB7;--shiki-dark-font-style:italic}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 .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":80,"searchDepth":105,"depth":105,"links":28760},[28761,28762,28763,28764,28765,28772,28779],{"id":21333,"depth":105,"text":21334},{"id":25349,"depth":105,"text":25350},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":783,"depth":105,"text":784,"children":28766},[28767,28769,28770,28771],{"id":26844,"depth":122,"text":28768},"1) Usar v-slot en un elemento que no es componente o \u003Ctemplate>",{"id":26944,"depth":122,"text":26945},{"id":27012,"depth":122,"text":27013},{"id":27046,"depth":122,"text":27047},{"id":2735,"depth":105,"text":2736,"children":28773},[28774,28775,28776,28777],{"id":27084,"depth":122,"text":27085},{"id":27163,"depth":122,"text":27164},{"id":27319,"depth":122,"text":27320},{"id":27464,"depth":122,"text":28778},"4) v-slot con argumento dinámico",{"id":2405,"depth":105,"text":2406},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1771508914\u002Fdirectives-vue-v-slot-guide_wr2iyy.png","Portada del artículo Directivas en Vue: v-slot","2026-02-19","Aprende a dominar v-slot en Vue 3: slots por defecto, nombrados y con props (scoped slots), con ejemplos claros en Composition API y Options API.",{"updatedAt":28785,"coverCaption":28786,"author":868,"keywords":28787},"2026-02-19T08:00:00-05:00","Usa v-slot para construir componentes más flexibles y reutilizables.",[870,26560,28788,26809,28789,873,1782],"slots","componentes reutilizables","\u002Fblog\u002Fdirectives-vue-v-slot-guide.es",[28792],{"headline":28793,"author":28794,"datePublished":28785,"@type":880},"Directivas en Vue: v-slot con ejemplos claros y prácticos",{"name":868,"@type":879},{"title":26552,"description":28783},"blog\u002Fdirectives-vue-v-slot-guide.es",[28798,28799,28801,28802],{"tag":21297,"color":21298},{"tag":27031,"color":28800},"#8E44AD",{"tag":888,"color":889},{"tag":2462,"color":2463},"DxshI1c7MLWMpiJg_QZh4QLABHouxeRnejywUpaJAOU",{"id":28805,"title":28806,"body":28807,"cover":31608,"coverAlt":31609,"date":31610,"description":31611,"draft":852,"extension":853,"lab":882,"locale":864,"meta":31612,"navigation":125,"path":31617,"schemaOrg":31618,"seo":31622,"series":21291,"seriesDescription":21292,"seriesOrder":159,"seriesTitle":21293,"slug":882,"stem":31623,"tags":31624,"__hash__":31631},"blog\u002Fblog\u002Fdirectives-vue-v-model-guide.es.md","Directivas en Vue: v-model",{"type":8,"value":28808,"toc":31583},[28809,28814,28819,28821,28827,28832,28850,28852,28857,28861,28880,28902,28906,28909,28932,28935,28952,28962,28964,28969,28971,28995,28997,29001,29018,29020,29024,29026,29089,29098,29103,29110,29112,29142,29149,29152,29177,29181,29184,29206,29210,29216,29218,29222,29350,29480,29487,29631,29767,29771,29898,30028,30032,30034,30043,30186,30779,30781,30788,30970,31539,31541,31546,31549,31551,31581],[11,28810,21314,28812],{"id":28811},"directivas-en-vue-v-model",[22,28813,18689],{},[15,28815,28816,28818],{},[22,28817,18689],{}," reduce fricción en formularios porque sincroniza la UI y el estado con una sola declaración. Bien utilizado, hace que tus componentes sean más legibles y consistentes; mal aplicado, puede ocultar flujos de datos confusos y bugs sutiles.",[34,28820,21334],{"id":21333},[15,28822,28823,28824,28826],{},"En interfaces reales, gran parte de la experiencia depende de formularios y filtros.\n",[22,28825,18689],{}," te permite declarar la sincronización entre vista y estado sin manipular el DOM manualmente, manteniendo el código más predecible y fácil de mantener.",[15,28828,12736,28829,28831],{},[22,28830,18689],{}," puedes:",[737,28833,28834,28844,28847],{},[740,28835,28836,28837,28840,28841,764],{},"Evitar boilerplate repetitivo de ",[22,28838,28839],{},":value"," + ",[22,28842,28843],{},"@input",[740,28845,28846],{},"Mantener alineado lo que ve el usuario con el estado reactivo.",[740,28848,28849],{},"Estandarizar la API de componentes de formulario reutilizables.",[34,28851,947],{"id":946},[15,28853,21244,28854,28856],{},[22,28855,18689],{}," es azúcar sintáctica para enlazar un valor y escuchar su actualización.",[1074,28858,28860],{"id":28859},"en-elementos-nativos","En elementos nativos",[737,28862,28863,28869],{},[740,28864,28865,28868],{},[22,28866,28867],{},"v-model=\"email\""," equivale a enlazar el valor y escuchar el evento correspondiente.",[740,28870,28871,28872,754,28874,754,28877,2599],{},"Vue adapta automáticamente la prop y el evento según el tipo de control (",[22,28873,18759],{},[22,28875,28876],{},"change",[22,28878,28879],{},"checkbox",[15,28881,28882,28883,28886,28887,28840,28889,28891,28892,28895,28896,28899,28900,764],{},"Por ejemplo, en un ",[22,28884,28885],{},"\u003Cinput type=\"text\">",", se traduce a ",[22,28888,28839],{},[22,28890,28843],{},".\nEn un ",[22,28893,28894],{},"\u003Cinput type=\"checkbox\">",", enlaza ",[22,28897,28898],{},"checked"," y escucha ",[22,28901,28876],{},[1074,28903,28905],{"id":28904},"en-componentes","En componentes",[15,28907,28908],{},"En Vue 3:",[737,28910,28911,28917,28923],{},[740,28912,28913,28914,764],{},"Por defecto usa la prop ",[22,28915,28916],{},"modelValue",[740,28918,28919,28920,764],{},"Espera el evento ",[22,28921,28922],{},"update:modelValue",[740,28924,28925,28926,754,28929,764],{},"Puedes usar argumentos para modelos adicionales: ",[22,28927,28928],{},"v-model:title",[22,28930,28931],{},"v-model:filters",[15,28933,28934],{},"También soporta modificadores como:",[737,28936,28937,28942,28947],{},[740,28938,28939],{},[22,28940,28941],{},".trim",[740,28943,28944],{},[22,28945,28946],{},".number",[740,28948,28949],{},[22,28950,28951],{},".lazy",[15,28953,28954,28955,28958,28959,28961],{},"Desde Vue 3.3+, puedes usar ",[22,28956,28957],{},"defineModel()"," en ",[22,28960,19966],{}," para simplificar la definición del contrato del modelo en componentes.",[34,28963,1013],{"id":1012},[15,28965,21486,28966,28968],{},[22,28967,18689],{}," cuando el objetivo principal sea sincronizar datos de entrada con el estado de la aplicación.",[15,28970,4083],{},[737,28972,28973,28976,28979,28992],{},[740,28974,28975],{},"Formularios de registro, login o perfil.",[740,28977,28978],{},"Filtros de búsqueda en tiempo real.",[740,28980,28981,28982,754,28985,754,28988,28991],{},"Componentes de UI reutilizables (",[22,28983,28984],{},"TextInput",[22,28986,28987],{},"Toggle",[22,28989,28990],{},"Select",") con contrato consistente.",[740,28993,28994],{},"Configuraciones rápidas de interfaz (switches, sliders, preferencias).",[34,28996,1040],{"id":1039},[15,28998,8425,28999,8430],{},[22,29000,18689],{},[737,29002,29003,29009,29012,29015],{},[740,29004,29005,29006,29008],{},"El dato es de solo lectura o derivado (",[22,29007,2523],{}," sin setter).",[740,29010,29011],{},"Necesitas trazabilidad estricta de cada cambio por reglas de dominio complejas.",[740,29013,29014],{},"El procesamiento por pulsación es costoso y requiere un pipeline explícito (debounce, throttle, validaciones pesadas).",[740,29016,29017],{},"Quieres mantener un flujo explícito de eventos de negocio, no solo de UI.",[34,29019,784],{"id":783},[1074,29021,29023],{"id":29022},"_1-mutar-props-directamente-en-el-hijo","1) Mutar props directamente en el hijo",[15,29025,25589],{},[74,29027,29030],{"className":76,"code":29028,"filename":29029,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nconst props = defineProps\u003C{ modelValue: string }>()\nprops.modelValue = \"nuevo valor\"\n\u003C\u002Fscript>\n","Evitar",[22,29031,29032,29048,29071,29081],{"__ignoreMap":80},[84,29033,29034,29036,29038,29040,29042,29044,29046],{"class":86,"line":87},[84,29035,91],{"class":90},[84,29037,95],{"class":94},[84,29039,99],{"class":98},[84,29041,1161],{"class":98},[84,29043,184],{"class":90},[84,29045,1166],{"class":118},[84,29047,102],{"class":90},[84,29049,29050,29052,29055,29057,29060,29062,29064,29066,29068],{"class":86,"line":105},[84,29051,132],{"class":108},[84,29053,29054],{"class":135}," props",[84,29056,139],{"class":108},[84,29058,29059],{"class":98}," defineProps",[84,29061,22077],{"class":90},[84,29063,28916],{"class":429},[84,29065,1203],{"class":108},[84,29067,22085],{"class":135},[84,29069,29070],{"class":90}," }>()\n",[84,29072,29073,29076,29078],{"class":86,"line":122},[84,29074,29075],{"class":90},"props.modelValue ",[84,29077,184],{"class":108},[84,29079,29080],{"class":118}," \"nuevo valor\"\n",[84,29082,29083,29085,29087],{"class":86,"line":129},[84,29084,274],{"class":90},[84,29086,95],{"class":94},[84,29088,102],{"class":90},[15,29090,29091,29092,29094,29095,764],{},"Correcto: emite ",[22,29093,28922],{}," o usa ",[22,29096,29097],{},"defineModel",[823,29099,29100],{},[15,29101,29102],{},"Las props son de solo lectura. Mutarlas rompe el flujo unidireccional de datos.",[1074,29104,29106,29107,29109],{"id":29105},"_2-enlazar-v-model-a-expresiones-no-escribibles","2) Enlazar ",[22,29108,18689],{}," a expresiones no escribibles",[15,29111,25589],{},[74,29113,29115],{"className":76,"code":29114,"filename":29029,"language":79,"meta":80,"style":80},"\u003Cinput v-model=\"user.name.toUpperCase()\" \u002F>\n",[22,29116,29117],{"__ignoreMap":80},[84,29118,29119,29121,29123,29125,29127,29129,29132,29135,29138,29140],{"class":86,"line":87},[84,29120,91],{"class":90},[84,29122,18759],{"class":94},[84,29124,24454],{"class":98},[84,29126,184],{"class":90},[84,29128,1678],{"class":118},[84,29130,29131],{"class":90},"user.name.",[84,29133,29134],{"class":98},"toUpperCase",[84,29136,29137],{"class":90},"()",[84,29139,1678],{"class":118},[84,29141,5100],{"class":90},[823,29143,29144],{},[15,29145,29146,29148],{},[22,29147,18689],{}," requiere una referencia escribible. Una expresión derivada no tiene setter.",[15,29150,29151],{},"Correcto:",[74,29153,29156],{"className":76,"code":29154,"filename":29155,"language":79,"meta":80,"style":80},"\u003Cinput v-model=\"user.name\" \u002F>\n","Recomendado",[22,29157,29158],{"__ignoreMap":80},[84,29159,29160,29162,29164,29166,29168,29170,29173,29175],{"class":86,"line":87},[84,29161,91],{"class":90},[84,29163,18759],{"class":94},[84,29165,24454],{"class":98},[84,29167,184],{"class":90},[84,29169,1678],{"class":118},[84,29171,29172],{"class":90},"user.name",[84,29174,1678],{"class":118},[84,29176,5100],{"class":90},[1074,29178,29180],{"id":29179},"_3-no-usar-modificadores-donde-sí-aportan-valor","3) No usar modificadores donde sí aportan valor",[15,29182,29183],{},"Ejemplo:",[737,29185,29186,29191,29201],{},[740,29187,16664,29188,29190],{},[22,29189,28941],{},", guardas espacios innecesarios.",[740,29192,16664,29193,29195,29196,29198,29199,764],{},[22,29194,28946],{},", recibes ",[22,29197,6521],{}," cuando esperabas ",[22,29200,8732],{},[740,29202,16664,29203,29205],{},[22,29204,28951],{},", actualizas en cada pulsación cuando solo necesitabas al perder el foco.",[1074,29207,29209],{"id":29208},"_4-meter-demasiada-lógica-en-el-setter-del-modelo","4) Meter demasiada lógica en el setter del modelo",[15,29211,29212,29213,29215],{},"Mantén el flujo de ",[22,29214,18689],{}," simple y mueve reglas complejas a funciones o composables.\nEl modelo debe sincronizar estado; la lógica de negocio no debería vivir en el setter.",[11,29217,2736],{"id":2735},[34,29219,29221],{"id":29220},"_1-input-de-texto-con-saneamiento-básico","1) Input de texto con saneamiento básico",[74,29223,29226],{"className":76,"code":29224,"filename":873,"highlights":29225,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\nconst fullName = ref(\"\");\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Clabel>\n    Nombre completo\n    \u003Cinput v-model.trim=\"fullName\" type=\"text\" \u002F>\n  \u003C\u002Flabel>\n\u003C\u002Ftemplate>\n",[201],[22,29227,29228,29244,29256,29260,29277,29285,29289,29297,29305,29310,29334,29342],{"__ignoreMap":80},[84,29229,29230,29232,29234,29236,29238,29240,29242],{"class":86,"line":87},[84,29231,91],{"class":90},[84,29233,95],{"class":94},[84,29235,99],{"class":98},[84,29237,1161],{"class":98},[84,29239,184],{"class":90},[84,29241,1166],{"class":118},[84,29243,102],{"class":90},[84,29245,29246,29248,29250,29252,29254],{"class":86,"line":105},[84,29247,109],{"class":108},[84,29249,112],{"class":90},[84,29251,115],{"class":108},[84,29253,18866],{"class":118},[84,29255,18869],{"class":90},[84,29257,29258],{"class":86,"line":122},[84,29259,126],{"emptyLinePlaceholder":125},[84,29261,29262,29264,29267,29269,29271,29273,29275],{"class":86,"line":129},[84,29263,132],{"class":108},[84,29265,29266],{"class":135}," fullName",[84,29268,139],{"class":108},[84,29270,142],{"class":98},[84,29272,145],{"class":90},[84,29274,26013],{"class":118},[84,29276,18994],{"class":90},[84,29278,29279,29281,29283],{"class":86,"line":154},[84,29280,274],{"class":90},[84,29282,95],{"class":94},[84,29284,102],{"class":90},[84,29286,29287],{"class":86,"line":159},[84,29288,126],{"emptyLinePlaceholder":125},[84,29290,29291,29293,29295],{"class":86,"line":178},[84,29292,91],{"class":90},[84,29294,291],{"class":94},[84,29296,102],{"class":90},[84,29298,29299,29301,29303],{"class":86,"line":190},[84,29300,299],{"class":90},[84,29302,4653],{"class":94},[84,29304,102],{"class":90},[84,29306,29307],{"class":86,"line":196},[84,29308,29309],{"class":90},"    Nombre completo\n",[84,29311,29313,29315,29317,29320,29322,29325,29327,29329,29332],{"class":29312,"line":201},[86,10151],[84,29314,1642],{"class":90},[84,29316,18759],{"class":94},[84,29318,29319],{"class":98}," v-model.trim",[84,29321,184],{"class":90},[84,29323,29324],{"class":118},"\"fullName\"",[84,29326,5046],{"class":98},[84,29328,184],{"class":90},[84,29330,29331],{"class":118},"\"text\"",[84,29333,5100],{"class":90},[84,29335,29336,29338,29340],{"class":86,"line":217},[84,29337,324],{"class":90},[84,29339,4653],{"class":94},[84,29341,102],{"class":90},[84,29343,29344,29346,29348],{"class":86,"line":227},[84,29345,274],{"class":90},[84,29347,291],{"class":94},[84,29349,102],{"class":90},[74,29351,29354],{"className":76,"code":29352,"filename":1782,"highlights":29353,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      fullName: \"\",\n    };\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Clabel>\n    Nombre completo\n    \u003Cinput v-model.trim=\"fullName\" type=\"text\" \u002F>\n  \u003C\u002Flabel>\n\u003C\u002Ftemplate>\n",[237],[22,29355,29356,29370,29378,29384,29390,29399,29403,29407,29411,29419,29423,29431,29439,29443,29464,29472],{"__ignoreMap":80},[84,29357,29358,29360,29362,29364,29366,29368],{"class":86,"line":87},[84,29359,91],{"class":90},[84,29361,95],{"class":94},[84,29363,1161],{"class":98},[84,29365,184],{"class":90},[84,29367,1166],{"class":118},[84,29369,102],{"class":90},[84,29371,29372,29374,29376],{"class":86,"line":105},[84,29373,418],{"class":108},[84,29375,1870],{"class":108},[84,29377,175],{"class":90},[84,29379,29380,29382],{"class":86,"line":122},[84,29381,1896],{"class":98},[84,29383,1307],{"class":90},[84,29385,29386,29388],{"class":86,"line":129},[84,29387,1903],{"class":108},[84,29389,175],{"class":90},[84,29391,29392,29395,29397],{"class":86,"line":154},[84,29393,29394],{"class":90},"      fullName: ",[84,29396,26013],{"class":118},[84,29398,1887],{"class":90},[84,29400,29401],{"class":86,"line":159},[84,29402,19195],{"class":90},[84,29404,29405],{"class":86,"line":178},[84,29406,1941],{"class":90},[84,29408,29409],{"class":86,"line":190},[84,29410,18973],{"class":90},[84,29412,29413,29415,29417],{"class":86,"line":196},[84,29414,274],{"class":90},[84,29416,95],{"class":94},[84,29418,102],{"class":90},[84,29420,29421],{"class":86,"line":201},[84,29422,126],{"emptyLinePlaceholder":125},[84,29424,29425,29427,29429],{"class":86,"line":217},[84,29426,91],{"class":90},[84,29428,291],{"class":94},[84,29430,102],{"class":90},[84,29432,29433,29435,29437],{"class":86,"line":227},[84,29434,299],{"class":90},[84,29436,4653],{"class":94},[84,29438,102],{"class":90},[84,29440,29441],{"class":86,"line":232},[84,29442,29309],{"class":90},[84,29444,29446,29448,29450,29452,29454,29456,29458,29460,29462],{"class":29445,"line":237},[86,10151],[84,29447,1642],{"class":90},[84,29449,18759],{"class":94},[84,29451,29319],{"class":98},[84,29453,184],{"class":90},[84,29455,29324],{"class":118},[84,29457,5046],{"class":98},[84,29459,184],{"class":90},[84,29461,29331],{"class":118},[84,29463,5100],{"class":90},[84,29465,29466,29468,29470],{"class":86,"line":253},[84,29467,324],{"class":90},[84,29469,4653],{"class":94},[84,29471,102],{"class":90},[84,29473,29474,29476,29478],{"class":86,"line":266},[84,29475,274],{"class":90},[84,29477,291],{"class":94},[84,29479,102],{"class":90},[34,29481,29483,29484],{"id":29482},"_2-input-numérico-con-v-modelnumber","2) Input numérico con ",[22,29485,29486],{},"v-model.number",[74,29488,29491],{"className":76,"code":29489,"filename":873,"highlights":29490,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\nconst age = ref\u003Cnumber | null>(null);\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Clabel>\n    Edad\n    \u003Cinput v-model.number=\"age\" type=\"number\" min=\"0\" \u002F>\n  \u003C\u002Flabel>\n\u003C\u002Ftemplate>\n",[201],[22,29492,29493,29509,29521,29525,29550,29558,29562,29570,29578,29583,29615,29623],{"__ignoreMap":80},[84,29494,29495,29497,29499,29501,29503,29505,29507],{"class":86,"line":87},[84,29496,91],{"class":90},[84,29498,95],{"class":94},[84,29500,99],{"class":98},[84,29502,1161],{"class":98},[84,29504,184],{"class":90},[84,29506,1166],{"class":118},[84,29508,102],{"class":90},[84,29510,29511,29513,29515,29517,29519],{"class":86,"line":105},[84,29512,109],{"class":108},[84,29514,112],{"class":90},[84,29516,115],{"class":108},[84,29518,18866],{"class":118},[84,29520,18869],{"class":90},[84,29522,29523],{"class":86,"line":122},[84,29524,126],{"emptyLinePlaceholder":125},[84,29526,29527,29529,29532,29534,29536,29538,29540,29542,29544,29546,29548],{"class":86,"line":129},[84,29528,132],{"class":108},[84,29530,29531],{"class":135}," age",[84,29533,139],{"class":108},[84,29535,142],{"class":98},[84,29537,91],{"class":90},[84,29539,8732],{"class":135},[84,29541,1261],{"class":108},[84,29543,1264],{"class":135},[84,29545,1267],{"class":90},[84,29547,1270],{"class":135},[84,29549,18994],{"class":90},[84,29551,29552,29554,29556],{"class":86,"line":154},[84,29553,274],{"class":90},[84,29555,95],{"class":94},[84,29557,102],{"class":90},[84,29559,29560],{"class":86,"line":159},[84,29561,126],{"emptyLinePlaceholder":125},[84,29563,29564,29566,29568],{"class":86,"line":178},[84,29565,91],{"class":90},[84,29567,291],{"class":94},[84,29569,102],{"class":90},[84,29571,29572,29574,29576],{"class":86,"line":190},[84,29573,299],{"class":90},[84,29575,4653],{"class":94},[84,29577,102],{"class":90},[84,29579,29580],{"class":86,"line":196},[84,29581,29582],{"class":90},"    Edad\n",[84,29584,29586,29588,29590,29593,29595,29598,29600,29602,29605,29608,29610,29613],{"class":29585,"line":201},[86,10151],[84,29587,1642],{"class":90},[84,29589,18759],{"class":94},[84,29591,29592],{"class":98}," v-model.number",[84,29594,184],{"class":90},[84,29596,29597],{"class":118},"\"age\"",[84,29599,5046],{"class":98},[84,29601,184],{"class":90},[84,29603,29604],{"class":118},"\"number\"",[84,29606,29607],{"class":98}," min",[84,29609,184],{"class":90},[84,29611,29612],{"class":118},"\"0\"",[84,29614,5100],{"class":90},[84,29616,29617,29619,29621],{"class":86,"line":217},[84,29618,324],{"class":90},[84,29620,4653],{"class":94},[84,29622,102],{"class":90},[84,29624,29625,29627,29629],{"class":86,"line":227},[84,29626,274],{"class":90},[84,29628,291],{"class":94},[84,29630,102],{"class":90},[74,29632,29635],{"className":76,"code":29633,"filename":1782,"highlights":29634,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      age: null,\n    };\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Clabel>\n    Edad\n    \u003Cinput v-model.number=\"age\" type=\"number\" min=\"0\" \u002F>\n  \u003C\u002Flabel>\n\u003C\u002Ftemplate>\n",[237],[22,29636,29637,29651,29659,29665,29671,29680,29684,29688,29692,29700,29704,29712,29720,29724,29751,29759],{"__ignoreMap":80},[84,29638,29639,29641,29643,29645,29647,29649],{"class":86,"line":87},[84,29640,91],{"class":90},[84,29642,95],{"class":94},[84,29644,1161],{"class":98},[84,29646,184],{"class":90},[84,29648,1166],{"class":118},[84,29650,102],{"class":90},[84,29652,29653,29655,29657],{"class":86,"line":105},[84,29654,418],{"class":108},[84,29656,1870],{"class":108},[84,29658,175],{"class":90},[84,29660,29661,29663],{"class":86,"line":122},[84,29662,1896],{"class":98},[84,29664,1307],{"class":90},[84,29666,29667,29669],{"class":86,"line":129},[84,29668,1903],{"class":108},[84,29670,175],{"class":90},[84,29672,29673,29676,29678],{"class":86,"line":154},[84,29674,29675],{"class":90},"      age: ",[84,29677,1270],{"class":135},[84,29679,1887],{"class":90},[84,29681,29682],{"class":86,"line":159},[84,29683,19195],{"class":90},[84,29685,29686],{"class":86,"line":178},[84,29687,1941],{"class":90},[84,29689,29690],{"class":86,"line":190},[84,29691,18973],{"class":90},[84,29693,29694,29696,29698],{"class":86,"line":196},[84,29695,274],{"class":90},[84,29697,95],{"class":94},[84,29699,102],{"class":90},[84,29701,29702],{"class":86,"line":201},[84,29703,126],{"emptyLinePlaceholder":125},[84,29705,29706,29708,29710],{"class":86,"line":217},[84,29707,91],{"class":90},[84,29709,291],{"class":94},[84,29711,102],{"class":90},[84,29713,29714,29716,29718],{"class":86,"line":227},[84,29715,299],{"class":90},[84,29717,4653],{"class":94},[84,29719,102],{"class":90},[84,29721,29722],{"class":86,"line":232},[84,29723,29582],{"class":90},[84,29725,29727,29729,29731,29733,29735,29737,29739,29741,29743,29745,29747,29749],{"class":29726,"line":237},[86,10151],[84,29728,1642],{"class":90},[84,29730,18759],{"class":94},[84,29732,29592],{"class":98},[84,29734,184],{"class":90},[84,29736,29597],{"class":118},[84,29738,5046],{"class":98},[84,29740,184],{"class":90},[84,29742,29604],{"class":118},[84,29744,29607],{"class":98},[84,29746,184],{"class":90},[84,29748,29612],{"class":118},[84,29750,5100],{"class":90},[84,29752,29753,29755,29757],{"class":86,"line":253},[84,29754,324],{"class":90},[84,29756,4653],{"class":94},[84,29758,102],{"class":90},[84,29760,29761,29763,29765],{"class":86,"line":266},[84,29762,274],{"class":90},[84,29764,291],{"class":94},[84,29766,102],{"class":90},[34,29768,29770],{"id":29769},"_3-checkbox-para-estado-booleano","3) Checkbox para estado booleano",[74,29772,29775],{"className":76,"code":29773,"filename":873,"highlights":29774,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\nconst acceptedTerms = ref(false);\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Clabel>\n    \u003Cinput v-model=\"acceptedTerms\" type=\"checkbox\" \u002F>\n    Acepto términos y condiciones\n  \u003C\u002Flabel>\n\u003C\u002Ftemplate>\n",[196],[22,29776,29777,29793,29805,29809,29826,29834,29838,29846,29854,29877,29882,29890],{"__ignoreMap":80},[84,29778,29779,29781,29783,29785,29787,29789,29791],{"class":86,"line":87},[84,29780,91],{"class":90},[84,29782,95],{"class":94},[84,29784,99],{"class":98},[84,29786,1161],{"class":98},[84,29788,184],{"class":90},[84,29790,1166],{"class":118},[84,29792,102],{"class":90},[84,29794,29795,29797,29799,29801,29803],{"class":86,"line":105},[84,29796,109],{"class":108},[84,29798,112],{"class":90},[84,29800,115],{"class":108},[84,29802,18866],{"class":118},[84,29804,18869],{"class":90},[84,29806,29807],{"class":86,"line":122},[84,29808,126],{"emptyLinePlaceholder":125},[84,29810,29811,29813,29816,29818,29820,29822,29824],{"class":86,"line":129},[84,29812,132],{"class":108},[84,29814,29815],{"class":135}," acceptedTerms",[84,29817,139],{"class":108},[84,29819,142],{"class":98},[84,29821,145],{"class":90},[84,29823,148],{"class":135},[84,29825,18994],{"class":90},[84,29827,29828,29830,29832],{"class":86,"line":154},[84,29829,274],{"class":90},[84,29831,95],{"class":94},[84,29833,102],{"class":90},[84,29835,29836],{"class":86,"line":159},[84,29837,126],{"emptyLinePlaceholder":125},[84,29839,29840,29842,29844],{"class":86,"line":178},[84,29841,91],{"class":90},[84,29843,291],{"class":94},[84,29845,102],{"class":90},[84,29847,29848,29850,29852],{"class":86,"line":190},[84,29849,299],{"class":90},[84,29851,4653],{"class":94},[84,29853,102],{"class":90},[84,29855,29857,29859,29861,29863,29865,29868,29870,29872,29875],{"class":29856,"line":196},[86,10151],[84,29858,1642],{"class":90},[84,29860,18759],{"class":94},[84,29862,24454],{"class":98},[84,29864,184],{"class":90},[84,29866,29867],{"class":118},"\"acceptedTerms\"",[84,29869,5046],{"class":98},[84,29871,184],{"class":90},[84,29873,29874],{"class":118},"\"checkbox\"",[84,29876,5100],{"class":90},[84,29878,29879],{"class":86,"line":201},[84,29880,29881],{"class":90},"    Acepto términos y condiciones\n",[84,29883,29884,29886,29888],{"class":86,"line":217},[84,29885,324],{"class":90},[84,29887,4653],{"class":94},[84,29889,102],{"class":90},[84,29891,29892,29894,29896],{"class":86,"line":227},[84,29893,274],{"class":90},[84,29895,291],{"class":94},[84,29897,102],{"class":90},[74,29899,29902],{"className":76,"code":29900,"filename":1782,"highlights":29901,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      acceptedTerms: false,\n    };\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Clabel>\n    \u003Cinput v-model=\"acceptedTerms\" type=\"checkbox\" \u002F>\n    Acepto términos y condiciones\n  \u003C\u002Flabel>\n\u003C\u002Ftemplate>\n",[232],[22,29903,29904,29918,29926,29932,29938,29947,29951,29955,29959,29967,29971,29979,29987,30008,30012,30020],{"__ignoreMap":80},[84,29905,29906,29908,29910,29912,29914,29916],{"class":86,"line":87},[84,29907,91],{"class":90},[84,29909,95],{"class":94},[84,29911,1161],{"class":98},[84,29913,184],{"class":90},[84,29915,1166],{"class":118},[84,29917,102],{"class":90},[84,29919,29920,29922,29924],{"class":86,"line":105},[84,29921,418],{"class":108},[84,29923,1870],{"class":108},[84,29925,175],{"class":90},[84,29927,29928,29930],{"class":86,"line":122},[84,29929,1896],{"class":98},[84,29931,1307],{"class":90},[84,29933,29934,29936],{"class":86,"line":129},[84,29935,1903],{"class":108},[84,29937,175],{"class":90},[84,29939,29940,29943,29945],{"class":86,"line":154},[84,29941,29942],{"class":90},"      acceptedTerms: ",[84,29944,148],{"class":135},[84,29946,1887],{"class":90},[84,29948,29949],{"class":86,"line":159},[84,29950,19195],{"class":90},[84,29952,29953],{"class":86,"line":178},[84,29954,1941],{"class":90},[84,29956,29957],{"class":86,"line":190},[84,29958,18973],{"class":90},[84,29960,29961,29963,29965],{"class":86,"line":196},[84,29962,274],{"class":90},[84,29964,95],{"class":94},[84,29966,102],{"class":90},[84,29968,29969],{"class":86,"line":201},[84,29970,126],{"emptyLinePlaceholder":125},[84,29972,29973,29975,29977],{"class":86,"line":217},[84,29974,91],{"class":90},[84,29976,291],{"class":94},[84,29978,102],{"class":90},[84,29980,29981,29983,29985],{"class":86,"line":227},[84,29982,299],{"class":90},[84,29984,4653],{"class":94},[84,29986,102],{"class":90},[84,29988,29990,29992,29994,29996,29998,30000,30002,30004,30006],{"class":29989,"line":232},[86,10151],[84,29991,1642],{"class":90},[84,29993,18759],{"class":94},[84,29995,24454],{"class":98},[84,29997,184],{"class":90},[84,29999,29867],{"class":118},[84,30001,5046],{"class":98},[84,30003,184],{"class":90},[84,30005,29874],{"class":118},[84,30007,5100],{"class":90},[84,30009,30010],{"class":86,"line":237},[84,30011,29881],{"class":90},[84,30013,30014,30016,30018],{"class":86,"line":253},[84,30015,324],{"class":90},[84,30017,4653],{"class":94},[84,30019,102],{"class":90},[84,30021,30022,30024,30026],{"class":86,"line":266},[84,30023,274],{"class":90},[84,30025,291],{"class":94},[84,30027,102],{"class":90},[34,30029,30031],{"id":30030},"_4-ejemplos-completos","4) Ejemplos completos",[1074,30033,27553],{"id":27552},[15,30035,30036,30039,30040,30042],{},[22,30037,30038],{},"SearchInput"," reutilizable con ",[22,30041,29097],{}," + pantalla de filtros:",[74,30044,30048],{"className":76,"code":30045,"filename":30046,"highlights":30047,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nconst model = defineModel\u003Cstring>({ default: \"\" });\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Clabel class=\"field\">\n    Buscar\n    \u003Cinput\n      v-model.trim=\"model\"\n      type=\"text\"\n      placeholder=\"Escribe para filtrar...\"\n    \u002F>\n  \u003C\u002Flabel>\n\u003C\u002Ftemplate>\n","SearchInput.vue",[196],[22,30049,30050,30066,30090,30098,30102,30110,30125,30130,30136,30147,30156,30165,30170,30178],{"__ignoreMap":80},[84,30051,30052,30054,30056,30058,30060,30062,30064],{"class":86,"line":87},[84,30053,91],{"class":90},[84,30055,95],{"class":94},[84,30057,99],{"class":98},[84,30059,1161],{"class":98},[84,30061,184],{"class":90},[84,30063,1166],{"class":118},[84,30065,102],{"class":90},[84,30067,30068,30070,30073,30075,30078,30080,30082,30085,30087],{"class":86,"line":105},[84,30069,132],{"class":108},[84,30071,30072],{"class":135}," model",[84,30074,139],{"class":108},[84,30076,30077],{"class":98}," defineModel",[84,30079,91],{"class":90},[84,30081,6521],{"class":135},[84,30083,30084],{"class":90},">({ default: ",[84,30086,26013],{"class":118},[84,30088,30089],{"class":90}," });\n",[84,30091,30092,30094,30096],{"class":86,"line":122},[84,30093,274],{"class":90},[84,30095,95],{"class":94},[84,30097,102],{"class":90},[84,30099,30100],{"class":86,"line":129},[84,30101,126],{"emptyLinePlaceholder":125},[84,30103,30104,30106,30108],{"class":86,"line":154},[84,30105,91],{"class":90},[84,30107,291],{"class":94},[84,30109,102],{"class":90},[84,30111,30112,30114,30116,30118,30120,30123],{"class":86,"line":159},[84,30113,299],{"class":90},[84,30115,4653],{"class":94},[84,30117,1629],{"class":98},[84,30119,184],{"class":90},[84,30121,30122],{"class":118},"\"field\"",[84,30124,102],{"class":90},[84,30126,30127],{"class":86,"line":178},[84,30128,30129],{"class":90},"    Buscar\n",[84,30131,30132,30134],{"class":86,"line":190},[84,30133,1642],{"class":90},[84,30135,12295],{"class":94},[84,30137,30139,30142,30144],{"class":30138,"line":196},[86,10151],[84,30140,30141],{"class":98},"      v-model.trim",[84,30143,184],{"class":90},[84,30145,30146],{"class":118},"\"model\"\n",[84,30148,30149,30151,30153],{"class":86,"line":201},[84,30150,12309],{"class":98},[84,30152,184],{"class":90},[84,30154,30155],{"class":118},"\"text\"\n",[84,30157,30158,30160,30162],{"class":86,"line":217},[84,30159,12319],{"class":98},[84,30161,184],{"class":90},[84,30163,30164],{"class":118},"\"Escribe para filtrar...\"\n",[84,30166,30167],{"class":86,"line":227},[84,30168,30169],{"class":90},"    \u002F>\n",[84,30171,30172,30174,30176],{"class":86,"line":232},[84,30173,324],{"class":90},[84,30175,4653],{"class":94},[84,30177,102],{"class":90},[84,30179,30180,30182,30184],{"class":86,"line":237},[84,30181,274],{"class":90},[84,30183,291],{"class":94},[84,30185,102],{"class":90},[74,30187,30190],{"className":76,"code":30188,"filename":30189,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { computed, ref } from \"vue\";\nimport SearchInput from \".\u002FSearchInput.vue\";\n\nconst query = ref(\"\");\nconst minPrice = ref\u003Cnumber | null>(null);\nconst onlyInStock = ref(false);\n\nconst products = ref([\n  { id: 1, name: \"Teclado mecánico\", price: 89, stock: true },\n  { id: 2, name: \"Mouse ergonómico\", price: 45, stock: false },\n  { id: 3, name: 'Monitor 27\"', price: 299, stock: true },\n]);\n\nconst filteredProducts = computed(() =>\n  products.value.filter((p) => {\n    const matchesQuery =\n      p.name.toLowerCase().includes(query.value.toLowerCase());\n    const matchesPrice =\n      minPrice.value == null || p.price >= minPrice.value;\n    const matchesStock = !onlyInStock.value || p.stock;\n\n    return matchesQuery && matchesPrice && matchesStock;\n  })\n);\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection>\n    \u003Ch2>Filtros\u003C\u002Fh2>\n\n    \u003CSearchInput v-model=\"query\" \u002F>\n\n    \u003Clabel>\n      Precio mínimo\n      \u003Cinput v-model.number=\"minPrice\" type=\"number\" min=\"0\" \u002F>\n    \u003C\u002Flabel>\n\n    \u003Clabel>\n      \u003Cinput v-model=\"onlyInStock\" type=\"checkbox\" \u002F>\n      Solo disponibles\n    \u003C\u002Flabel>\n\n    \u003Cul>\n      \u003Cli v-for=\"item in filteredProducts\" :key=\"item.id\">\n        {{ item.name }} - ${{ item.price }}\n        \u003Cspan v-if=\"!item.stock\">(sin stock)\u003C\u002Fspan>\n      \u003C\u002Fli>\n    \u003C\u002Ful>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n","ProductFilter.vue",[22,30191,30192,30208,30220,30234,30238,30255,30280,30297,30301,30314,30338,30360,30382,30386,30390,30405,30422,30432,30451,30460,30482,30501,30505,30522,30526,30530,30538,30542,30550,30558,30571,30575,30590,30594,30602,30607,30634,30642,30646,30654,30675,30680,30688,30692,30700,30722,30727,30747,30755,30763,30771],{"__ignoreMap":80},[84,30193,30194,30196,30198,30200,30202,30204,30206],{"class":86,"line":87},[84,30195,91],{"class":90},[84,30197,95],{"class":94},[84,30199,99],{"class":98},[84,30201,1161],{"class":98},[84,30203,184],{"class":90},[84,30205,1166],{"class":118},[84,30207,102],{"class":90},[84,30209,30210,30212,30214,30216,30218],{"class":86,"line":105},[84,30211,109],{"class":108},[84,30213,24087],{"class":90},[84,30215,115],{"class":108},[84,30217,18866],{"class":118},[84,30219,18869],{"class":90},[84,30221,30222,30224,30227,30229,30232],{"class":86,"line":122},[84,30223,109],{"class":108},[84,30225,30226],{"class":90}," SearchInput ",[84,30228,115],{"class":108},[84,30230,30231],{"class":118}," \".\u002FSearchInput.vue\"",[84,30233,18869],{"class":90},[84,30235,30236],{"class":86,"line":129},[84,30237,126],{"emptyLinePlaceholder":125},[84,30239,30240,30242,30245,30247,30249,30251,30253],{"class":86,"line":154},[84,30241,132],{"class":108},[84,30243,30244],{"class":135}," query",[84,30246,139],{"class":108},[84,30248,142],{"class":98},[84,30250,145],{"class":90},[84,30252,26013],{"class":118},[84,30254,18994],{"class":90},[84,30256,30257,30259,30262,30264,30266,30268,30270,30272,30274,30276,30278],{"class":86,"line":159},[84,30258,132],{"class":108},[84,30260,30261],{"class":135}," minPrice",[84,30263,139],{"class":108},[84,30265,142],{"class":98},[84,30267,91],{"class":90},[84,30269,8732],{"class":135},[84,30271,1261],{"class":108},[84,30273,1264],{"class":135},[84,30275,1267],{"class":90},[84,30277,1270],{"class":135},[84,30279,18994],{"class":90},[84,30281,30282,30284,30287,30289,30291,30293,30295],{"class":86,"line":178},[84,30283,132],{"class":108},[84,30285,30286],{"class":135}," onlyInStock",[84,30288,139],{"class":108},[84,30290,142],{"class":98},[84,30292,145],{"class":90},[84,30294,148],{"class":135},[84,30296,18994],{"class":90},[84,30298,30299],{"class":86,"line":190},[84,30300,126],{"emptyLinePlaceholder":125},[84,30302,30303,30305,30308,30310,30312],{"class":86,"line":196},[84,30304,132],{"class":108},[84,30306,30307],{"class":135}," products",[84,30309,139],{"class":108},[84,30311,142],{"class":98},[84,30313,2894],{"class":90},[84,30315,30316,30318,30320,30322,30325,30328,30331,30334,30336],{"class":86,"line":201},[84,30317,2899],{"class":90},[84,30319,2862],{"class":135},[84,30321,23323],{"class":90},[84,30323,30324],{"class":118},"\"Teclado mecánico\"",[84,30326,30327],{"class":90},", price: ",[84,30329,30330],{"class":135},"89",[84,30332,30333],{"class":90},", stock: ",[84,30335,2938],{"class":135},[84,30337,2921],{"class":90},[84,30339,30340,30342,30344,30346,30349,30351,30354,30356,30358],{"class":86,"line":217},[84,30341,2899],{"class":90},[84,30343,2928],{"class":135},[84,30345,23323],{"class":90},[84,30347,30348],{"class":118},"\"Mouse ergonómico\"",[84,30350,30327],{"class":90},[84,30352,30353],{"class":135},"45",[84,30355,30333],{"class":90},[84,30357,148],{"class":135},[84,30359,2921],{"class":90},[84,30361,30362,30364,30366,30368,30371,30373,30376,30378,30380],{"class":86,"line":227},[84,30363,2899],{"class":90},[84,30365,2952],{"class":135},[84,30367,23323],{"class":90},[84,30369,30370],{"class":118},"'Monitor 27\"'",[84,30372,30327],{"class":90},[84,30374,30375],{"class":135},"299",[84,30377,30333],{"class":90},[84,30379,2938],{"class":135},[84,30381,2921],{"class":90},[84,30383,30384],{"class":86,"line":232},[84,30385,23387],{"class":90},[84,30387,30388],{"class":86,"line":237},[84,30389,126],{"emptyLinePlaceholder":125},[84,30391,30392,30394,30397,30399,30401,30403],{"class":86,"line":253},[84,30393,132],{"class":108},[84,30395,30396],{"class":135}," filteredProducts",[84,30398,139],{"class":108},[84,30400,2989],{"class":98},[84,30402,2992],{"class":90},[84,30404,4494],{"class":108},[84,30406,30407,30410,30412,30414,30416,30418,30420],{"class":86,"line":266},[84,30408,30409],{"class":90},"  products.value.",[84,30411,3006],{"class":98},[84,30413,3120],{"class":90},[84,30415,15],{"class":429},[84,30417,3126],{"class":90},[84,30419,172],{"class":108},[84,30421,175],{"class":90},[84,30423,30424,30426,30429],{"class":86,"line":271},[84,30425,3021],{"class":108},[84,30427,30428],{"class":135}," matchesQuery",[84,30430,30431],{"class":108}," =\n",[84,30433,30434,30437,30439,30441,30443,30446,30448],{"class":86,"line":281},[84,30435,30436],{"class":90},"      p.name.",[84,30438,3037],{"class":98},[84,30440,6802],{"class":90},[84,30442,3046],{"class":98},[84,30444,30445],{"class":90},"(query.value.",[84,30447,3037],{"class":98},[84,30449,30450],{"class":90},"());\n",[84,30452,30453,30455,30458],{"class":86,"line":286},[84,30454,3021],{"class":108},[84,30456,30457],{"class":135}," matchesPrice",[84,30459,30431],{"class":108},[84,30461,30462,30465,30468,30470,30473,30476,30479],{"class":86,"line":296},[84,30463,30464],{"class":90},"      minPrice.value ",[84,30466,30467],{"class":108},"==",[84,30469,1264],{"class":135},[84,30471,30472],{"class":108}," ||",[84,30474,30475],{"class":90}," p.price ",[84,30477,30478],{"class":108},">=",[84,30480,30481],{"class":90}," minPrice.value;\n",[84,30483,30484,30486,30489,30491,30493,30496,30498],{"class":86,"line":315},[84,30485,3021],{"class":108},[84,30487,30488],{"class":135}," matchesStock",[84,30490,139],{"class":108},[84,30492,260],{"class":108},[84,30494,30495],{"class":90},"onlyInStock.value ",[84,30497,1524],{"class":108},[84,30499,30500],{"class":90}," p.stock;\n",[84,30502,30503],{"class":86,"line":321},[84,30504,126],{"emptyLinePlaceholder":125},[84,30506,30507,30509,30512,30514,30517,30519],{"class":86,"line":331},[84,30508,1903],{"class":108},[84,30510,30511],{"class":90}," matchesQuery ",[84,30513,3096],{"class":108},[84,30515,30516],{"class":90}," matchesPrice ",[84,30518,3096],{"class":108},[84,30520,30521],{"class":90}," matchesStock;\n",[84,30523,30524],{"class":86,"line":336},[84,30525,3104],{"class":90},[84,30527,30528],{"class":86,"line":354},[84,30529,18994],{"class":90},[84,30531,30532,30534,30536],{"class":86,"line":360},[84,30533,274],{"class":90},[84,30535,95],{"class":94},[84,30537,102],{"class":90},[84,30539,30540],{"class":86,"line":369},[84,30541,126],{"emptyLinePlaceholder":125},[84,30543,30544,30546,30548],{"class":86,"line":1453},[84,30545,91],{"class":90},[84,30547,291],{"class":94},[84,30549,102],{"class":90},[84,30551,30552,30554,30556],{"class":86,"line":1462},[84,30553,299],{"class":90},[84,30555,4898],{"class":94},[84,30557,102],{"class":90},[84,30559,30560,30562,30564,30567,30569],{"class":86,"line":1484},[84,30561,1642],{"class":90},[84,30563,34],{"class":94},[84,30565,30566],{"class":90},">Filtros\u003C\u002F",[84,30568,34],{"class":94},[84,30570,102],{"class":90},[84,30572,30573],{"class":86,"line":1489},[84,30574,126],{"emptyLinePlaceholder":125},[84,30576,30577,30579,30581,30583,30585,30588],{"class":86,"line":1495},[84,30578,1642],{"class":90},[84,30580,30038],{"class":94},[84,30582,24454],{"class":98},[84,30584,184],{"class":90},[84,30586,30587],{"class":118},"\"query\"",[84,30589,5100],{"class":90},[84,30591,30592],{"class":86,"line":1500},[84,30593,126],{"emptyLinePlaceholder":125},[84,30595,30596,30598,30600],{"class":86,"line":1516},[84,30597,1642],{"class":90},[84,30599,4653],{"class":94},[84,30601,102],{"class":90},[84,30603,30604],{"class":86,"line":1533},[84,30605,30606],{"class":90},"      Precio mínimo\n",[84,30608,30609,30611,30613,30615,30617,30620,30622,30624,30626,30628,30630,30632],{"class":86,"line":1538},[84,30610,1691],{"class":90},[84,30612,18759],{"class":94},[84,30614,29592],{"class":98},[84,30616,184],{"class":90},[84,30618,30619],{"class":118},"\"minPrice\"",[84,30621,5046],{"class":98},[84,30623,184],{"class":90},[84,30625,29604],{"class":118},[84,30627,29607],{"class":98},[84,30629,184],{"class":90},[84,30631,29612],{"class":118},[84,30633,5100],{"class":90},[84,30635,30636,30638,30640],{"class":86,"line":1545},[84,30637,1734],{"class":90},[84,30639,4653],{"class":94},[84,30641,102],{"class":90},[84,30643,30644],{"class":86,"line":1554},[84,30645,126],{"emptyLinePlaceholder":125},[84,30647,30648,30650,30652],{"class":86,"line":1563},[84,30649,1642],{"class":90},[84,30651,4653],{"class":94},[84,30653,102],{"class":90},[84,30655,30656,30658,30660,30662,30664,30667,30669,30671,30673],{"class":86,"line":1570},[84,30657,1691],{"class":90},[84,30659,18759],{"class":94},[84,30661,24454],{"class":98},[84,30663,184],{"class":90},[84,30665,30666],{"class":118},"\"onlyInStock\"",[84,30668,5046],{"class":98},[84,30670,184],{"class":90},[84,30672,29874],{"class":118},[84,30674,5100],{"class":90},[84,30676,30677],{"class":86,"line":1588},[84,30678,30679],{"class":90},"      Solo disponibles\n",[84,30681,30682,30684,30686],{"class":86,"line":1593},[84,30683,1734],{"class":90},[84,30685,4653],{"class":94},[84,30687,102],{"class":90},[84,30689,30690],{"class":86,"line":1598},[84,30691,126],{"emptyLinePlaceholder":125},[84,30693,30694,30696,30698],{"class":86,"line":1607},[84,30695,1642],{"class":90},[84,30697,737],{"class":94},[84,30699,102],{"class":90},[84,30701,30702,30704,30706,30708,30710,30713,30715,30717,30720],{"class":86,"line":1612},[84,30703,1691],{"class":90},[84,30705,740],{"class":94},[84,30707,13525],{"class":98},[84,30709,184],{"class":90},[84,30711,30712],{"class":118},"\"item in filteredProducts\"",[84,30714,5092],{"class":98},[84,30716,184],{"class":90},[84,30718,30719],{"class":118},"\"item.id\"",[84,30721,102],{"class":90},[84,30723,30724],{"class":86,"line":1621},[84,30725,30726],{"class":90},"        {{ item.name }} - ${{ item.price }}\n",[84,30728,30729,30731,30733,30735,30737,30740,30743,30745],{"class":86,"line":1639},[84,30730,27377],{"class":90},[84,30732,84],{"class":94},[84,30734,344],{"class":98},[84,30736,184],{"class":90},[84,30738,30739],{"class":118},"\"!item.stock\"",[84,30741,30742],{"class":90},">(sin stock)\u003C\u002F",[84,30744,84],{"class":94},[84,30746,102],{"class":90},[84,30748,30749,30751,30753],{"class":86,"line":1661},[84,30750,4952],{"class":90},[84,30752,740],{"class":94},[84,30754,102],{"class":90},[84,30756,30757,30759,30761],{"class":86,"line":1666},[84,30758,1734],{"class":90},[84,30760,737],{"class":94},[84,30762,102],{"class":90},[84,30764,30765,30767,30769],{"class":86,"line":1688},[84,30766,324],{"class":90},[84,30768,4898],{"class":94},[84,30770,102],{"class":90},[84,30772,30773,30775,30777],{"class":86,"line":1703},[84,30774,274],{"class":90},[84,30776,291],{"class":94},[84,30778,102],{"class":90},[1074,30780,28143],{"id":28142},[15,30782,30783,30784,2488,30786,1203],{},"Mismo comportamiento usando ",[22,30785,28916],{},[22,30787,28922],{},[74,30789,30791],{"className":76,"code":30790,"filename":30046,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nexport default {\n  name: \"SearchInput\",\n  props: {\n    modelValue: {\n      type: String,\n      default: \"\",\n    },\n  },\n  emits: [\"update:modelValue\"],\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Clabel class=\"field\">\n    Buscar\n    \u003Cinput\n      :value=\"modelValue\"\n      type=\"text\"\n      placeholder=\"Escribe para filtrar...\"\n      @input=\"$emit('update:modelValue', $event.target.value.trim())\"\n    \u002F>\n  \u003C\u002Flabel>\n\u003C\u002Ftemplate>\n",[22,30792,30793,30807,30815,30824,30828,30833,30838,30847,30851,30855,30866,30870,30878,30882,30890,30904,30908,30914,30924,30932,30940,30950,30954,30962],{"__ignoreMap":80},[84,30794,30795,30797,30799,30801,30803,30805],{"class":86,"line":87},[84,30796,91],{"class":90},[84,30798,95],{"class":94},[84,30800,1161],{"class":98},[84,30802,184],{"class":90},[84,30804,1166],{"class":118},[84,30806,102],{"class":90},[84,30808,30809,30811,30813],{"class":86,"line":105},[84,30810,418],{"class":108},[84,30812,1870],{"class":108},[84,30814,175],{"class":90},[84,30816,30817,30819,30822],{"class":86,"line":122},[84,30818,1881],{"class":90},[84,30820,30821],{"class":118},"\"SearchInput\"",[84,30823,1887],{"class":90},[84,30825,30826],{"class":86,"line":129},[84,30827,28172],{"class":90},[84,30829,30830],{"class":86,"line":154},[84,30831,30832],{"class":90},"    modelValue: {\n",[84,30834,30835],{"class":86,"line":159},[84,30836,30837],{"class":90},"      type: String,\n",[84,30839,30840,30843,30845],{"class":86,"line":178},[84,30841,30842],{"class":90},"      default: ",[84,30844,26013],{"class":118},[84,30846,1887],{"class":90},[84,30848,30849],{"class":86,"line":190},[84,30850,7783],{"class":90},[84,30852,30853],{"class":86,"line":196},[84,30854,1941],{"class":90},[84,30856,30857,30860,30863],{"class":86,"line":201},[84,30858,30859],{"class":90},"  emits: [",[84,30861,30862],{"class":118},"\"update:modelValue\"",[84,30864,30865],{"class":90},"],\n",[84,30867,30868],{"class":86,"line":217},[84,30869,18973],{"class":90},[84,30871,30872,30874,30876],{"class":86,"line":227},[84,30873,274],{"class":90},[84,30875,95],{"class":94},[84,30877,102],{"class":90},[84,30879,30880],{"class":86,"line":232},[84,30881,126],{"emptyLinePlaceholder":125},[84,30883,30884,30886,30888],{"class":86,"line":237},[84,30885,91],{"class":90},[84,30887,291],{"class":94},[84,30889,102],{"class":90},[84,30891,30892,30894,30896,30898,30900,30902],{"class":86,"line":253},[84,30893,299],{"class":90},[84,30895,4653],{"class":94},[84,30897,1629],{"class":98},[84,30899,184],{"class":90},[84,30901,30122],{"class":118},[84,30903,102],{"class":90},[84,30905,30906],{"class":86,"line":266},[84,30907,30129],{"class":90},[84,30909,30910,30912],{"class":86,"line":271},[84,30911,1642],{"class":90},[84,30913,12295],{"class":94},[84,30915,30916,30919,30921],{"class":86,"line":281},[84,30917,30918],{"class":98},"      :value",[84,30920,184],{"class":90},[84,30922,30923],{"class":118},"\"modelValue\"\n",[84,30925,30926,30928,30930],{"class":86,"line":286},[84,30927,12309],{"class":98},[84,30929,184],{"class":90},[84,30931,30155],{"class":118},[84,30933,30934,30936,30938],{"class":86,"line":296},[84,30935,12319],{"class":98},[84,30937,184],{"class":90},[84,30939,30164],{"class":118},[84,30941,30942,30945,30947],{"class":86,"line":315},[84,30943,30944],{"class":98},"      @input",[84,30946,184],{"class":90},[84,30948,30949],{"class":118},"\"$emit('update:modelValue', $event.target.value.trim())\"\n",[84,30951,30952],{"class":86,"line":321},[84,30953,30169],{"class":90},[84,30955,30956,30958,30960],{"class":86,"line":331},[84,30957,324],{"class":90},[84,30959,4653],{"class":94},[84,30961,102],{"class":90},[84,30963,30964,30966,30968],{"class":86,"line":336},[84,30965,274],{"class":90},[84,30967,291],{"class":94},[84,30969,102],{"class":90},[74,30971,30973],{"className":76,"code":30972,"filename":30189,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nimport SearchInput from \".\u002FSearchInput.vue\";\n\nexport default {\n  name: \"ProductFilter\",\n  components: { SearchInput },\n  data() {\n    return {\n      query: \"\",\n      minPrice: null,\n      onlyInStock: false,\n      products: [\n        { id: 1, name: \"Teclado mecánico\", price: 89, stock: true },\n        { id: 2, name: \"Mouse ergonómico\", price: 45, stock: false },\n        { id: 3, name: 'Monitor 27\"', price: 299, stock: true },\n      ],\n    };\n  },\n  computed: {\n    filteredProducts() {\n      return this.products.filter((p) => {\n        const matchesQuery = p.name\n          .toLowerCase()\n          .includes(this.query.toLowerCase());\n        const matchesPrice =\n          this.minPrice == null || p.price >= Number(this.minPrice);\n        const matchesStock = !this.onlyInStock || p.stock;\n\n        return matchesQuery && matchesPrice && matchesStock;\n      });\n    },\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection>\n    \u003Ch2>Filtros\u003C\u002Fh2>\n\n    \u003CSearchInput v-model=\"query\" \u002F>\n\n    \u003Clabel>\n      Precio mínimo\n      \u003Cinput v-model.number=\"minPrice\" type=\"number\" min=\"0\" \u002F>\n    \u003C\u002Flabel>\n\n    \u003Clabel>\n      \u003Cinput v-model=\"onlyInStock\" type=\"checkbox\" \u002F>\n      Solo disponibles\n    \u003C\u002Flabel>\n\n    \u003Cul>\n      \u003Cli v-for=\"item in filteredProducts\" :key=\"item.id\">\n        {{ item.name }} - ${{ item.price }}\n        \u003Cspan v-if=\"!item.stock\">(sin stock)\u003C\u002Fspan>\n      \u003C\u002Fli>\n    \u003C\u002Ful>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[22,30974,30975,30989,31001,31005,31013,31022,31027,31033,31039,31048,31057,31066,31071,31091,31111,31131,31135,31139,31143,31147,31154,31175,31186,31194,31211,31219,31247,31266,31270,31284,31289,31293,31297,31301,31309,31313,31321,31329,31341,31345,31359,31363,31371,31375,31401,31409,31413,31421,31441,31445,31453,31457,31465,31485,31489,31507,31515,31523,31531],{"__ignoreMap":80},[84,30976,30977,30979,30981,30983,30985,30987],{"class":86,"line":87},[84,30978,91],{"class":90},[84,30980,95],{"class":94},[84,30982,1161],{"class":98},[84,30984,184],{"class":90},[84,30986,1166],{"class":118},[84,30988,102],{"class":90},[84,30990,30991,30993,30995,30997,30999],{"class":86,"line":105},[84,30992,109],{"class":108},[84,30994,30226],{"class":90},[84,30996,115],{"class":108},[84,30998,30231],{"class":118},[84,31000,18869],{"class":90},[84,31002,31003],{"class":86,"line":122},[84,31004,126],{"emptyLinePlaceholder":125},[84,31006,31007,31009,31011],{"class":86,"line":129},[84,31008,418],{"class":108},[84,31010,1870],{"class":108},[84,31012,175],{"class":90},[84,31014,31015,31017,31020],{"class":86,"line":154},[84,31016,1881],{"class":90},[84,31018,31019],{"class":118},"\"ProductFilter\"",[84,31021,1887],{"class":90},[84,31023,31024],{"class":86,"line":159},[84,31025,31026],{"class":90},"  components: { SearchInput },\n",[84,31028,31029,31031],{"class":86,"line":178},[84,31030,1896],{"class":98},[84,31032,1307],{"class":90},[84,31034,31035,31037],{"class":86,"line":190},[84,31036,1903],{"class":108},[84,31038,175],{"class":90},[84,31040,31041,31044,31046],{"class":86,"line":196},[84,31042,31043],{"class":90},"      query: ",[84,31045,26013],{"class":118},[84,31047,1887],{"class":90},[84,31049,31050,31053,31055],{"class":86,"line":201},[84,31051,31052],{"class":90},"      minPrice: ",[84,31054,1270],{"class":135},[84,31056,1887],{"class":90},[84,31058,31059,31062,31064],{"class":86,"line":217},[84,31060,31061],{"class":90},"      onlyInStock: ",[84,31063,148],{"class":135},[84,31065,1887],{"class":90},[84,31067,31068],{"class":86,"line":227},[84,31069,31070],{"class":90},"      products: [\n",[84,31072,31073,31075,31077,31079,31081,31083,31085,31087,31089],{"class":86,"line":232},[84,31074,3449],{"class":90},[84,31076,2862],{"class":135},[84,31078,23323],{"class":90},[84,31080,30324],{"class":118},[84,31082,30327],{"class":90},[84,31084,30330],{"class":135},[84,31086,30333],{"class":90},[84,31088,2938],{"class":135},[84,31090,2921],{"class":90},[84,31092,31093,31095,31097,31099,31101,31103,31105,31107,31109],{"class":86,"line":237},[84,31094,3449],{"class":90},[84,31096,2928],{"class":135},[84,31098,23323],{"class":90},[84,31100,30348],{"class":118},[84,31102,30327],{"class":90},[84,31104,30353],{"class":135},[84,31106,30333],{"class":90},[84,31108,148],{"class":135},[84,31110,2921],{"class":90},[84,31112,31113,31115,31117,31119,31121,31123,31125,31127,31129],{"class":86,"line":253},[84,31114,3449],{"class":90},[84,31116,2952],{"class":135},[84,31118,23323],{"class":90},[84,31120,30370],{"class":118},[84,31122,30327],{"class":90},[84,31124,30375],{"class":135},[84,31126,30333],{"class":90},[84,31128,2938],{"class":135},[84,31130,2921],{"class":90},[84,31132,31133],{"class":86,"line":266},[84,31134,10927],{"class":90},[84,31136,31137],{"class":86,"line":271},[84,31138,19195],{"class":90},[84,31140,31141],{"class":86,"line":281},[84,31142,1941],{"class":90},[84,31144,31145],{"class":86,"line":286},[84,31146,3527],{"class":90},[84,31148,31149,31152],{"class":86,"line":296},[84,31150,31151],{"class":98},"    filteredProducts",[84,31153,1307],{"class":90},[84,31155,31156,31158,31160,31163,31165,31167,31169,31171,31173],{"class":86,"line":315},[84,31157,3539],{"class":108},[84,31159,2078],{"class":135},[84,31161,31162],{"class":90},".products.",[84,31164,3006],{"class":98},[84,31166,3120],{"class":90},[84,31168,15],{"class":429},[84,31170,3126],{"class":90},[84,31172,172],{"class":108},[84,31174,175],{"class":90},[84,31176,31177,31179,31181,31183],{"class":86,"line":321},[84,31178,3559],{"class":108},[84,31180,30428],{"class":135},[84,31182,139],{"class":108},[84,31184,31185],{"class":90}," p.name\n",[84,31187,31188,31190,31192],{"class":86,"line":331},[84,31189,3570],{"class":90},[84,31191,3037],{"class":98},[84,31193,635],{"class":90},[84,31195,31196,31198,31200,31202,31204,31207,31209],{"class":86,"line":336},[84,31197,3570],{"class":90},[84,31199,3046],{"class":98},[84,31201,145],{"class":90},[84,31203,2151],{"class":135},[84,31205,31206],{"class":90},".query.",[84,31208,3037],{"class":98},[84,31210,30450],{"class":90},[84,31212,31213,31215,31217],{"class":86,"line":354},[84,31214,3559],{"class":108},[84,31216,30457],{"class":135},[84,31218,30431],{"class":108},[84,31220,31221,31224,31227,31229,31231,31233,31235,31237,31240,31242,31244],{"class":86,"line":360},[84,31222,31223],{"class":135},"          this",[84,31225,31226],{"class":90},".minPrice ",[84,31228,30467],{"class":108},[84,31230,1264],{"class":135},[84,31232,30472],{"class":108},[84,31234,30475],{"class":90},[84,31236,30478],{"class":108},[84,31238,31239],{"class":98}," Number",[84,31241,145],{"class":90},[84,31243,2151],{"class":135},[84,31245,31246],{"class":90},".minPrice);\n",[84,31248,31249,31251,31253,31255,31257,31259,31262,31264],{"class":86,"line":369},[84,31250,3559],{"class":108},[84,31252,30488],{"class":135},[84,31254,139],{"class":108},[84,31256,260],{"class":108},[84,31258,2151],{"class":135},[84,31260,31261],{"class":90},".onlyInStock ",[84,31263,1524],{"class":108},[84,31265,30500],{"class":90},[84,31267,31268],{"class":86,"line":1453},[84,31269,126],{"emptyLinePlaceholder":125},[84,31271,31272,31274,31276,31278,31280,31282],{"class":86,"line":1462},[84,31273,3627],{"class":108},[84,31275,30511],{"class":90},[84,31277,3096],{"class":108},[84,31279,30516],{"class":90},[84,31281,3096],{"class":108},[84,31283,30521],{"class":90},[84,31285,31286],{"class":86,"line":1484},[84,31287,31288],{"class":90},"      });\n",[84,31290,31291],{"class":86,"line":1489},[84,31292,7783],{"class":90},[84,31294,31295],{"class":86,"line":1495},[84,31296,1941],{"class":90},[84,31298,31299],{"class":86,"line":1500},[84,31300,18973],{"class":90},[84,31302,31303,31305,31307],{"class":86,"line":1516},[84,31304,274],{"class":90},[84,31306,95],{"class":94},[84,31308,102],{"class":90},[84,31310,31311],{"class":86,"line":1533},[84,31312,126],{"emptyLinePlaceholder":125},[84,31314,31315,31317,31319],{"class":86,"line":1538},[84,31316,91],{"class":90},[84,31318,291],{"class":94},[84,31320,102],{"class":90},[84,31322,31323,31325,31327],{"class":86,"line":1545},[84,31324,299],{"class":90},[84,31326,4898],{"class":94},[84,31328,102],{"class":90},[84,31330,31331,31333,31335,31337,31339],{"class":86,"line":1554},[84,31332,1642],{"class":90},[84,31334,34],{"class":94},[84,31336,30566],{"class":90},[84,31338,34],{"class":94},[84,31340,102],{"class":90},[84,31342,31343],{"class":86,"line":1563},[84,31344,126],{"emptyLinePlaceholder":125},[84,31346,31347,31349,31351,31353,31355,31357],{"class":86,"line":1570},[84,31348,1642],{"class":90},[84,31350,30038],{"class":94},[84,31352,24454],{"class":98},[84,31354,184],{"class":90},[84,31356,30587],{"class":118},[84,31358,5100],{"class":90},[84,31360,31361],{"class":86,"line":1588},[84,31362,126],{"emptyLinePlaceholder":125},[84,31364,31365,31367,31369],{"class":86,"line":1593},[84,31366,1642],{"class":90},[84,31368,4653],{"class":94},[84,31370,102],{"class":90},[84,31372,31373],{"class":86,"line":1598},[84,31374,30606],{"class":90},[84,31376,31377,31379,31381,31383,31385,31387,31389,31391,31393,31395,31397,31399],{"class":86,"line":1607},[84,31378,1691],{"class":90},[84,31380,18759],{"class":94},[84,31382,29592],{"class":98},[84,31384,184],{"class":90},[84,31386,30619],{"class":118},[84,31388,5046],{"class":98},[84,31390,184],{"class":90},[84,31392,29604],{"class":118},[84,31394,29607],{"class":98},[84,31396,184],{"class":90},[84,31398,29612],{"class":118},[84,31400,5100],{"class":90},[84,31402,31403,31405,31407],{"class":86,"line":1612},[84,31404,1734],{"class":90},[84,31406,4653],{"class":94},[84,31408,102],{"class":90},[84,31410,31411],{"class":86,"line":1621},[84,31412,126],{"emptyLinePlaceholder":125},[84,31414,31415,31417,31419],{"class":86,"line":1639},[84,31416,1642],{"class":90},[84,31418,4653],{"class":94},[84,31420,102],{"class":90},[84,31422,31423,31425,31427,31429,31431,31433,31435,31437,31439],{"class":86,"line":1661},[84,31424,1691],{"class":90},[84,31426,18759],{"class":94},[84,31428,24454],{"class":98},[84,31430,184],{"class":90},[84,31432,30666],{"class":118},[84,31434,5046],{"class":98},[84,31436,184],{"class":90},[84,31438,29874],{"class":118},[84,31440,5100],{"class":90},[84,31442,31443],{"class":86,"line":1666},[84,31444,30679],{"class":90},[84,31446,31447,31449,31451],{"class":86,"line":1688},[84,31448,1734],{"class":90},[84,31450,4653],{"class":94},[84,31452,102],{"class":90},[84,31454,31455],{"class":86,"line":1703},[84,31456,126],{"emptyLinePlaceholder":125},[84,31458,31459,31461,31463],{"class":86,"line":1717},[84,31460,1642],{"class":90},[84,31462,737],{"class":94},[84,31464,102],{"class":90},[84,31466,31467,31469,31471,31473,31475,31477,31479,31481,31483],{"class":86,"line":1731},[84,31468,1691],{"class":90},[84,31470,740],{"class":94},[84,31472,13525],{"class":98},[84,31474,184],{"class":90},[84,31476,30712],{"class":118},[84,31478,5092],{"class":98},[84,31480,184],{"class":90},[84,31482,30719],{"class":118},[84,31484,102],{"class":90},[84,31486,31487],{"class":86,"line":1741},[84,31488,30726],{"class":90},[84,31490,31491,31493,31495,31497,31499,31501,31503,31505],{"class":86,"line":1746},[84,31492,27377],{"class":90},[84,31494,84],{"class":94},[84,31496,344],{"class":98},[84,31498,184],{"class":90},[84,31500,30739],{"class":118},[84,31502,30742],{"class":90},[84,31504,84],{"class":94},[84,31506,102],{"class":90},[84,31508,31509,31511,31513],{"class":86,"line":1763},[84,31510,4952],{"class":90},[84,31512,740],{"class":94},[84,31514,102],{"class":90},[84,31516,31517,31519,31521],{"class":86,"line":1772},[84,31518,1734],{"class":90},[84,31520,737],{"class":94},[84,31522,102],{"class":90},[84,31524,31525,31527,31529],{"class":86,"line":2283},[84,31526,324],{"class":90},[84,31528,4898],{"class":94},[84,31530,102],{"class":90},[84,31532,31533,31535,31537],{"class":86,"line":2288},[84,31534,274],{"class":90},[84,31536,291],{"class":94},[84,31538,102],{"class":90},[34,31540,2406],{"id":2405},[15,31542,31543,31545],{},[22,31544,18689],{}," es la forma idiomática en Vue 3 para sincronizar UI y estado en formularios y componentes.",[15,31547,31548],{},"Úsalo para reducir boilerplate y mantener consistencia, pero evita convertirlo en un atajo para lógica de negocio compleja.",[15,31550,22533],{},[737,31552,31553,31559,31568,31578],{},[740,31554,31555,31556,31558],{},"En inputs nativos, simplifica ",[22,31557,28839],{}," + eventos.",[740,31560,31561,31562,6014,31564,29094,31566,764],{},"En componentes, respeta ",[22,31563,28916],{},[22,31565,28922],{},[22,31567,29097],{},[740,31569,31570,31571,754,31573,754,31575,31577],{},"Aplica modificadores (",[22,31572,28941],{},[22,31574,28946],{},[22,31576,28951],{},") cuando mejoren la calidad de los datos o el rendimiento.",[740,31579,31580],{},"Mantén el flujo de datos claro y explícito cuando el dominio lo requiera.",[835,31582,3902],{},{"title":80,"searchDepth":105,"depth":105,"links":31584},[31585,31586,31590,31591,31592,31599,31600,31602,31603,31607],{"id":21333,"depth":105,"text":21334},{"id":946,"depth":105,"text":947,"children":31587},[31588,31589],{"id":28859,"depth":122,"text":28860},{"id":28904,"depth":122,"text":28905},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":783,"depth":105,"text":784,"children":31593},[31594,31595,31597,31598],{"id":29022,"depth":122,"text":29023},{"id":29105,"depth":122,"text":31596},"2) Enlazar v-model a expresiones no escribibles",{"id":29179,"depth":122,"text":29180},{"id":29208,"depth":122,"text":29209},{"id":29220,"depth":105,"text":29221},{"id":29482,"depth":105,"text":31601},"2) Input numérico con v-model.number",{"id":29769,"depth":105,"text":29770},{"id":30030,"depth":105,"text":30031,"children":31604},[31605,31606],{"id":27552,"depth":122,"text":27553},{"id":28142,"depth":122,"text":28143},{"id":2405,"depth":105,"text":2406},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1771265788\u002Fdirectives-vue-v-model-guide_ticgya.png","Imagen temporal para portada del artículo sobre v-model en Vue","2026-02-16","Aprende a usar v-model en Vue 3 para formularios y componentes personalizados, con Composition API y Options API, casos reales, errores comunes y buenas practicas.",{"updatedAt":31613,"coverCaption":18477,"author":868,"keywords":31614},"2026-02-16T13:30:00-05:00",[870,18689,31615,31616,873,1782],"formularios","two-way binding","\u002Fblog\u002Fdirectives-vue-v-model-guide.es",[31619],{"headline":31620,"author":31621,"datePublished":31613,"@type":880},"Directiva v-model en Vue: guía completa para formularios y componentes",{"name":868,"@type":879},{"title":28806,"description":31611},"blog\u002Fdirectives-vue-v-model-guide.es",[31625,31626,31629,31630],{"tag":21297,"color":21298},{"tag":31627,"color":31628},"Formularios","#E67E22",{"tag":3945,"color":3946},{"tag":894,"color":895},"O_hXXsF2G3Nazt5a_Ggj8OT6_GTMtHDuGhVbwudOzcU",{"id":31633,"title":31634,"body":31635,"cover":34634,"coverAlt":34635,"date":34636,"description":34637,"draft":852,"extension":853,"lab":882,"locale":864,"meta":34638,"navigation":125,"path":34643,"schemaOrg":34644,"seo":34648,"series":21291,"seriesDescription":21292,"seriesOrder":154,"seriesTitle":21293,"slug":882,"stem":34649,"tags":34650,"__hash__":34656},"blog\u002Fblog\u002Fdirectives-vue-v-on-guide.es.md","Directivas en Vue: v-on",{"type":8,"value":31636,"toc":34611},[31637,31642,31650,31652,31660,31671,31678,31680,31683,31718,31721,31751,31756,31811,31813,31818,31820,31851,31853,31858,31871,31876,31878,31882,31884,31917,31924,31953,31960,31962,31989,31991,32021,32028,32032,32035,32100,32103,32134,32137,32144,32146,32175,32177,32205,32211,32213,32217,32320,32429,32435,32643,32856,32860,33001,33149,33153,33276,33408,33410,33413,33432,34040,34572,34574,34579,34582,34608],[11,31638,21314,31640],{"id":31639},"directivas-en-vue-v-on",[22,31641,18695],{},[15,31643,31644,31646,31647,31649],{},[22,31645,18695],{}," conecta eventos del DOM o de componentes con funciones de tu app.\nCuando el usuario hace clic, escribe o pulsa una tecla, ",[22,31648,18695],{}," dispara la lógica que definiste.",[34,31651,21334],{"id":21333},[15,31653,16664,31654,31656,31657,31659],{},[22,31655,18695],{},", una interfaz no responde a la interacción del usuario.\nCon ",[22,31658,18695],{},", puedes:",[737,31661,31662,31665,31668],{},[740,31663,31664],{},"Capturar acciones del usuario sin manipular el DOM manualmente.",[740,31666,31667],{},"Mantener la interacción declarativa y legible en el template.",[740,31669,31670],{},"Separar estado, renderizado y comportamiento de forma consistente con Vue.",[823,31672,31673],{},[15,31674,31675,31677],{},[22,31676,18695],{}," es la base de botones, formularios, atajos de teclado y comunicación entre componentes vía eventos.",[34,31679,25350],{"id":25349},[15,31681,31682],{},"La forma larga:",[74,31684,31686],{"className":76,"code":31685,"filename":10092,"language":79,"meta":80,"style":80},"\u003Cbutton v-on:click=\"increment\">Sumar\u003C\u002Fbutton>\n",[22,31687,31688],{"__ignoreMap":80},[84,31689,31690,31692,31694,31697,31699,31702,31704,31706,31709,31711,31714,31716],{"class":86,"line":87},[84,31691,91],{"class":90},[84,31693,302],{"class":94},[84,31695,31696],{"class":98}," v-on",[84,31698,1203],{"class":90},[84,31700,31701],{"class":98},"click",[84,31703,184],{"class":90},[84,31705,1678],{"class":118},[84,31707,31708],{"class":90},"increment",[84,31710,1678],{"class":118},[84,31712,31713],{"class":90},">Sumar\u003C\u002F",[84,31715,302],{"class":94},[84,31717,102],{"class":90},[15,31719,31720],{},"La forma corta recomendada:",[74,31722,31724],{"className":76,"code":31723,"filename":10092,"language":79,"meta":80,"style":80},"\u003Cbutton @click=\"increment\">Sumar\u003C\u002Fbutton>\n",[22,31725,31726],{"__ignoreMap":80},[84,31727,31728,31730,31732,31735,31737,31739,31741,31743,31745,31747,31749],{"class":86,"line":87},[84,31729,91],{"class":90},[84,31731,302],{"class":94},[84,31733,31734],{"class":90}," @",[84,31736,31701],{"class":98},[84,31738,184],{"class":90},[84,31740,1678],{"class":118},[84,31742,31708],{"class":90},[84,31744,1678],{"class":118},[84,31746,31713],{"class":90},[84,31748,302],{"class":94},[84,31750,102],{"class":90},[15,31752,31753,31755],{},[22,31754,18695],{}," admite:",[737,31757,31758,31771,31780,31795],{},[740,31759,31760,31761,754,31763,754,31765,754,31768,2686],{},"Eventos nativos (",[22,31762,31701],{},[22,31764,18759],{},[22,31766,31767],{},"submit",[22,31769,31770],{},"keydown",[740,31772,31773,31774,754,31777,2686],{},"Eventos emitidos por componentes (",[22,31775,31776],{},"@save",[22,31778,31779],{},"@close",[740,31781,31782,31783,754,31786,754,31789,754,31792,2686],{},"Modificadores de evento (",[22,31784,31785],{},".prevent",[22,31787,31788],{},".stop",[22,31790,31791],{},".once",[22,31793,31794],{},".self",[740,31796,31797,31798,754,31801,31804,31805,754,31808,2599],{},"Modificadores de teclado (",[22,31799,31800],{},".enter",[22,31802,31803],{},".esc",", combinaciones con ",[22,31806,31807],{},"ctrl",[22,31809,31810],{},"shift",[34,31812,1013],{"id":1012},[15,31814,21486,31815,31817],{},[22,31816,18695],{}," cuando necesites reaccionar a acciones del usuario o a eventos de componentes.",[15,31819,4083],{},[737,31821,31822,31828,31834,31840,31845],{},[740,31823,31824,31825,2686],{},"Botones de acción (",[22,31826,31827],{},"@click=\"createTask\"",[740,31829,31830,31831,2686],{},"Formularios (",[22,31832,31833],{},"@submit.prevent=\"submitForm\"",[740,31835,31836,31837,2686],{},"Inputs en tiempo real (",[22,31838,31839],{},"@input=\"handleSearch\"",[740,31841,18526,31842,2686],{},[22,31843,31844],{},"@keydown.ctrl.enter=\"publish\"",[740,31846,31847,31848,2686],{},"Eventos personalizados desde componentes hijos (",[22,31849,31850],{},"@save=\"persistTask\"",[34,31852,1040],{"id":1039},[15,31854,8425,31855,31857],{},[22,31856,18695],{}," en estos casos:",[737,31859,31860,31863,31868],{},[740,31861,31862],{},"Cuando no hay interacción real y el contenido es completamente estático.",[740,31864,31865,31866,764],{},"Cuando colocas demasiada lógica inline en el template; es mejor moverla a funciones o ",[22,31867,2523],{},[740,31869,31870],{},"Cuando intentas “resolver” seguridad con eventos del frontend: la validación real debe ocurrir en backend.",[823,31872,31873],{},[15,31874,31875],{},"También evita encadenar muchos modificadores sin una intención clara, porque dificulta el mantenimiento.",[34,31877,784],{"id":783},[1074,31879,31881],{"id":31880},"_1-ejecutar-la-función-en-vez-de-referenciarla","1) Ejecutar la función en vez de referenciarla",[15,31883,25589],{},[74,31885,31887],{"className":76,"code":31886,"filename":29029,"language":79,"meta":80,"style":80},"\u003Cbutton @click=\"saveTask()\">Guardar\u003C\u002Fbutton>\n",[22,31888,31889],{"__ignoreMap":80},[84,31890,31891,31893,31895,31897,31899,31901,31903,31906,31908,31910,31913,31915],{"class":86,"line":87},[84,31892,91],{"class":90},[84,31894,302],{"class":94},[84,31896,31734],{"class":90},[84,31898,31701],{"class":98},[84,31900,184],{"class":90},[84,31902,1678],{"class":118},[84,31904,31905],{"class":98},"saveTask",[84,31907,29137],{"class":90},[84,31909,1678],{"class":118},[84,31911,31912],{"class":90},">Guardar\u003C\u002F",[84,31914,302],{"class":94},[84,31916,102],{"class":90},[15,31918,31919,31920,31923],{},"Esto ",[958,31921,31922],{},"es válido",", pero si no necesitas argumentos, suele ser más limpio:",[74,31925,31927],{"className":76,"code":31926,"filename":29155,"language":79,"meta":80,"style":80},"\u003Cbutton @click=\"saveTask\">Guardar\u003C\u002Fbutton>\n",[22,31928,31929],{"__ignoreMap":80},[84,31930,31931,31933,31935,31937,31939,31941,31943,31945,31947,31949,31951],{"class":86,"line":87},[84,31932,91],{"class":90},[84,31934,302],{"class":94},[84,31936,31734],{"class":90},[84,31938,31701],{"class":98},[84,31940,184],{"class":90},[84,31942,1678],{"class":118},[84,31944,31905],{"class":90},[84,31946,1678],{"class":118},[84,31948,31912],{"class":90},[84,31950,302],{"class":94},[84,31952,102],{"class":90},[1074,31954,31956,31957,31959],{"id":31955},"_2-olvidar-prevent-en-formularios","2) Olvidar ",[22,31958,31785],{}," en formularios",[15,31961,25589],{},[74,31963,31965],{"className":76,"code":31964,"filename":29029,"language":79,"meta":80,"style":80},"\u003Cform @submit=\"submitForm\">\n",[22,31966,31967],{"__ignoreMap":80},[84,31968,31969,31971,31974,31976,31978,31980,31982,31985,31987],{"class":86,"line":87},[84,31970,91],{"class":90},[84,31972,31973],{"class":94},"form",[84,31975,31734],{"class":90},[84,31977,31767],{"class":98},[84,31979,184],{"class":90},[84,31981,1678],{"class":118},[84,31983,31984],{"class":90},"submitForm",[84,31986,1678],{"class":118},[84,31988,102],{"class":90},[15,31990,29151],{},[74,31992,31994],{"className":76,"code":31993,"filename":29155,"language":79,"meta":80,"style":80},"\u003Cform @submit.prevent=\"submitForm\">\n",[22,31995,31996],{"__ignoreMap":80},[84,31997,31998,32000,32002,32004,32006,32008,32011,32013,32015,32017,32019],{"class":86,"line":87},[84,31999,91],{"class":90},[84,32001,31973],{"class":94},[84,32003,31734],{"class":90},[84,32005,31767],{"class":98},[84,32007,764],{"class":90},[84,32009,32010],{"class":98},"prevent",[84,32012,184],{"class":90},[84,32014,1678],{"class":118},[84,32016,31984],{"class":90},[84,32018,1678],{"class":118},[84,32020,102],{"class":90},[823,32022,32023],{},[15,32024,16664,32025,32027],{},[22,32026,31785],{},", el navegador recarga la página por defecto.",[1074,32029,32031],{"id":32030},"_3-poner-demasiada-lógica-dentro-del-template","3) Poner demasiada lógica dentro del template",[15,32033,32034],{},"Evitar:",[74,32036,32038],{"className":76,"code":32037,"filename":29029,"language":79,"meta":80,"style":80},"\u003Cbutton @click=\"isAdmin && canEdit && !isLocked ? publishNow() : showWarning()\">\n  Publicar\n\u003C\u002Fbutton>\n",[22,32039,32040,32087,32092],{"__ignoreMap":80},[84,32041,32042,32044,32046,32048,32050,32052,32054,32057,32059,32062,32064,32066,32069,32071,32074,32076,32078,32081,32083,32085],{"class":86,"line":87},[84,32043,91],{"class":90},[84,32045,302],{"class":94},[84,32047,31734],{"class":90},[84,32049,31701],{"class":98},[84,32051,184],{"class":90},[84,32053,1678],{"class":118},[84,32055,32056],{"class":90},"isAdmin ",[84,32058,3096],{"class":108},[84,32060,32061],{"class":90}," canEdit ",[84,32063,3096],{"class":108},[84,32065,260],{"class":108},[84,32067,32068],{"class":90},"isLocked ",[84,32070,3073],{"class":108},[84,32072,32073],{"class":98}," publishNow",[84,32075,8890],{"class":90},[84,32077,1203],{"class":108},[84,32079,32080],{"class":98}," showWarning",[84,32082,29137],{"class":90},[84,32084,1678],{"class":118},[84,32086,102],{"class":90},[84,32088,32089],{"class":86,"line":105},[84,32090,32091],{"class":90},"  Publicar\n",[84,32093,32094,32096,32098],{"class":86,"line":122},[84,32095,274],{"class":90},[84,32097,302],{"class":94},[84,32099,102],{"class":90},[15,32101,32102],{},"Mejor:",[74,32104,32106],{"className":76,"code":32105,"filename":29155,"language":79,"meta":80,"style":80},"\u003Cbutton @click=\"handlePublishClick\">Publicar\u003C\u002Fbutton>\n",[22,32107,32108],{"__ignoreMap":80},[84,32109,32110,32112,32114,32116,32118,32120,32122,32125,32127,32130,32132],{"class":86,"line":87},[84,32111,91],{"class":90},[84,32113,302],{"class":94},[84,32115,31734],{"class":90},[84,32117,31701],{"class":98},[84,32119,184],{"class":90},[84,32121,1678],{"class":118},[84,32123,32124],{"class":90},"handlePublishClick",[84,32126,1678],{"class":118},[84,32128,32129],{"class":90},">Publicar\u003C\u002F",[84,32131,302],{"class":94},[84,32133,102],{"class":90},[15,32135,32136],{},"Y mover la decisión a una función clara en el script.",[1074,32138,32140,32141,32143],{"id":32139},"_4-usar-event-sin-declararlo","4) Usar ",[22,32142,3123],{}," sin declararlo",[15,32145,25589],{},[74,32147,32149],{"className":76,"code":32148,"filename":29029,"language":79,"meta":80,"style":80},"\u003Cinput @input=\"onInput(event)\" \u002F>\n",[22,32150,32151],{"__ignoreMap":80},[84,32152,32153,32155,32157,32159,32161,32163,32165,32168,32171,32173],{"class":86,"line":87},[84,32154,91],{"class":90},[84,32156,18759],{"class":94},[84,32158,31734],{"class":90},[84,32160,18759],{"class":98},[84,32162,184],{"class":90},[84,32164,1678],{"class":118},[84,32166,32167],{"class":98},"onInput",[84,32169,32170],{"class":90},"(event)",[84,32172,1678],{"class":118},[84,32174,5100],{"class":90},[15,32176,29151],{},[74,32178,32180],{"className":76,"code":32179,"filename":29155,"language":79,"meta":80,"style":80},"\u003Cinput @input=\"onInput($event)\" \u002F>\n",[22,32181,32182],{"__ignoreMap":80},[84,32183,32184,32186,32188,32190,32192,32194,32196,32198,32201,32203],{"class":86,"line":87},[84,32185,91],{"class":90},[84,32187,18759],{"class":94},[84,32189,31734],{"class":90},[84,32191,18759],{"class":98},[84,32193,184],{"class":90},[84,32195,1678],{"class":118},[84,32197,32167],{"class":98},[84,32199,32200],{"class":90},"($event)",[84,32202,1678],{"class":118},[84,32204,5100],{"class":90},[15,32206,32207,32208,32210],{},"O mejor aún, tipar el evento y leer ",[22,32209,2574],{}," de forma segura en TypeScript.",[34,32212,2736],{"id":2735},[1074,32214,32216],{"id":32215},"_1-click-simple-para-actualizar-estado","1) Click simple para actualizar estado",[74,32218,32221],{"className":76,"code":32219,"filename":873,"highlights":32220,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\nconst count = ref(0);\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"count++\">Clicks: {{ count }}\u003C\u002Fbutton>\n\u003C\u002Ftemplate>\n",[129,190],[22,32222,32223,32239,32251,32255,32272,32280,32284,32292,32312],{"__ignoreMap":80},[84,32224,32225,32227,32229,32231,32233,32235,32237],{"class":86,"line":87},[84,32226,91],{"class":90},[84,32228,95],{"class":94},[84,32230,99],{"class":98},[84,32232,1161],{"class":98},[84,32234,184],{"class":90},[84,32236,1166],{"class":118},[84,32238,102],{"class":90},[84,32240,32241,32243,32245,32247,32249],{"class":86,"line":105},[84,32242,109],{"class":108},[84,32244,112],{"class":90},[84,32246,115],{"class":108},[84,32248,18866],{"class":118},[84,32250,18869],{"class":90},[84,32252,32253],{"class":86,"line":122},[84,32254,126],{"emptyLinePlaceholder":125},[84,32256,32258,32260,32262,32264,32266,32268,32270],{"class":32257,"line":129},[86,10151],[84,32259,132],{"class":108},[84,32261,10133],{"class":135},[84,32263,139],{"class":108},[84,32265,142],{"class":98},[84,32267,145],{"class":90},[84,32269,4320],{"class":135},[84,32271,18994],{"class":90},[84,32273,32274,32276,32278],{"class":86,"line":154},[84,32275,274],{"class":90},[84,32277,95],{"class":94},[84,32279,102],{"class":90},[84,32281,32282],{"class":86,"line":159},[84,32283,126],{"emptyLinePlaceholder":125},[84,32285,32286,32288,32290],{"class":86,"line":178},[84,32287,91],{"class":90},[84,32289,291],{"class":94},[84,32291,102],{"class":90},[84,32293,32295,32297,32299,32301,32303,32305,32308,32310],{"class":32294,"line":190},[86,10151],[84,32296,299],{"class":90},[84,32298,302],{"class":94},[84,32300,305],{"class":98},[84,32302,184],{"class":90},[84,32304,13204],{"class":118},[84,32306,32307],{"class":90},">Clicks: {{ count }}\u003C\u002F",[84,32309,302],{"class":94},[84,32311,102],{"class":90},[84,32313,32314,32316,32318],{"class":86,"line":196},[84,32315,274],{"class":90},[84,32317,291],{"class":94},[84,32319,102],{"class":90},[74,32321,32324],{"className":76,"code":32322,"filename":1782,"highlights":32323,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      count: 0,\n    };\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"count++\">Clicks: {{ count }}\u003C\u002Fbutton>\n\u003C\u002Ftemplate>\n",[154,227],[22,32325,32326,32340,32348,32354,32360,32370,32374,32378,32382,32390,32394,32402,32421],{"__ignoreMap":80},[84,32327,32328,32330,32332,32334,32336,32338],{"class":86,"line":87},[84,32329,91],{"class":90},[84,32331,95],{"class":94},[84,32333,1161],{"class":98},[84,32335,184],{"class":90},[84,32337,1166],{"class":118},[84,32339,102],{"class":90},[84,32341,32342,32344,32346],{"class":86,"line":105},[84,32343,418],{"class":108},[84,32345,1870],{"class":108},[84,32347,175],{"class":90},[84,32349,32350,32352],{"class":86,"line":122},[84,32351,1896],{"class":98},[84,32353,1307],{"class":90},[84,32355,32356,32358],{"class":86,"line":129},[84,32357,1903],{"class":108},[84,32359,175],{"class":90},[84,32361,32363,32366,32368],{"class":32362,"line":154},[86,10151],[84,32364,32365],{"class":90},"      count: ",[84,32367,4320],{"class":135},[84,32369,1887],{"class":90},[84,32371,32372],{"class":86,"line":159},[84,32373,19195],{"class":90},[84,32375,32376],{"class":86,"line":178},[84,32377,1941],{"class":90},[84,32379,32380],{"class":86,"line":190},[84,32381,18973],{"class":90},[84,32383,32384,32386,32388],{"class":86,"line":196},[84,32385,274],{"class":90},[84,32387,95],{"class":94},[84,32389,102],{"class":90},[84,32391,32392],{"class":86,"line":201},[84,32393,126],{"emptyLinePlaceholder":125},[84,32395,32396,32398,32400],{"class":86,"line":217},[84,32397,91],{"class":90},[84,32399,291],{"class":94},[84,32401,102],{"class":90},[84,32403,32405,32407,32409,32411,32413,32415,32417,32419],{"class":32404,"line":227},[86,10151],[84,32406,299],{"class":90},[84,32408,302],{"class":94},[84,32410,305],{"class":98},[84,32412,184],{"class":90},[84,32414,13204],{"class":118},[84,32416,32307],{"class":90},[84,32418,302],{"class":94},[84,32420,102],{"class":90},[84,32422,32423,32425,32427],{"class":86,"line":232},[84,32424,274],{"class":90},[84,32426,291],{"class":94},[84,32428,102],{"class":90},[1074,32430,32432,32433],{"id":32431},"_2-submit-de-formulario-con-prevent","2) Submit de formulario con ",[22,32434,31785],{},[74,32436,32439],{"className":76,"code":32437,"filename":873,"highlights":32438,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\nconst email = ref(\"\");\n\nfunction submitForm() {\n  if (!email.value.trim()) return;\n  console.log(\"Enviar:\", email.value);\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cform @submit.prevent=\"submitForm\">\n    \u003Cinput v-model=\"email\" type=\"email\" placeholder=\"tu@email.com\" \u002F>\n    \u003Cbutton type=\"submit\">Enviar\u003C\u002Fbutton>\n  \u003C\u002Fform>\n\u003C\u002Ftemplate>\n",[232],[22,32440,32441,32457,32469,32473,32490,32494,32503,32523,32537,32541,32549,32553,32561,32578,32607,32627,32635],{"__ignoreMap":80},[84,32442,32443,32445,32447,32449,32451,32453,32455],{"class":86,"line":87},[84,32444,91],{"class":90},[84,32446,95],{"class":94},[84,32448,99],{"class":98},[84,32450,1161],{"class":98},[84,32452,184],{"class":90},[84,32454,1166],{"class":118},[84,32456,102],{"class":90},[84,32458,32459,32461,32463,32465,32467],{"class":86,"line":105},[84,32460,109],{"class":108},[84,32462,112],{"class":90},[84,32464,115],{"class":108},[84,32466,18866],{"class":118},[84,32468,18869],{"class":90},[84,32470,32471],{"class":86,"line":122},[84,32472,126],{"emptyLinePlaceholder":125},[84,32474,32475,32477,32480,32482,32484,32486,32488],{"class":86,"line":129},[84,32476,132],{"class":108},[84,32478,32479],{"class":135}," email",[84,32481,139],{"class":108},[84,32483,142],{"class":98},[84,32485,145],{"class":90},[84,32487,26013],{"class":118},[84,32489,18994],{"class":90},[84,32491,32492],{"class":86,"line":154},[84,32493,126],{"emptyLinePlaceholder":125},[84,32495,32496,32498,32501],{"class":86,"line":159},[84,32497,3246],{"class":108},[84,32499,32500],{"class":98}," submitForm",[84,32502,1307],{"class":90},[84,32504,32505,32507,32509,32511,32514,32517,32519,32521],{"class":86,"line":178},[84,32506,1338],{"class":108},[84,32508,1341],{"class":90},[84,32510,1344],{"class":108},[84,32512,32513],{"class":90},"email.value.",[84,32515,32516],{"class":98},"trim",[84,32518,1394],{"class":90},[84,32520,19063],{"class":108},[84,32522,18869],{"class":90},[84,32524,32525,32527,32529,32531,32534],{"class":86,"line":190},[84,32526,3135],{"class":90},[84,32528,3138],{"class":98},[84,32530,145],{"class":90},[84,32532,32533],{"class":118},"\"Enviar:\"",[84,32535,32536],{"class":90},", email.value);\n",[84,32538,32539],{"class":86,"line":196},[84,32540,193],{"class":90},[84,32542,32543,32545,32547],{"class":86,"line":201},[84,32544,274],{"class":90},[84,32546,95],{"class":94},[84,32548,102],{"class":90},[84,32550,32551],{"class":86,"line":217},[84,32552,126],{"emptyLinePlaceholder":125},[84,32554,32555,32557,32559],{"class":86,"line":227},[84,32556,91],{"class":90},[84,32558,291],{"class":94},[84,32560,102],{"class":90},[84,32562,32564,32566,32568,32571,32573,32576],{"class":32563,"line":232},[86,10151],[84,32565,299],{"class":90},[84,32567,31973],{"class":94},[84,32569,32570],{"class":98}," @submit.prevent",[84,32572,184],{"class":90},[84,32574,32575],{"class":118},"\"submitForm\"",[84,32577,102],{"class":90},[84,32579,32580,32582,32584,32586,32588,32591,32593,32595,32597,32600,32602,32605],{"class":86,"line":237},[84,32581,1642],{"class":90},[84,32583,18759],{"class":94},[84,32585,24454],{"class":98},[84,32587,184],{"class":90},[84,32589,32590],{"class":118},"\"email\"",[84,32592,5046],{"class":98},[84,32594,184],{"class":90},[84,32596,32590],{"class":118},[84,32598,32599],{"class":98}," placeholder",[84,32601,184],{"class":90},[84,32603,32604],{"class":118},"\"tu@email.com\"",[84,32606,5100],{"class":90},[84,32608,32609,32611,32613,32615,32617,32620,32623,32625],{"class":86,"line":253},[84,32610,1642],{"class":90},[84,32612,302],{"class":94},[84,32614,5046],{"class":98},[84,32616,184],{"class":90},[84,32618,32619],{"class":118},"\"submit\"",[84,32621,32622],{"class":90},">Enviar\u003C\u002F",[84,32624,302],{"class":94},[84,32626,102],{"class":90},[84,32628,32629,32631,32633],{"class":86,"line":266},[84,32630,324],{"class":90},[84,32632,31973],{"class":94},[84,32634,102],{"class":90},[84,32636,32637,32639,32641],{"class":86,"line":271},[84,32638,274],{"class":90},[84,32640,291],{"class":94},[84,32642,102],{"class":90},[74,32644,32647],{"className":76,"code":32645,"filename":1782,"highlights":32646,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      email: \"\",\n    };\n  },\n  methods: {\n    submitForm() {\n      if (!this.email.trim()) return;\n      console.log(\"Enviar:\", this.email);\n    },\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cform @submit.prevent=\"submitForm\">\n    \u003Cinput v-model=\"email\" type=\"email\" placeholder=\"tu@email.com\" \u002F>\n    \u003Cbutton type=\"submit\">Enviar\u003C\u002Fbutton>\n  \u003C\u002Fform>\n\u003C\u002Ftemplate>\n",[281],[22,32648,32649,32663,32671,32677,32683,32692,32696,32700,32704,32711,32732,32749,32753,32757,32761,32769,32773,32781,32796,32822,32840,32848],{"__ignoreMap":80},[84,32650,32651,32653,32655,32657,32659,32661],{"class":86,"line":87},[84,32652,91],{"class":90},[84,32654,95],{"class":94},[84,32656,1161],{"class":98},[84,32658,184],{"class":90},[84,32660,1166],{"class":118},[84,32662,102],{"class":90},[84,32664,32665,32667,32669],{"class":86,"line":105},[84,32666,418],{"class":108},[84,32668,1870],{"class":108},[84,32670,175],{"class":90},[84,32672,32673,32675],{"class":86,"line":122},[84,32674,1896],{"class":98},[84,32676,1307],{"class":90},[84,32678,32679,32681],{"class":86,"line":129},[84,32680,1903],{"class":108},[84,32682,175],{"class":90},[84,32684,32685,32688,32690],{"class":86,"line":154},[84,32686,32687],{"class":90},"      email: ",[84,32689,26013],{"class":118},[84,32691,1887],{"class":90},[84,32693,32694],{"class":86,"line":159},[84,32695,19195],{"class":90},[84,32697,32698],{"class":86,"line":178},[84,32699,1941],{"class":90},[84,32701,32702],{"class":86,"line":190},[84,32703,1950],{"class":90},[84,32705,32706,32709],{"class":86,"line":196},[84,32707,32708],{"class":98},"    submitForm",[84,32710,1307],{"class":90},[84,32712,32713,32715,32717,32719,32721,32724,32726,32728,32730],{"class":86,"line":201},[84,32714,1987],{"class":108},[84,32716,1341],{"class":90},[84,32718,1344],{"class":108},[84,32720,2151],{"class":135},[84,32722,32723],{"class":90},".email.",[84,32725,32516],{"class":98},[84,32727,1394],{"class":90},[84,32729,19063],{"class":108},[84,32731,18869],{"class":90},[84,32733,32734,32736,32738,32740,32742,32744,32746],{"class":86,"line":217},[84,32735,15261],{"class":90},[84,32737,3138],{"class":98},[84,32739,145],{"class":90},[84,32741,32533],{"class":118},[84,32743,754],{"class":90},[84,32745,2151],{"class":135},[84,32747,32748],{"class":90},".email);\n",[84,32750,32751],{"class":86,"line":227},[84,32752,7783],{"class":90},[84,32754,32755],{"class":86,"line":232},[84,32756,1941],{"class":90},[84,32758,32759],{"class":86,"line":237},[84,32760,18973],{"class":90},[84,32762,32763,32765,32767],{"class":86,"line":253},[84,32764,274],{"class":90},[84,32766,95],{"class":94},[84,32768,102],{"class":90},[84,32770,32771],{"class":86,"line":266},[84,32772,126],{"emptyLinePlaceholder":125},[84,32774,32775,32777,32779],{"class":86,"line":271},[84,32776,91],{"class":90},[84,32778,291],{"class":94},[84,32780,102],{"class":90},[84,32782,32784,32786,32788,32790,32792,32794],{"class":32783,"line":281},[86,10151],[84,32785,299],{"class":90},[84,32787,31973],{"class":94},[84,32789,32570],{"class":98},[84,32791,184],{"class":90},[84,32793,32575],{"class":118},[84,32795,102],{"class":90},[84,32797,32798,32800,32802,32804,32806,32808,32810,32812,32814,32816,32818,32820],{"class":86,"line":286},[84,32799,1642],{"class":90},[84,32801,18759],{"class":94},[84,32803,24454],{"class":98},[84,32805,184],{"class":90},[84,32807,32590],{"class":118},[84,32809,5046],{"class":98},[84,32811,184],{"class":90},[84,32813,32590],{"class":118},[84,32815,32599],{"class":98},[84,32817,184],{"class":90},[84,32819,32604],{"class":118},[84,32821,5100],{"class":90},[84,32823,32824,32826,32828,32830,32832,32834,32836,32838],{"class":86,"line":296},[84,32825,1642],{"class":90},[84,32827,302],{"class":94},[84,32829,5046],{"class":98},[84,32831,184],{"class":90},[84,32833,32619],{"class":118},[84,32835,32622],{"class":90},[84,32837,302],{"class":94},[84,32839,102],{"class":90},[84,32841,32842,32844,32846],{"class":86,"line":315},[84,32843,324],{"class":90},[84,32845,31973],{"class":94},[84,32847,102],{"class":90},[84,32849,32850,32852,32854],{"class":86,"line":321},[84,32851,274],{"class":90},[84,32853,291],{"class":94},[84,32855,102],{"class":90},[1074,32857,32859],{"id":32858},"_3-atajo-de-teclado-con-modificadores","3) Atajo de teclado con modificadores",[74,32861,32864],{"className":76,"code":32862,"filename":873,"highlights":32863,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\nconst note = ref(\"\");\n\nfunction saveDraft() {\n  console.log(\"Borrador guardado:\", note.value);\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Ctextarea v-model=\"note\" @keydown.ctrl.enter.prevent=\"saveDraft\" \u002F>\n\u003C\u002Ftemplate>\n",[227],[22,32865,32866,32882,32894,32898,32915,32919,32928,32942,32946,32954,32958,32966,32993],{"__ignoreMap":80},[84,32867,32868,32870,32872,32874,32876,32878,32880],{"class":86,"line":87},[84,32869,91],{"class":90},[84,32871,95],{"class":94},[84,32873,99],{"class":98},[84,32875,1161],{"class":98},[84,32877,184],{"class":90},[84,32879,1166],{"class":118},[84,32881,102],{"class":90},[84,32883,32884,32886,32888,32890,32892],{"class":86,"line":105},[84,32885,109],{"class":108},[84,32887,112],{"class":90},[84,32889,115],{"class":108},[84,32891,18866],{"class":118},[84,32893,18869],{"class":90},[84,32895,32896],{"class":86,"line":122},[84,32897,126],{"emptyLinePlaceholder":125},[84,32899,32900,32902,32905,32907,32909,32911,32913],{"class":86,"line":129},[84,32901,132],{"class":108},[84,32903,32904],{"class":135}," note",[84,32906,139],{"class":108},[84,32908,142],{"class":98},[84,32910,145],{"class":90},[84,32912,26013],{"class":118},[84,32914,18994],{"class":90},[84,32916,32917],{"class":86,"line":154},[84,32918,126],{"emptyLinePlaceholder":125},[84,32920,32921,32923,32926],{"class":86,"line":159},[84,32922,3246],{"class":108},[84,32924,32925],{"class":98}," saveDraft",[84,32927,1307],{"class":90},[84,32929,32930,32932,32934,32936,32939],{"class":86,"line":178},[84,32931,3135],{"class":90},[84,32933,3138],{"class":98},[84,32935,145],{"class":90},[84,32937,32938],{"class":118},"\"Borrador guardado:\"",[84,32940,32941],{"class":90},", note.value);\n",[84,32943,32944],{"class":86,"line":190},[84,32945,193],{"class":90},[84,32947,32948,32950,32952],{"class":86,"line":196},[84,32949,274],{"class":90},[84,32951,95],{"class":94},[84,32953,102],{"class":90},[84,32955,32956],{"class":86,"line":201},[84,32957,126],{"emptyLinePlaceholder":125},[84,32959,32960,32962,32964],{"class":86,"line":217},[84,32961,91],{"class":90},[84,32963,291],{"class":94},[84,32965,102],{"class":90},[84,32967,32969,32971,32974,32976,32978,32981,32984,32986,32989,32991],{"class":32968,"line":227},[86,10151],[84,32970,299],{"class":90},[84,32972,32973],{"class":94},"textarea",[84,32975,24454],{"class":98},[84,32977,184],{"class":90},[84,32979,32980],{"class":118},"\"note\"",[84,32982,32983],{"class":98}," @keydown.ctrl.enter.prevent",[84,32985,184],{"class":90},[84,32987,32988],{"class":118},"\"saveDraft\"",[84,32990,26642],{"class":26641},[84,32992,102],{"class":90},[84,32994,32995,32997,32999],{"class":86,"line":232},[84,32996,274],{"class":90},[84,32998,291],{"class":94},[84,33000,102],{"class":90},[74,33002,33005],{"className":76,"code":33003,"filename":1782,"highlights":33004,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      note: \"\",\n    };\n  },\n  methods: {\n    saveDraft() {\n      console.log(\"Borrador guardado:\", this.note);\n    },\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Ctextarea v-model=\"note\" @keydown.ctrl.enter.prevent=\"saveDraft\" \u002F>\n\u003C\u002Ftemplate>\n",[271],[22,33006,33007,33021,33029,33035,33041,33050,33054,33058,33062,33069,33086,33090,33094,33098,33106,33110,33118,33141],{"__ignoreMap":80},[84,33008,33009,33011,33013,33015,33017,33019],{"class":86,"line":87},[84,33010,91],{"class":90},[84,33012,95],{"class":94},[84,33014,1161],{"class":98},[84,33016,184],{"class":90},[84,33018,1166],{"class":118},[84,33020,102],{"class":90},[84,33022,33023,33025,33027],{"class":86,"line":105},[84,33024,418],{"class":108},[84,33026,1870],{"class":108},[84,33028,175],{"class":90},[84,33030,33031,33033],{"class":86,"line":122},[84,33032,1896],{"class":98},[84,33034,1307],{"class":90},[84,33036,33037,33039],{"class":86,"line":129},[84,33038,1903],{"class":108},[84,33040,175],{"class":90},[84,33042,33043,33046,33048],{"class":86,"line":154},[84,33044,33045],{"class":90},"      note: ",[84,33047,26013],{"class":118},[84,33049,1887],{"class":90},[84,33051,33052],{"class":86,"line":159},[84,33053,19195],{"class":90},[84,33055,33056],{"class":86,"line":178},[84,33057,1941],{"class":90},[84,33059,33060],{"class":86,"line":190},[84,33061,1950],{"class":90},[84,33063,33064,33067],{"class":86,"line":196},[84,33065,33066],{"class":98},"    saveDraft",[84,33068,1307],{"class":90},[84,33070,33071,33073,33075,33077,33079,33081,33083],{"class":86,"line":201},[84,33072,15261],{"class":90},[84,33074,3138],{"class":98},[84,33076,145],{"class":90},[84,33078,32938],{"class":118},[84,33080,754],{"class":90},[84,33082,2151],{"class":135},[84,33084,33085],{"class":90},".note);\n",[84,33087,33088],{"class":86,"line":217},[84,33089,7783],{"class":90},[84,33091,33092],{"class":86,"line":227},[84,33093,1941],{"class":90},[84,33095,33096],{"class":86,"line":232},[84,33097,18973],{"class":90},[84,33099,33100,33102,33104],{"class":86,"line":237},[84,33101,274],{"class":90},[84,33103,95],{"class":94},[84,33105,102],{"class":90},[84,33107,33108],{"class":86,"line":253},[84,33109,126],{"emptyLinePlaceholder":125},[84,33111,33112,33114,33116],{"class":86,"line":266},[84,33113,91],{"class":90},[84,33115,291],{"class":94},[84,33117,102],{"class":90},[84,33119,33121,33123,33125,33127,33129,33131,33133,33135,33137,33139],{"class":33120,"line":271},[86,10151],[84,33122,299],{"class":90},[84,33124,32973],{"class":94},[84,33126,24454],{"class":98},[84,33128,184],{"class":90},[84,33130,32980],{"class":118},[84,33132,32983],{"class":98},[84,33134,184],{"class":90},[84,33136,32988],{"class":118},[84,33138,26642],{"class":26641},[84,33140,102],{"class":90},[84,33142,33143,33145,33147],{"class":86,"line":281},[84,33144,274],{"class":90},[84,33146,291],{"class":94},[84,33148,102],{"class":90},[1074,33150,33152],{"id":33151},"_4-evento-personalizado-desde-un-componente-hijo","4) Evento personalizado desde un componente hijo",[74,33154,33157],{"className":76,"code":33155,"filename":873,"highlights":33156,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport TaskForm from \".\u002FTaskForm.vue\";\n\nfunction handleSave(taskTitle: string) {\n  console.log(\"Nueva tarea:\", taskTitle);\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003CTaskForm @save=\"handleSave\" \u002F>\n\u003C\u002Ftemplate>\n",[129,201],[22,33158,33159,33175,33189,33193,33212,33226,33230,33238,33242,33250,33268],{"__ignoreMap":80},[84,33160,33161,33163,33165,33167,33169,33171,33173],{"class":86,"line":87},[84,33162,91],{"class":90},[84,33164,95],{"class":94},[84,33166,99],{"class":98},[84,33168,1161],{"class":98},[84,33170,184],{"class":90},[84,33172,1166],{"class":118},[84,33174,102],{"class":90},[84,33176,33177,33179,33182,33184,33187],{"class":86,"line":105},[84,33178,109],{"class":108},[84,33180,33181],{"class":90}," TaskForm ",[84,33183,115],{"class":108},[84,33185,33186],{"class":118}," \".\u002FTaskForm.vue\"",[84,33188,18869],{"class":90},[84,33190,33191],{"class":86,"line":122},[84,33192,126],{"emptyLinePlaceholder":125},[84,33194,33196,33198,33201,33203,33206,33208,33210],{"class":33195,"line":129},[86,10151],[84,33197,3246],{"class":108},[84,33199,33200],{"class":98}," handleSave",[84,33202,145],{"class":90},[84,33204,33205],{"class":429},"taskTitle",[84,33207,1203],{"class":108},[84,33209,22085],{"class":135},[84,33211,438],{"class":90},[84,33213,33214,33216,33218,33220,33223],{"class":86,"line":154},[84,33215,3135],{"class":90},[84,33217,3138],{"class":98},[84,33219,145],{"class":90},[84,33221,33222],{"class":118},"\"Nueva tarea:\"",[84,33224,33225],{"class":90},", taskTitle);\n",[84,33227,33228],{"class":86,"line":159},[84,33229,193],{"class":90},[84,33231,33232,33234,33236],{"class":86,"line":178},[84,33233,274],{"class":90},[84,33235,95],{"class":94},[84,33237,102],{"class":90},[84,33239,33240],{"class":86,"line":190},[84,33241,126],{"emptyLinePlaceholder":125},[84,33243,33244,33246,33248],{"class":86,"line":196},[84,33245,91],{"class":90},[84,33247,291],{"class":94},[84,33249,102],{"class":90},[84,33251,33253,33255,33258,33261,33263,33266],{"class":33252,"line":201},[86,10151],[84,33254,299],{"class":90},[84,33256,33257],{"class":94},"TaskForm",[84,33259,33260],{"class":98}," @save",[84,33262,184],{"class":90},[84,33264,33265],{"class":118},"\"handleSave\"",[84,33267,5100],{"class":90},[84,33269,33270,33272,33274],{"class":86,"line":217},[84,33271,274],{"class":90},[84,33273,291],{"class":94},[84,33275,102],{"class":90},[74,33277,33280],{"className":76,"code":33278,"filename":1782,"highlights":33279,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nimport TaskForm from \".\u002FTaskForm.vue\";\n\nexport default {\n  components: { TaskForm },\n  methods: {\n    handleSave(taskTitle) {\n      console.log(\"Nueva tarea:\", taskTitle);\n    },\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003CTaskForm @save=\"handleSave\" \u002F>\n\u003C\u002Ftemplate>\n",[159,237],[22,33281,33282,33296,33308,33312,33320,33325,33330,33341,33353,33357,33361,33365,33373,33377,33386,33400],{"__ignoreMap":80},[84,33283,33284,33286,33288,33290,33292,33294],{"class":86,"line":87},[84,33285,91],{"class":90},[84,33287,95],{"class":94},[84,33289,1161],{"class":98},[84,33291,184],{"class":90},[84,33293,1166],{"class":118},[84,33295,102],{"class":90},[84,33297,33298,33300,33302,33304,33306],{"class":86,"line":105},[84,33299,109],{"class":108},[84,33301,33181],{"class":90},[84,33303,115],{"class":108},[84,33305,33186],{"class":118},[84,33307,18869],{"class":90},[84,33309,33310],{"class":86,"line":122},[84,33311,126],{"emptyLinePlaceholder":125},[84,33313,33314,33316,33318],{"class":86,"line":129},[84,33315,418],{"class":108},[84,33317,1870],{"class":108},[84,33319,175],{"class":90},[84,33321,33322],{"class":86,"line":154},[84,33323,33324],{"class":90},"  components: { TaskForm },\n",[84,33326,33328],{"class":33327,"line":159},[86,10151],[84,33329,1950],{"class":90},[84,33331,33332,33335,33337,33339],{"class":86,"line":178},[84,33333,33334],{"class":98},"    handleSave",[84,33336,145],{"class":90},[84,33338,33205],{"class":429},[84,33340,438],{"class":90},[84,33342,33343,33345,33347,33349,33351],{"class":86,"line":190},[84,33344,15261],{"class":90},[84,33346,3138],{"class":98},[84,33348,145],{"class":90},[84,33350,33222],{"class":118},[84,33352,33225],{"class":90},[84,33354,33355],{"class":86,"line":196},[84,33356,7783],{"class":90},[84,33358,33359],{"class":86,"line":201},[84,33360,1941],{"class":90},[84,33362,33363],{"class":86,"line":217},[84,33364,18973],{"class":90},[84,33366,33367,33369,33371],{"class":86,"line":227},[84,33368,274],{"class":90},[84,33370,95],{"class":94},[84,33372,102],{"class":90},[84,33374,33375],{"class":86,"line":232},[84,33376,126],{"emptyLinePlaceholder":125},[84,33378,33380,33382,33384],{"class":33379,"line":237},[86,10151],[84,33381,91],{"class":90},[84,33383,291],{"class":94},[84,33385,102],{"class":90},[84,33387,33388,33390,33392,33394,33396,33398],{"class":86,"line":253},[84,33389,299],{"class":90},[84,33391,33257],{"class":94},[84,33393,33260],{"class":98},[84,33395,184],{"class":90},[84,33397,33265],{"class":118},[84,33399,5100],{"class":90},[84,33401,33402,33404,33406],{"class":86,"line":266},[84,33403,274],{"class":90},[84,33405,291],{"class":94},[84,33407,102],{"class":90},[34,33409,2766],{"id":2765},[15,33411,33412],{},"Componente de lista de tareas con:",[737,33414,33415,33421,33426],{},[740,33416,33417,33420],{},[22,33418,33419],{},"@submit.prevent"," para crear tareas.",[740,33422,33423,33425],{},[22,33424,25481],{}," para marcar como completada.",[740,33427,33428,33431],{},[22,33429,33430],{},"@keydown.enter"," para envío rápido.",[74,33433,33435],{"className":76,"code":33434,"filename":873,"language":79,"meta":80,"style":80},"\u003Cscript setup lang=\"ts\">\nimport { computed, ref } from \"vue\";\n\ntype Task = {\n  id: number;\n  title: string;\n  done: boolean;\n};\n\nconst draft = ref(\"\");\nconst tasks = ref\u003CTask[]>([]);\n\nconst remaining = computed(() => tasks.value.filter((task) => !task.done).length);\n\nfunction addTask() {\n  const title = draft.value.trim();\n  if (!title) return;\n\n  tasks.value.push({\n    id: Date.now(),\n    title,\n    done: false,\n  });\n  draft.value = \"\";\n}\n\nfunction toggleTask(id: number) {\n  const task = tasks.value.find((item) => item.id === id);\n  if (!task) return;\n  task.done = !task.done;\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection>\n    \u003Ch2>Tareas\u003C\u002Fh2>\n    \u003Cp>Pendientes: {{ remaining }}\u003C\u002Fp>\n\n    \u003Cform @submit.prevent=\"addTask\">\n      \u003Cinput\n        v-model=\"draft\"\n        type=\"text\"\n        placeholder=\"Escribe una tarea y pulsa Enter\"\n        @keydown.enter.prevent=\"addTask\"\n      \u002F>\n      \u003Cbutton type=\"submit\">Agregar\u003C\u002Fbutton>\n    \u003C\u002Fform>\n\n    \u003Cul>\n      \u003Cli v-for=\"task in tasks\" :key=\"task.id\">\n        \u003Cbutton @click=\"toggleTask(task.id)\">\n          {{ task.done ? \"Reabrir\" : \"Completar\" }}\n        \u003C\u002Fbutton>\n        \u003Cspan :style=\"{ textDecoration: task.done ? 'line-through' : 'none' }\">\n          {{ task.title }}\n        \u003C\u002Fspan>\n      \u003C\u002Fli>\n    \u003C\u002Ful>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[22,33436,33437,33453,33465,33469,33479,33489,33499,33509,33513,33517,33534,33551,33555,33591,33595,33604,33620,33635,33639,33648,33656,33661,33670,33675,33687,33691,33695,33711,33738,33752,33763,33767,33775,33779,33787,33795,33808,33821,33825,33840,33846,33856,33865,33875,33885,33890,33909,33917,33921,33929,33951,33966,33971,33979,33995,34000,34008,34016,34024,34032],{"__ignoreMap":80},[84,33438,33439,33441,33443,33445,33447,33449,33451],{"class":86,"line":87},[84,33440,91],{"class":90},[84,33442,95],{"class":94},[84,33444,99],{"class":98},[84,33446,1161],{"class":98},[84,33448,184],{"class":90},[84,33450,1166],{"class":118},[84,33452,102],{"class":90},[84,33454,33455,33457,33459,33461,33463],{"class":86,"line":105},[84,33456,109],{"class":108},[84,33458,24087],{"class":90},[84,33460,115],{"class":108},[84,33462,18866],{"class":118},[84,33464,18869],{"class":90},[84,33466,33467],{"class":86,"line":122},[84,33468,126],{"emptyLinePlaceholder":125},[84,33470,33471,33473,33475,33477],{"class":86,"line":129},[84,33472,1188],{"class":108},[84,33474,6398],{"class":98},[84,33476,139],{"class":108},[84,33478,175],{"class":90},[84,33480,33481,33483,33485,33487],{"class":86,"line":154},[84,33482,1200],{"class":429},[84,33484,1203],{"class":108},[84,33486,3259],{"class":135},[84,33488,18869],{"class":90},[84,33490,33491,33493,33495,33497],{"class":86,"line":159},[84,33492,6415],{"class":429},[84,33494,1203],{"class":108},[84,33496,22085],{"class":135},[84,33498,18869],{"class":90},[84,33500,33501,33503,33505,33507],{"class":86,"line":178},[84,33502,6424],{"class":429},[84,33504,1203],{"class":108},[84,33506,23256],{"class":135},[84,33508,18869],{"class":90},[84,33510,33511],{"class":86,"line":190},[84,33512,18973],{"class":90},[84,33514,33515],{"class":86,"line":196},[84,33516,126],{"emptyLinePlaceholder":125},[84,33518,33519,33521,33524,33526,33528,33530,33532],{"class":86,"line":201},[84,33520,132],{"class":108},[84,33522,33523],{"class":135}," draft",[84,33525,139],{"class":108},[84,33527,142],{"class":98},[84,33529,145],{"class":90},[84,33531,26013],{"class":118},[84,33533,18994],{"class":90},[84,33535,33536,33538,33540,33542,33544,33546,33548],{"class":86,"line":217},[84,33537,132],{"class":108},[84,33539,2887],{"class":135},[84,33541,139],{"class":108},[84,33543,142],{"class":98},[84,33545,91],{"class":90},[84,33547,6452],{"class":98},[84,33549,33550],{"class":90},"[]>([]);\n",[84,33552,33553],{"class":86,"line":227},[84,33554,126],{"emptyLinePlaceholder":125},[84,33556,33557,33559,33562,33564,33566,33568,33570,33572,33574,33576,33578,33580,33582,33584,33587,33589],{"class":86,"line":232},[84,33558,132],{"class":108},[84,33560,33561],{"class":135}," remaining",[84,33563,139],{"class":108},[84,33565,2989],{"class":98},[84,33567,2992],{"class":90},[84,33569,172],{"class":108},[84,33571,3003],{"class":90},[84,33573,3006],{"class":98},[84,33575,3120],{"class":90},[84,33577,3011],{"class":429},[84,33579,3126],{"class":90},[84,33581,172],{"class":108},[84,33583,260],{"class":108},[84,33585,33586],{"class":90},"task.done).",[84,33588,10566],{"class":135},[84,33590,18994],{"class":90},[84,33592,33593],{"class":86,"line":237},[84,33594,126],{"emptyLinePlaceholder":125},[84,33596,33597,33599,33602],{"class":86,"line":253},[84,33598,3246],{"class":108},[84,33600,33601],{"class":98}," addTask",[84,33603,1307],{"class":90},[84,33605,33606,33608,33611,33613,33616,33618],{"class":86,"line":266},[84,33607,443],{"class":108},[84,33609,33610],{"class":135}," title",[84,33612,139],{"class":108},[84,33614,33615],{"class":90}," draft.value.",[84,33617,32516],{"class":98},[84,33619,20137],{"class":90},[84,33621,33622,33624,33626,33628,33631,33633],{"class":86,"line":271},[84,33623,1338],{"class":108},[84,33625,1341],{"class":90},[84,33627,1344],{"class":108},[84,33629,33630],{"class":90},"title) ",[84,33632,19063],{"class":108},[84,33634,18869],{"class":90},[84,33636,33637],{"class":86,"line":281},[84,33638,126],{"emptyLinePlaceholder":125},[84,33640,33641,33644,33646],{"class":86,"line":286},[84,33642,33643],{"class":90},"  tasks.value.",[84,33645,10533],{"class":98},[84,33647,1876],{"class":90},[84,33649,33650,33652,33654],{"class":86,"line":296},[84,33651,10540],{"class":90},[84,33653,10543],{"class":98},[84,33655,10546],{"class":90},[84,33657,33658],{"class":86,"line":315},[84,33659,33660],{"class":90},"    title,\n",[84,33662,33663,33666,33668],{"class":86,"line":321},[84,33664,33665],{"class":90},"    done: ",[84,33667,148],{"class":135},[84,33669,1887],{"class":90},[84,33671,33672],{"class":86,"line":331},[84,33673,33674],{"class":90},"  });\n",[84,33676,33677,33680,33682,33685],{"class":86,"line":336},[84,33678,33679],{"class":90},"  draft.value ",[84,33681,184],{"class":108},[84,33683,33684],{"class":118}," \"\"",[84,33686,18869],{"class":90},[84,33688,33689],{"class":86,"line":354},[84,33690,193],{"class":90},[84,33692,33693],{"class":86,"line":360},[84,33694,126],{"emptyLinePlaceholder":125},[84,33696,33697,33699,33701,33703,33705,33707,33709],{"class":86,"line":369},[84,33698,3246],{"class":108},[84,33700,3249],{"class":98},[84,33702,145],{"class":90},[84,33704,22745],{"class":429},[84,33706,1203],{"class":108},[84,33708,3259],{"class":135},[84,33710,438],{"class":90},[84,33712,33713,33715,33717,33719,33721,33723,33725,33727,33729,33731,33733,33735],{"class":86,"line":1453},[84,33714,443],{"class":108},[84,33716,3268],{"class":135},[84,33718,139],{"class":108},[84,33720,3003],{"class":90},[84,33722,3275],{"class":98},[84,33724,3120],{"class":90},[84,33726,3280],{"class":429},[84,33728,3126],{"class":90},[84,33730,172],{"class":108},[84,33732,3285],{"class":90},[84,33734,3288],{"class":108},[84,33736,33737],{"class":90}," id);\n",[84,33739,33740,33742,33744,33746,33748,33750],{"class":86,"line":1462},[84,33741,1338],{"class":108},[84,33743,1341],{"class":90},[84,33745,1344],{"class":108},[84,33747,3306],{"class":90},[84,33749,19063],{"class":108},[84,33751,18869],{"class":90},[84,33753,33754,33756,33758,33760],{"class":86,"line":1484},[84,33755,3317],{"class":90},[84,33757,184],{"class":108},[84,33759,260],{"class":108},[84,33761,33762],{"class":90},"task.done;\n",[84,33764,33765],{"class":86,"line":1489},[84,33766,193],{"class":90},[84,33768,33769,33771,33773],{"class":86,"line":1495},[84,33770,274],{"class":90},[84,33772,95],{"class":94},[84,33774,102],{"class":90},[84,33776,33777],{"class":86,"line":1500},[84,33778,126],{"emptyLinePlaceholder":125},[84,33780,33781,33783,33785],{"class":86,"line":1516},[84,33782,91],{"class":90},[84,33784,291],{"class":94},[84,33786,102],{"class":90},[84,33788,33789,33791,33793],{"class":86,"line":1533},[84,33790,299],{"class":90},[84,33792,4898],{"class":94},[84,33794,102],{"class":90},[84,33796,33797,33799,33801,33804,33806],{"class":86,"line":1538},[84,33798,1642],{"class":90},[84,33800,34],{"class":94},[84,33802,33803],{"class":90},">Tareas\u003C\u002F",[84,33805,34],{"class":94},[84,33807,102],{"class":90},[84,33809,33810,33812,33814,33817,33819],{"class":86,"line":1545},[84,33811,1642],{"class":90},[84,33813,15],{"class":94},[84,33815,33816],{"class":90},">Pendientes: {{ remaining }}\u003C\u002F",[84,33818,15],{"class":94},[84,33820,102],{"class":90},[84,33822,33823],{"class":86,"line":1554},[84,33824,126],{"emptyLinePlaceholder":125},[84,33826,33827,33829,33831,33833,33835,33838],{"class":86,"line":1563},[84,33828,1642],{"class":90},[84,33830,31973],{"class":94},[84,33832,32570],{"class":98},[84,33834,184],{"class":90},[84,33836,33837],{"class":118},"\"addTask\"",[84,33839,102],{"class":90},[84,33841,33842,33844],{"class":86,"line":1570},[84,33843,1691],{"class":90},[84,33845,12295],{"class":94},[84,33847,33848,33851,33853],{"class":86,"line":1588},[84,33849,33850],{"class":98},"        v-model",[84,33852,184],{"class":90},[84,33854,33855],{"class":118},"\"draft\"\n",[84,33857,33858,33861,33863],{"class":86,"line":1593},[84,33859,33860],{"class":98},"        type",[84,33862,184],{"class":90},[84,33864,30155],{"class":118},[84,33866,33867,33870,33872],{"class":86,"line":1598},[84,33868,33869],{"class":98},"        placeholder",[84,33871,184],{"class":90},[84,33873,33874],{"class":118},"\"Escribe una tarea y pulsa Enter\"\n",[84,33876,33877,33880,33882],{"class":86,"line":1607},[84,33878,33879],{"class":98},"        @keydown.enter.prevent",[84,33881,184],{"class":90},[84,33883,33884],{"class":118},"\"addTask\"\n",[84,33886,33887],{"class":86,"line":1612},[84,33888,33889],{"class":90},"      \u002F>\n",[84,33891,33892,33894,33896,33898,33900,33902,33905,33907],{"class":86,"line":1621},[84,33893,1691],{"class":90},[84,33895,302],{"class":94},[84,33897,5046],{"class":98},[84,33899,184],{"class":90},[84,33901,32619],{"class":118},[84,33903,33904],{"class":90},">Agregar\u003C\u002F",[84,33906,302],{"class":94},[84,33908,102],{"class":90},[84,33910,33911,33913,33915],{"class":86,"line":1639},[84,33912,1734],{"class":90},[84,33914,31973],{"class":94},[84,33916,102],{"class":90},[84,33918,33919],{"class":86,"line":1661},[84,33920,126],{"emptyLinePlaceholder":125},[84,33922,33923,33925,33927],{"class":86,"line":1666},[84,33924,1642],{"class":90},[84,33926,737],{"class":94},[84,33928,102],{"class":90},[84,33930,33931,33933,33935,33937,33939,33942,33944,33946,33949],{"class":86,"line":1688},[84,33932,1691],{"class":90},[84,33934,740],{"class":94},[84,33936,13525],{"class":98},[84,33938,184],{"class":90},[84,33940,33941],{"class":118},"\"task in tasks\"",[84,33943,5092],{"class":98},[84,33945,184],{"class":90},[84,33947,33948],{"class":118},"\"task.id\"",[84,33950,102],{"class":90},[84,33952,33953,33955,33957,33959,33961,33964],{"class":86,"line":1703},[84,33954,27377],{"class":90},[84,33956,302],{"class":94},[84,33958,305],{"class":98},[84,33960,184],{"class":90},[84,33962,33963],{"class":118},"\"toggleTask(task.id)\"",[84,33965,102],{"class":90},[84,33967,33968],{"class":86,"line":1717},[84,33969,33970],{"class":90},"          {{ task.done ? \"Reabrir\" : \"Completar\" }}\n",[84,33972,33973,33975,33977],{"class":86,"line":1731},[84,33974,27425],{"class":90},[84,33976,302],{"class":94},[84,33978,102],{"class":90},[84,33980,33981,33983,33985,33988,33990,33993],{"class":86,"line":1741},[84,33982,27377],{"class":90},[84,33984,84],{"class":94},[84,33986,33987],{"class":98}," :style",[84,33989,184],{"class":90},[84,33991,33992],{"class":118},"\"{ textDecoration: task.done ? 'line-through' : 'none' }\"",[84,33994,102],{"class":90},[84,33996,33997],{"class":86,"line":1746},[84,33998,33999],{"class":90},"          {{ task.title }}\n",[84,34001,34002,34004,34006],{"class":86,"line":1763},[84,34003,27425],{"class":90},[84,34005,84],{"class":94},[84,34007,102],{"class":90},[84,34009,34010,34012,34014],{"class":86,"line":1772},[84,34011,4952],{"class":90},[84,34013,740],{"class":94},[84,34015,102],{"class":90},[84,34017,34018,34020,34022],{"class":86,"line":2283},[84,34019,1734],{"class":90},[84,34021,737],{"class":94},[84,34023,102],{"class":90},[84,34025,34026,34028,34030],{"class":86,"line":2288},[84,34027,324],{"class":90},[84,34029,4898],{"class":94},[84,34031,102],{"class":90},[84,34033,34034,34036,34038],{"class":86,"line":2307},[84,34035,274],{"class":90},[84,34037,291],{"class":94},[84,34039,102],{"class":90},[74,34041,34043],{"className":76,"code":34042,"filename":1782,"language":79,"meta":80,"style":80},"\u003Cscript lang=\"ts\">\nexport default {\n  data() {\n    return {\n      draft: \"\",\n      tasks: [],\n    };\n  },\n  computed: {\n    remaining() {\n      return this.tasks.filter((task) => !task.done).length;\n    },\n  },\n  methods: {\n    addTask() {\n      const title = this.draft.trim();\n      if (!title) return;\n\n      this.tasks.push({\n        id: Date.now(),\n        title,\n        done: false,\n      });\n      this.draft = \"\";\n    },\n    toggleTask(id) {\n      const task = this.tasks.find((item) => item.id === id);\n      if (!task) return;\n      task.done = !task.done;\n    },\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection>\n    \u003Ch2>Tareas\u003C\u002Fh2>\n    \u003Cp>Pendientes: {{ remaining }}\u003C\u002Fp>\n\n    \u003Cform @submit.prevent=\"addTask\">\n      \u003Cinput\n        v-model=\"draft\"\n        type=\"text\"\n        placeholder=\"Escribe una tarea y pulsa Enter\"\n        @keydown.enter.prevent=\"addTask\"\n      \u002F>\n      \u003Cbutton type=\"submit\">Agregar\u003C\u002Fbutton>\n    \u003C\u002Fform>\n\n    \u003Cul>\n      \u003Cli v-for=\"task in tasks\" :key=\"task.id\">\n        \u003Cbutton @click=\"toggleTask(task.id)\">\n          {{ task.done ? \"Reabrir\" : \"Completar\" }}\n        \u003C\u002Fbutton>\n        \u003Cspan :style=\"{ textDecoration: task.done ? 'line-through' : 'none' }\">\n          {{ task.title }}\n        \u003C\u002Fspan>\n      \u003C\u002Fli>\n    \u003C\u002Ful>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[22,34044,34045,34059,34067,34073,34079,34088,34092,34096,34100,34104,34111,34137,34141,34145,34149,34156,34173,34187,34191,34201,34209,34214,34223,34227,34240,34244,34254,34282,34296,34306,34310,34314,34318,34326,34330,34338,34346,34358,34370,34374,34388,34394,34402,34410,34418,34426,34430,34448,34456,34460,34468,34488,34502,34506,34514,34528,34532,34540,34548,34556,34564],{"__ignoreMap":80},[84,34046,34047,34049,34051,34053,34055,34057],{"class":86,"line":87},[84,34048,91],{"class":90},[84,34050,95],{"class":94},[84,34052,1161],{"class":98},[84,34054,184],{"class":90},[84,34056,1166],{"class":118},[84,34058,102],{"class":90},[84,34060,34061,34063,34065],{"class":86,"line":105},[84,34062,418],{"class":108},[84,34064,1870],{"class":108},[84,34066,175],{"class":90},[84,34068,34069,34071],{"class":86,"line":122},[84,34070,1896],{"class":98},[84,34072,1307],{"class":90},[84,34074,34075,34077],{"class":86,"line":129},[84,34076,1903],{"class":108},[84,34078,175],{"class":90},[84,34080,34081,34084,34086],{"class":86,"line":154},[84,34082,34083],{"class":90},"      draft: ",[84,34085,26013],{"class":118},[84,34087,1887],{"class":90},[84,34089,34090],{"class":86,"line":159},[84,34091,7373],{"class":90},[84,34093,34094],{"class":86,"line":178},[84,34095,19195],{"class":90},[84,34097,34098],{"class":86,"line":190},[84,34099,1941],{"class":90},[84,34101,34102],{"class":86,"line":196},[84,34103,3527],{"class":90},[84,34105,34106,34109],{"class":86,"line":201},[84,34107,34108],{"class":98},"    remaining",[84,34110,1307],{"class":90},[84,34112,34113,34115,34117,34119,34121,34123,34125,34127,34129,34131,34133,34135],{"class":86,"line":217},[84,34114,3539],{"class":108},[84,34116,2078],{"class":135},[84,34118,3544],{"class":90},[84,34120,3006],{"class":98},[84,34122,3120],{"class":90},[84,34124,3011],{"class":429},[84,34126,3126],{"class":90},[84,34128,172],{"class":108},[84,34130,260],{"class":108},[84,34132,33586],{"class":90},[84,34134,10566],{"class":135},[84,34136,18869],{"class":90},[84,34138,34139],{"class":86,"line":227},[84,34140,7783],{"class":90},[84,34142,34143],{"class":86,"line":232},[84,34144,1941],{"class":90},[84,34146,34147],{"class":86,"line":237},[84,34148,1950],{"class":90},[84,34150,34151,34154],{"class":86,"line":253},[84,34152,34153],{"class":98},"    addTask",[84,34155,1307],{"class":90},[84,34157,34158,34160,34162,34164,34166,34169,34171],{"class":86,"line":266},[84,34159,1964],{"class":108},[84,34161,33610],{"class":135},[84,34163,139],{"class":108},[84,34165,2078],{"class":135},[84,34167,34168],{"class":90},".draft.",[84,34170,32516],{"class":98},[84,34172,20137],{"class":90},[84,34174,34175,34177,34179,34181,34183,34185],{"class":86,"line":271},[84,34176,1987],{"class":108},[84,34178,1341],{"class":90},[84,34180,1344],{"class":108},[84,34182,33630],{"class":90},[84,34184,19063],{"class":108},[84,34186,18869],{"class":90},[84,34188,34189],{"class":86,"line":281},[84,34190,126],{"emptyLinePlaceholder":125},[84,34192,34193,34195,34197,34199],{"class":86,"line":286},[84,34194,2022],{"class":135},[84,34196,3544],{"class":90},[84,34198,10533],{"class":98},[84,34200,1876],{"class":90},[84,34202,34203,34205,34207],{"class":86,"line":296},[84,34204,10973],{"class":90},[84,34206,10543],{"class":98},[84,34208,10546],{"class":90},[84,34210,34211],{"class":86,"line":315},[84,34212,34213],{"class":90},"        title,\n",[84,34215,34216,34219,34221],{"class":86,"line":321},[84,34217,34218],{"class":90},"        done: ",[84,34220,148],{"class":135},[84,34222,1887],{"class":90},[84,34224,34225],{"class":86,"line":331},[84,34226,31288],{"class":90},[84,34228,34229,34231,34234,34236,34238],{"class":86,"line":336},[84,34230,2022],{"class":135},[84,34232,34233],{"class":90},".draft ",[84,34235,184],{"class":108},[84,34237,33684],{"class":118},[84,34239,18869],{"class":90},[84,34241,34242],{"class":86,"line":354},[84,34243,7783],{"class":90},[84,34245,34246,34248,34250,34252],{"class":86,"line":360},[84,34247,3772],{"class":98},[84,34249,145],{"class":90},[84,34251,22745],{"class":429},[84,34253,438],{"class":90},[84,34255,34256,34258,34260,34262,34264,34266,34268,34270,34272,34274,34276,34278,34280],{"class":86,"line":369},[84,34257,1964],{"class":108},[84,34259,3268],{"class":135},[84,34261,139],{"class":108},[84,34263,2078],{"class":135},[84,34265,3544],{"class":90},[84,34267,3275],{"class":98},[84,34269,3120],{"class":90},[84,34271,3280],{"class":429},[84,34273,3126],{"class":90},[84,34275,172],{"class":108},[84,34277,3285],{"class":90},[84,34279,3288],{"class":108},[84,34281,33737],{"class":90},[84,34283,34284,34286,34288,34290,34292,34294],{"class":86,"line":1453},[84,34285,1987],{"class":108},[84,34287,1341],{"class":90},[84,34289,1344],{"class":108},[84,34291,3306],{"class":90},[84,34293,19063],{"class":108},[84,34295,18869],{"class":90},[84,34297,34298,34300,34302,34304],{"class":86,"line":1462},[84,34299,3829],{"class":90},[84,34301,184],{"class":108},[84,34303,260],{"class":108},[84,34305,33762],{"class":90},[84,34307,34308],{"class":86,"line":1484},[84,34309,7783],{"class":90},[84,34311,34312],{"class":86,"line":1489},[84,34313,1941],{"class":90},[84,34315,34316],{"class":86,"line":1495},[84,34317,18973],{"class":90},[84,34319,34320,34322,34324],{"class":86,"line":1500},[84,34321,274],{"class":90},[84,34323,95],{"class":94},[84,34325,102],{"class":90},[84,34327,34328],{"class":86,"line":1516},[84,34329,126],{"emptyLinePlaceholder":125},[84,34331,34332,34334,34336],{"class":86,"line":1533},[84,34333,91],{"class":90},[84,34335,291],{"class":94},[84,34337,102],{"class":90},[84,34339,34340,34342,34344],{"class":86,"line":1538},[84,34341,299],{"class":90},[84,34343,4898],{"class":94},[84,34345,102],{"class":90},[84,34347,34348,34350,34352,34354,34356],{"class":86,"line":1545},[84,34349,1642],{"class":90},[84,34351,34],{"class":94},[84,34353,33803],{"class":90},[84,34355,34],{"class":94},[84,34357,102],{"class":90},[84,34359,34360,34362,34364,34366,34368],{"class":86,"line":1554},[84,34361,1642],{"class":90},[84,34363,15],{"class":94},[84,34365,33816],{"class":90},[84,34367,15],{"class":94},[84,34369,102],{"class":90},[84,34371,34372],{"class":86,"line":1563},[84,34373,126],{"emptyLinePlaceholder":125},[84,34375,34376,34378,34380,34382,34384,34386],{"class":86,"line":1570},[84,34377,1642],{"class":90},[84,34379,31973],{"class":94},[84,34381,32570],{"class":98},[84,34383,184],{"class":90},[84,34385,33837],{"class":118},[84,34387,102],{"class":90},[84,34389,34390,34392],{"class":86,"line":1588},[84,34391,1691],{"class":90},[84,34393,12295],{"class":94},[84,34395,34396,34398,34400],{"class":86,"line":1593},[84,34397,33850],{"class":98},[84,34399,184],{"class":90},[84,34401,33855],{"class":118},[84,34403,34404,34406,34408],{"class":86,"line":1598},[84,34405,33860],{"class":98},[84,34407,184],{"class":90},[84,34409,30155],{"class":118},[84,34411,34412,34414,34416],{"class":86,"line":1607},[84,34413,33869],{"class":98},[84,34415,184],{"class":90},[84,34417,33874],{"class":118},[84,34419,34420,34422,34424],{"class":86,"line":1612},[84,34421,33879],{"class":98},[84,34423,184],{"class":90},[84,34425,33884],{"class":118},[84,34427,34428],{"class":86,"line":1621},[84,34429,33889],{"class":90},[84,34431,34432,34434,34436,34438,34440,34442,34444,34446],{"class":86,"line":1639},[84,34433,1691],{"class":90},[84,34435,302],{"class":94},[84,34437,5046],{"class":98},[84,34439,184],{"class":90},[84,34441,32619],{"class":118},[84,34443,33904],{"class":90},[84,34445,302],{"class":94},[84,34447,102],{"class":90},[84,34449,34450,34452,34454],{"class":86,"line":1661},[84,34451,1734],{"class":90},[84,34453,31973],{"class":94},[84,34455,102],{"class":90},[84,34457,34458],{"class":86,"line":1666},[84,34459,126],{"emptyLinePlaceholder":125},[84,34461,34462,34464,34466],{"class":86,"line":1688},[84,34463,1642],{"class":90},[84,34465,737],{"class":94},[84,34467,102],{"class":90},[84,34469,34470,34472,34474,34476,34478,34480,34482,34484,34486],{"class":86,"line":1703},[84,34471,1691],{"class":90},[84,34473,740],{"class":94},[84,34475,13525],{"class":98},[84,34477,184],{"class":90},[84,34479,33941],{"class":118},[84,34481,5092],{"class":98},[84,34483,184],{"class":90},[84,34485,33948],{"class":118},[84,34487,102],{"class":90},[84,34489,34490,34492,34494,34496,34498,34500],{"class":86,"line":1717},[84,34491,27377],{"class":90},[84,34493,302],{"class":94},[84,34495,305],{"class":98},[84,34497,184],{"class":90},[84,34499,33963],{"class":118},[84,34501,102],{"class":90},[84,34503,34504],{"class":86,"line":1731},[84,34505,33970],{"class":90},[84,34507,34508,34510,34512],{"class":86,"line":1741},[84,34509,27425],{"class":90},[84,34511,302],{"class":94},[84,34513,102],{"class":90},[84,34515,34516,34518,34520,34522,34524,34526],{"class":86,"line":1746},[84,34517,27377],{"class":90},[84,34519,84],{"class":94},[84,34521,33987],{"class":98},[84,34523,184],{"class":90},[84,34525,33992],{"class":118},[84,34527,102],{"class":90},[84,34529,34530],{"class":86,"line":1763},[84,34531,33999],{"class":90},[84,34533,34534,34536,34538],{"class":86,"line":1772},[84,34535,27425],{"class":90},[84,34537,84],{"class":94},[84,34539,102],{"class":90},[84,34541,34542,34544,34546],{"class":86,"line":2283},[84,34543,4952],{"class":90},[84,34545,740],{"class":94},[84,34547,102],{"class":90},[84,34549,34550,34552,34554],{"class":86,"line":2288},[84,34551,1734],{"class":90},[84,34553,737],{"class":94},[84,34555,102],{"class":90},[84,34557,34558,34560,34562],{"class":86,"line":2307},[84,34559,324],{"class":90},[84,34561,4898],{"class":94},[84,34563,102],{"class":90},[84,34565,34566,34568,34570],{"class":86,"line":2320},[84,34567,274],{"class":90},[84,34569,291],{"class":94},[84,34571,102],{"class":90},[34,34573,2406],{"id":2405},[15,34575,34576,34578],{},[22,34577,18695],{}," es la directiva que convierte plantillas estáticas en interfaces interactivas.\nSi la usas con handlers claros y modificadores correctos, reduces bugs y mejoras legibilidad.",[15,34580,34581],{},"Puntos clave para recordar:",[737,34583,34584,34592,34595,34605],{},[740,34585,21486,34586,34589,34590,764],{},[22,34587,34588],{},"@"," como shorthand de ",[22,34591,18695],{},[740,34593,34594],{},"Prefiere funciones del script sobre expresiones complejas inline.",[740,34596,34597,34598,754,34600,754,34602,34604],{},"Aprovecha modificadores (",[22,34599,31785],{},[22,34601,31788],{},[22,34603,31791],{},") cuando sean necesarios.",[740,34606,34607],{},"Mantén consistencia entre Composition API y Options API para facilitar mantenimiento.",[835,34609,34610],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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 .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .s7hpK, html code.shiki .s7hpK{--shiki-default:#B31D28;--shiki-default-font-style:italic;--shiki-dark:#FDAEB7;--shiki-dark-font-style:italic}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":80,"searchDepth":105,"depth":105,"links":34612},[34613,34614,34615,34616,34617,34625,34632,34633],{"id":21333,"depth":105,"text":21334},{"id":25349,"depth":105,"text":25350},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":783,"depth":105,"text":784,"children":34618},[34619,34620,34622,34623],{"id":31880,"depth":122,"text":31881},{"id":31955,"depth":122,"text":34621},"2) Olvidar .prevent en formularios",{"id":32030,"depth":122,"text":32031},{"id":32139,"depth":122,"text":34624},"4) Usar event sin declararlo",{"id":2735,"depth":105,"text":2736,"children":34626},[34627,34628,34630,34631],{"id":32215,"depth":122,"text":32216},{"id":32431,"depth":122,"text":34629},"2) Submit de formulario con .prevent",{"id":32858,"depth":122,"text":32859},{"id":33151,"depth":122,"text":33152},{"id":2765,"depth":105,"text":2766},{"id":2405,"depth":105,"text":2406},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1771022043\u002Fdirectives-vue-v-on-guide_hwtqel.png","Imagen temporal para portada del articulo sobre v-on en Vue","2026-02-13","Aprende a usar v-on en Vue con eventos del DOM, modificadores, atajos de teclado y buenas practicas para mantener componentes claros y mantenibles.",{"updatedAt":34639,"coverCaption":18477,"author":868,"keywords":34640},"2026-02-13T10:30:00-05:00",[870,18695,34641,34642,873,1782],"eventos","event modifiers","\u002Fblog\u002Fdirectives-vue-v-on-guide.es",[34645],{"headline":34646,"author":34647,"datePublished":34639,"@type":880},"Directiva v-on en Vue: guia practica para manejar eventos",{"name":868,"@type":879},{"title":31634,"description":34637},"blog\u002Fdirectives-vue-v-on-guide.es",[34651,34652,34655],{"tag":21297,"color":21298},{"tag":34653,"color":34654},"Eventos","#2D98DA",{"tag":894,"color":895},"WAEXmV8fTD0ITkOvmyn62Tdvu5vw7wpMPNxDrqfLAt4",{"id":34658,"title":34659,"body":34660,"cover":37615,"coverAlt":37616,"date":37617,"description":37618,"draft":852,"extension":853,"lab":882,"locale":864,"meta":37619,"navigation":125,"path":37625,"schemaOrg":37626,"seo":37630,"series":21291,"seriesDescription":21292,"seriesOrder":129,"seriesTitle":21293,"slug":882,"stem":37631,"tags":37632,"__hash__":37637},"blog\u002Fblog\u002Fdirectives-vue-v-bind-guide.es.md","Directivas en Vue: v-bind",{"type":8,"value":34661,"toc":37584},[34662,34667,34672,34677,34679,34684,34698,34703,34705,34708,34743,34746,34775,34780,34825,34827,34832,34850,34852,34854,34870,34872,34879,34881,34916,34918,34966,34973,34983,34985,35052,35057,35061,35066,35092,35102,35109,35114,35116,35122,35238,35353,35359,35467,35578,35586,35738,35881,35888,36015,36136,36142,36145,36265,36378,36386,36531,36681,36688,36692,36698,37119,37539,37541,37546,37549,37575,37581],[11,34663,21314,34665],{"id":34664},"directivas-en-vue-v-bind",[22,34666,18692],{},[15,34668,34669,34671],{},[22,34670,18692],{}," conecta atributos o props del template con datos reactivos.\nSi el estado cambia, el atributo también cambia.",[15,34673,25290,34674,34676],{},[22,34675,18692],{}," es una de las piezas más importantes porque te permite pasar de HTML estático a UI dinámica sin manipular el DOM manualmente.",[34,34678,21334],{"id":21333},[15,34680,16664,34681,34683],{},[22,34682,18692],{},", terminarías escribiendo lógica imperativa para:",[737,34685,34686,34689,34692,34695],{},[740,34687,34688],{},"Activar\u002Fdesactivar botones.",[740,34690,34691],{},"Cambiar clases según estado.",[740,34693,34694],{},"Renderizar enlaces o imágenes dinámicas,",[740,34696,34697],{},"Pasar datos de un componente padre a uno hijo.",[15,34699,12736,34700,34702],{},[22,34701,18692],{},", todo eso se vuelve declarativo.\nDescribes la relación entre estado y UI, y Vue se encarga del resto.",[34,34704,25350],{"id":25349},[15,34706,34707],{},"La forma base es:",[74,34709,34711],{"className":76,"code":34710,"filename":10092,"language":79,"meta":80,"style":80},"\u003Ca v-bind:href=\"url\">Ir al sitio\u003C\u002Fa>\n",[22,34712,34713],{"__ignoreMap":80},[84,34714,34715,34717,34719,34722,34724,34727,34729,34731,34734,34736,34739,34741],{"class":86,"line":87},[84,34716,91],{"class":90},[84,34718,13911],{"class":94},[84,34720,34721],{"class":98}," v-bind",[84,34723,1203],{"class":90},[84,34725,34726],{"class":98},"href",[84,34728,184],{"class":90},[84,34730,1678],{"class":118},[84,34732,34733],{"class":90},"url",[84,34735,1678],{"class":118},[84,34737,34738],{"class":90},">Ir al sitio\u003C\u002F",[84,34740,13911],{"class":94},[84,34742,102],{"class":90},[15,34744,34745],{},"Shorthand recomendado:",[74,34747,34749],{"className":76,"code":34748,"filename":10092,"language":79,"meta":80,"style":80},"\u003Ca :href=\"url\">Ir al sitio\u003C\u002Fa>\n",[22,34750,34751],{"__ignoreMap":80},[84,34752,34753,34755,34757,34759,34761,34763,34765,34767,34769,34771,34773],{"class":86,"line":87},[84,34754,91],{"class":90},[84,34756,13911],{"class":94},[84,34758,7012],{"class":90},[84,34760,34726],{"class":98},[84,34762,184],{"class":90},[84,34764,1678],{"class":118},[84,34766,34733],{"class":90},[84,34768,1678],{"class":118},[84,34770,34738],{"class":90},[84,34772,13911],{"class":94},[84,34774,102],{"class":90},[15,34776,34777,34779],{},[22,34778,18692],{}," funciona con:",[737,34781,34782,34798,34804,34813,34819],{},[740,34783,34784,34785,754,34787,754,34790,754,34793,754,34795,34797],{},"Atributos HTML (",[22,34786,34726],{},[22,34788,34789],{},"src",[22,34791,34792],{},"disabled",[22,34794,22745],{},[22,34796,24118],{},"),",[740,34799,34800,34801,34797],{},"Props de componentes (",[22,34802,34803],{},":user=\"currentUser\"",[740,34805,34806,34807,2488,34810,34812],{},"Bindings especiales para ",[22,34808,34809],{},"class",[22,34811,835],{},",",[740,34814,34815,34816,34797],{},"Argumentos dinámicos (",[22,34817,34818],{},":[attrName]=\"value\"",[740,34820,34821,34822,2686],{},"Spread-like bindings (",[22,34823,34824],{},"v-bind=\"attrsObject\"",[34,34826,1013],{"id":1012},[15,34828,21486,34829,34831],{},[22,34830,18692],{}," cuando necesites:",[737,34833,34834,34837,34844,34847],{},[740,34835,34836],{},"Valores dinámicos en atributos.",[740,34838,34839,34840,6014,34842,2686],{},"Cambiar presentación según estado (",[22,34841,34809],{},[22,34843,835],{},[740,34845,34846],{},"Pasar datos reactivos a componentes hijos.",[740,34848,34849],{},"Construir componentes reutilizables con props configurables.",[34,34851,1040],{"id":1039},[15,34853,1046],{},[737,34855,34856,34859,34864],{},[740,34857,34858],{},"El valor es fijo y nunca cambia (puedes dejar HTML estático).",[740,34860,34861,34862,2686],{},"Metes lógica compleja directamente en el template (mejor mover a ",[22,34863,2523],{},[740,34865,34866,34867,34869],{},"Usas ",[22,34868,18692],{}," como sustituto de validación o seguridad (eso no lo resuelve el template).",[34,34871,784],{"id":783},[1074,34873,34875,34876,34878],{"id":34874},"_1-olvidar-que-v-bind-evalúa-javascript","1) Olvidar que ",[22,34877,18692],{}," evalúa JavaScript",[15,34880,25589],{},[74,34882,34885],{"className":76,"code":34883,"filename":34884,"language":79,"meta":80,"style":80},"\u003Cimg :src=\"\u002Fimages\u002Favatar.png\" \u002F>\n","Incorrecto",[22,34886,34887],{"__ignoreMap":80},[84,34888,34889,34891,34894,34896,34898,34900,34902,34904,34907,34909,34912,34914],{"class":86,"line":87},[84,34890,91],{"class":90},[84,34892,34893],{"class":94},"img",[84,34895,7012],{"class":90},[84,34897,34789],{"class":98},[84,34899,184],{"class":90},[84,34901,1678],{"class":118},[84,34903,16677],{"class":108},[84,34905,34906],{"class":90},"images",[84,34908,16677],{"class":108},[84,34910,34911],{"class":90},"avatar.png",[84,34913,1678],{"class":118},[84,34915,5100],{"class":90},[15,34917,29151],{},[74,34919,34922],{"className":76,"code":34920,"filename":34921,"language":79,"meta":80,"style":80},"\u003Cimg src=\"\u002Fimages\u002Favatar.png\" \u002F>\n\u003C!-- o -->\n\u003Cimg :src=\"avatarUrl\" \u002F>\n","Correcto",[22,34923,34924,34940,34945],{"__ignoreMap":80},[84,34925,34926,34928,34930,34933,34935,34938],{"class":86,"line":87},[84,34927,91],{"class":90},[84,34929,34893],{"class":94},[84,34931,34932],{"class":98}," src",[84,34934,184],{"class":90},[84,34936,34937],{"class":118},"\"\u002Fimages\u002Favatar.png\"",[84,34939,5100],{"class":90},[84,34941,34942],{"class":86,"line":105},[84,34943,34944],{"class":13481},"\u003C!-- o -->\n",[84,34946,34947,34949,34951,34953,34955,34957,34959,34962,34964],{"class":86,"line":122},[84,34948,91],{"class":90},[84,34950,34893],{"class":94},[84,34952,7012],{"class":90},[84,34954,34789],{"class":98},[84,34956,184],{"class":90},[84,34958,1678],{"class":118},[84,34960,34961],{"class":90},"avatarUrl",[84,34963,1678],{"class":118},[84,34965,5100],{"class":90},[15,34967,34968,34969,34972],{},"Si usas ",[22,34970,34971],{},":src",", Vue espera una expresión JS válida.",[1074,34974,34976,34977,50,34980],{"id":34975},"_2-poner-demasiada-lógica-inline-en-class-o-style","2) Poner demasiada lógica inline en ",[22,34978,34979],{},":class",[22,34981,34982],{},":style",[15,34984,25589],{},[74,34986,34988],{"className":76,"code":34987,"filename":29029,"language":79,"meta":80,"style":80},"\u003Cbutton :class=\"isAdmin && isActive && !isLocked ? 'btn btn-primary' : isLocked ? 'btn btn-muted' : 'btn'\">\n  Guardar\n\u003C\u002Fbutton>\n",[22,34989,34990,35039,35044],{"__ignoreMap":80},[84,34991,34992,34994,34996,34998,35000,35002,35004,35006,35008,35011,35013,35015,35017,35019,35022,35024,35027,35029,35032,35034,35037],{"class":86,"line":87},[84,34993,91],{"class":90},[84,34995,302],{"class":94},[84,34997,7012],{"class":90},[84,34999,34809],{"class":98},[84,35001,184],{"class":90},[84,35003,1678],{"class":118},[84,35005,32056],{"class":90},[84,35007,3096],{"class":108},[84,35009,35010],{"class":90}," isActive ",[84,35012,3096],{"class":108},[84,35014,260],{"class":108},[84,35016,32068],{"class":90},[84,35018,3073],{"class":108},[84,35020,35021],{"class":118}," 'btn btn-primary'",[84,35023,7012],{"class":108},[84,35025,35026],{"class":90}," isLocked ",[84,35028,3073],{"class":108},[84,35030,35031],{"class":118}," 'btn btn-muted'",[84,35033,7012],{"class":108},[84,35035,35036],{"class":118}," 'btn'\"",[84,35038,102],{"class":90},[84,35040,35041],{"class":86,"line":105},[84,35042,35043],{"class":90},"  Guardar\n",[84,35045,35046,35048,35050],{"class":86,"line":122},[84,35047,274],{"class":90},[84,35049,302],{"class":94},[84,35051,102],{"class":90},[15,35053,35054,35055,764],{},"Mejor: extraer a ",[22,35056,2523],{},[1074,35058,35060],{"id":35059},"_3-confundir-atributo-html-con-prop-de-componente","3) Confundir atributo HTML con prop de componente",[15,35062,35063,35065],{},[22,35064,18692],{}," sirve para ambos, pero en componentes debes pasar la prop exacta definida por el hijo:",[74,35067,35070],{"className":76,"code":35068,"filename":35069,"language":79,"meta":80,"style":80},"\u003CUserCard :user=\"user\" \u002F>\n","Padre",[22,35071,35072],{"__ignoreMap":80},[84,35073,35074,35076,35078,35080,35082,35084,35086,35088,35090],{"class":86,"line":87},[84,35075,91],{"class":90},[84,35077,23311],{"class":94},[84,35079,7012],{"class":90},[84,35081,28004],{"class":98},[84,35083,184],{"class":90},[84,35085,1678],{"class":118},[84,35087,28004],{"class":90},[84,35089,1678],{"class":118},[84,35091,5100],{"class":90},[15,35093,35094,35095,35098,35099,35101],{},"Si el hijo espera ",[22,35096,35097],{},"profile"," y tú pasas ",[22,35100,28004],{},", no llegará la data correcta.",[1074,35103,35105,35106,35108],{"id":35104},"_4-creer-que-v-bind-protege-datos","4) Creer que ",[22,35107,18692],{}," \"protege\" datos",[15,35110,35111,35113],{},[22,35112,18692],{}," solo refleja estado en la UI.\nNo reemplaza validación del backend ni reglas de autorización.",[34,35115,2736],{"id":2735},[1074,35117,35119,35120,909],{"id":35118},"_1-básico-enlace-dinámico-href","1) Básico: enlace dinámico (",[22,35121,34726],{},[74,35123,35126],{"className":76,"code":35124,"filename":873,"highlights":35125,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from \"vue\";\n\nconst docsUrl = ref(\"https:\u002F\u002Fvuejs.org\u002F\");\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Ca :href=\"docsUrl\" target=\"_blank\" rel=\"noopener\">Documentación Vue\u003C\u002Fa>\n\u003C\u002Ftemplate>\n",[129,190],[22,35127,35128,35138,35150,35154,35173,35181,35185,35193,35230],{"__ignoreMap":80},[84,35129,35130,35132,35134,35136],{"class":86,"line":87},[84,35131,91],{"class":90},[84,35133,95],{"class":94},[84,35135,99],{"class":98},[84,35137,102],{"class":90},[84,35139,35140,35142,35144,35146,35148],{"class":86,"line":105},[84,35141,109],{"class":108},[84,35143,112],{"class":90},[84,35145,115],{"class":108},[84,35147,18866],{"class":118},[84,35149,18869],{"class":90},[84,35151,35152],{"class":86,"line":122},[84,35153,126],{"emptyLinePlaceholder":125},[84,35155,35157,35159,35162,35164,35166,35168,35171],{"class":35156,"line":129},[86,10151],[84,35158,132],{"class":108},[84,35160,35161],{"class":135}," docsUrl",[84,35163,139],{"class":108},[84,35165,142],{"class":98},[84,35167,145],{"class":90},[84,35169,35170],{"class":118},"\"https:\u002F\u002Fvuejs.org\u002F\"",[84,35172,18994],{"class":90},[84,35174,35175,35177,35179],{"class":86,"line":154},[84,35176,274],{"class":90},[84,35178,95],{"class":94},[84,35180,102],{"class":90},[84,35182,35183],{"class":86,"line":159},[84,35184,126],{"emptyLinePlaceholder":125},[84,35186,35187,35189,35191],{"class":86,"line":178},[84,35188,91],{"class":90},[84,35190,291],{"class":94},[84,35192,102],{"class":90},[84,35194,35196,35198,35200,35203,35205,35208,35210,35212,35215,35218,35220,35223,35226,35228],{"class":35195,"line":190},[86,10151],[84,35197,299],{"class":90},[84,35199,13911],{"class":94},[84,35201,35202],{"class":98}," :href",[84,35204,184],{"class":90},[84,35206,35207],{"class":118},"\"docsUrl\"",[84,35209,19118],{"class":98},[84,35211,184],{"class":90},[84,35213,35214],{"class":118},"\"_blank\"",[84,35216,35217],{"class":98}," rel",[84,35219,184],{"class":90},[84,35221,35222],{"class":118},"\"noopener\"",[84,35224,35225],{"class":90},">Documentación Vue\u003C\u002F",[84,35227,13911],{"class":94},[84,35229,102],{"class":90},[84,35231,35232,35234,35236],{"class":86,"line":196},[84,35233,274],{"class":90},[84,35235,291],{"class":94},[84,35237,102],{"class":90},[74,35239,35242],{"className":76,"code":35240,"filename":1782,"highlights":35241,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      docsUrl: \"https:\u002F\u002Fvuejs.org\u002F\",\n    };\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Ca :href=\"docsUrl\" target=\"_blank\" rel=\"noopener\">Documentación Vue\u003C\u002Fa>\n\u003C\u002Ftemplate>\n",[154,227],[22,35243,35244,35252,35260,35266,35272,35282,35286,35290,35294,35302,35306,35314,35345],{"__ignoreMap":80},[84,35245,35246,35248,35250],{"class":86,"line":87},[84,35247,91],{"class":90},[84,35249,95],{"class":94},[84,35251,102],{"class":90},[84,35253,35254,35256,35258],{"class":86,"line":105},[84,35255,418],{"class":108},[84,35257,1870],{"class":108},[84,35259,175],{"class":90},[84,35261,35262,35264],{"class":86,"line":122},[84,35263,1896],{"class":98},[84,35265,1307],{"class":90},[84,35267,35268,35270],{"class":86,"line":129},[84,35269,1903],{"class":108},[84,35271,175],{"class":90},[84,35273,35275,35278,35280],{"class":35274,"line":154},[86,10151],[84,35276,35277],{"class":90},"      docsUrl: ",[84,35279,35170],{"class":118},[84,35281,1887],{"class":90},[84,35283,35284],{"class":86,"line":159},[84,35285,19195],{"class":90},[84,35287,35288],{"class":86,"line":178},[84,35289,1941],{"class":90},[84,35291,35292],{"class":86,"line":190},[84,35293,18973],{"class":90},[84,35295,35296,35298,35300],{"class":86,"line":196},[84,35297,274],{"class":90},[84,35299,95],{"class":94},[84,35301,102],{"class":90},[84,35303,35304],{"class":86,"line":201},[84,35305,126],{"emptyLinePlaceholder":125},[84,35307,35308,35310,35312],{"class":86,"line":217},[84,35309,91],{"class":90},[84,35311,291],{"class":94},[84,35313,102],{"class":90},[84,35315,35317,35319,35321,35323,35325,35327,35329,35331,35333,35335,35337,35339,35341,35343],{"class":35316,"line":227},[86,10151],[84,35318,299],{"class":90},[84,35320,13911],{"class":94},[84,35322,35202],{"class":98},[84,35324,184],{"class":90},[84,35326,35207],{"class":118},[84,35328,19118],{"class":98},[84,35330,184],{"class":90},[84,35332,35214],{"class":118},[84,35334,35217],{"class":98},[84,35336,184],{"class":90},[84,35338,35222],{"class":118},[84,35340,35225],{"class":90},[84,35342,13911],{"class":94},[84,35344,102],{"class":90},[84,35346,35347,35349,35351],{"class":86,"line":232},[84,35348,274],{"class":90},[84,35350,291],{"class":94},[84,35352,102],{"class":90},[1074,35354,35356,35357,909],{"id":35355},"_2-atributo-booleano-dinámico-disabled","2) Atributo booleano dinámico (",[22,35358,34792],{},[74,35360,35363],{"className":76,"code":35361,"filename":873,"highlights":35362,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from \"vue\";\n\nconst isSaving = ref(false);\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton :disabled=\"isSaving\">\n    {{ isSaving ? \"Guardando...\" : \"Guardar cambios\" }}\n  \u003C\u002Fbutton>\n\u003C\u002Ftemplate>\n",[129,190],[22,35364,35365,35375,35387,35391,35409,35417,35421,35429,35446,35451,35459],{"__ignoreMap":80},[84,35366,35367,35369,35371,35373],{"class":86,"line":87},[84,35368,91],{"class":90},[84,35370,95],{"class":94},[84,35372,99],{"class":98},[84,35374,102],{"class":90},[84,35376,35377,35379,35381,35383,35385],{"class":86,"line":105},[84,35378,109],{"class":108},[84,35380,112],{"class":90},[84,35382,115],{"class":108},[84,35384,18866],{"class":118},[84,35386,18869],{"class":90},[84,35388,35389],{"class":86,"line":122},[84,35390,126],{"emptyLinePlaceholder":125},[84,35392,35394,35396,35399,35401,35403,35405,35407],{"class":35393,"line":129},[86,10151],[84,35395,132],{"class":108},[84,35397,35398],{"class":135}," isSaving",[84,35400,139],{"class":108},[84,35402,142],{"class":98},[84,35404,145],{"class":90},[84,35406,148],{"class":135},[84,35408,18994],{"class":90},[84,35410,35411,35413,35415],{"class":86,"line":154},[84,35412,274],{"class":90},[84,35414,95],{"class":94},[84,35416,102],{"class":90},[84,35418,35419],{"class":86,"line":159},[84,35420,126],{"emptyLinePlaceholder":125},[84,35422,35423,35425,35427],{"class":86,"line":178},[84,35424,91],{"class":90},[84,35426,291],{"class":94},[84,35428,102],{"class":90},[84,35430,35432,35434,35436,35439,35441,35444],{"class":35431,"line":190},[86,10151],[84,35433,299],{"class":90},[84,35435,302],{"class":94},[84,35437,35438],{"class":98}," :disabled",[84,35440,184],{"class":90},[84,35442,35443],{"class":118},"\"isSaving\"",[84,35445,102],{"class":90},[84,35447,35448],{"class":86,"line":196},[84,35449,35450],{"class":90},"    {{ isSaving ? \"Guardando...\" : \"Guardar cambios\" }}\n",[84,35452,35453,35455,35457],{"class":86,"line":201},[84,35454,324],{"class":90},[84,35456,302],{"class":94},[84,35458,102],{"class":90},[84,35460,35461,35463,35465],{"class":86,"line":217},[84,35462,274],{"class":90},[84,35464,291],{"class":94},[84,35466,102],{"class":90},[74,35468,35471],{"className":76,"code":35469,"filename":1782,"highlights":35470,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      isSaving: false,\n    };\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton :disabled=\"isSaving\">\n    {{ isSaving ? \"Guardando...\" : \"Guardar cambios\" }}\n  \u003C\u002Fbutton>\n\u003C\u002Ftemplate>\n",[154,227],[22,35472,35473,35481,35489,35495,35501,35511,35515,35519,35523,35531,35535,35543,35558,35562,35570],{"__ignoreMap":80},[84,35474,35475,35477,35479],{"class":86,"line":87},[84,35476,91],{"class":90},[84,35478,95],{"class":94},[84,35480,102],{"class":90},[84,35482,35483,35485,35487],{"class":86,"line":105},[84,35484,418],{"class":108},[84,35486,1870],{"class":108},[84,35488,175],{"class":90},[84,35490,35491,35493],{"class":86,"line":122},[84,35492,1896],{"class":98},[84,35494,1307],{"class":90},[84,35496,35497,35499],{"class":86,"line":129},[84,35498,1903],{"class":108},[84,35500,175],{"class":90},[84,35502,35504,35507,35509],{"class":35503,"line":154},[86,10151],[84,35505,35506],{"class":90},"      isSaving: ",[84,35508,148],{"class":135},[84,35510,1887],{"class":90},[84,35512,35513],{"class":86,"line":159},[84,35514,19195],{"class":90},[84,35516,35517],{"class":86,"line":178},[84,35518,1941],{"class":90},[84,35520,35521],{"class":86,"line":190},[84,35522,18973],{"class":90},[84,35524,35525,35527,35529],{"class":86,"line":196},[84,35526,274],{"class":90},[84,35528,95],{"class":94},[84,35530,102],{"class":90},[84,35532,35533],{"class":86,"line":201},[84,35534,126],{"emptyLinePlaceholder":125},[84,35536,35537,35539,35541],{"class":86,"line":217},[84,35538,91],{"class":90},[84,35540,291],{"class":94},[84,35542,102],{"class":90},[84,35544,35546,35548,35550,35552,35554,35556],{"class":35545,"line":227},[86,10151],[84,35547,299],{"class":90},[84,35549,302],{"class":94},[84,35551,35438],{"class":98},[84,35553,184],{"class":90},[84,35555,35443],{"class":118},[84,35557,102],{"class":90},[84,35559,35560],{"class":86,"line":232},[84,35561,35450],{"class":90},[84,35563,35564,35566,35568],{"class":86,"line":237},[84,35565,324],{"class":90},[84,35567,302],{"class":94},[84,35569,102],{"class":90},[84,35571,35572,35574,35576],{"class":86,"line":253},[84,35573,274],{"class":90},[84,35575,291],{"class":94},[84,35577,102],{"class":90},[1074,35579,35581,35582,35585],{"id":35580},"_3-v-bindclass-con-objeto-patrón-recomendado","3) ",[22,35583,35584],{},"v-bind:class"," con objeto (patrón recomendado)",[74,35587,35590],{"className":76,"code":35588,"filename":873,"highlights":35589,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from \"vue\";\n\nconst isActive = ref(true);\nconst hasError = ref(false);\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cp\n    :class=\"{\n      'text-success': isActive,\n      'text-danger': hasError,\n      'text-muted': !isActive && !hasError,\n    }\"\n  >\n    Estado del sistema\n  \u003C\u002Fp>\n\u003C\u002Ftemplate>\n",[129,201,217,227,232,237],[22,35591,35592,35602,35614,35618,35635,35651,35659,35663,35671,35678,35689,35695,35701,35707,35713,35717,35722,35730],{"__ignoreMap":80},[84,35593,35594,35596,35598,35600],{"class":86,"line":87},[84,35595,91],{"class":90},[84,35597,95],{"class":94},[84,35599,99],{"class":98},[84,35601,102],{"class":90},[84,35603,35604,35606,35608,35610,35612],{"class":86,"line":105},[84,35605,109],{"class":108},[84,35607,112],{"class":90},[84,35609,115],{"class":108},[84,35611,18866],{"class":118},[84,35613,18869],{"class":90},[84,35615,35616],{"class":86,"line":122},[84,35617,126],{"emptyLinePlaceholder":125},[84,35619,35621,35623,35625,35627,35629,35631,35633],{"class":35620,"line":129},[86,10151],[84,35622,132],{"class":108},[84,35624,446],{"class":135},[84,35626,139],{"class":108},[84,35628,142],{"class":98},[84,35630,145],{"class":90},[84,35632,2938],{"class":135},[84,35634,18994],{"class":90},[84,35636,35637,35639,35641,35643,35645,35647,35649],{"class":86,"line":154},[84,35638,132],{"class":108},[84,35640,4261],{"class":135},[84,35642,139],{"class":108},[84,35644,142],{"class":98},[84,35646,145],{"class":90},[84,35648,148],{"class":135},[84,35650,18994],{"class":90},[84,35652,35653,35655,35657],{"class":86,"line":159},[84,35654,274],{"class":90},[84,35656,95],{"class":94},[84,35658,102],{"class":90},[84,35660,35661],{"class":86,"line":178},[84,35662,126],{"emptyLinePlaceholder":125},[84,35664,35665,35667,35669],{"class":86,"line":190},[84,35666,91],{"class":90},[84,35668,291],{"class":94},[84,35670,102],{"class":90},[84,35672,35673,35675],{"class":86,"line":196},[84,35674,299],{"class":90},[84,35676,35677],{"class":94},"p\n",[84,35679,35681,35684,35686],{"class":35680,"line":201},[86,10151],[84,35682,35683],{"class":98},"    :class",[84,35685,184],{"class":90},[84,35687,35688],{"class":118},"\"{\n",[84,35690,35692],{"class":35691,"line":217},[86,10151],[84,35693,35694],{"class":118},"      'text-success': isActive,\n",[84,35696,35698],{"class":35697,"line":227},[86,10151],[84,35699,35700],{"class":118},"      'text-danger': hasError,\n",[84,35702,35704],{"class":35703,"line":232},[86,10151],[84,35705,35706],{"class":118},"      'text-muted': !isActive && !hasError,\n",[84,35708,35710],{"class":35709,"line":237},[86,10151],[84,35711,35712],{"class":118},"    }\"\n",[84,35714,35715],{"class":86,"line":253},[84,35716,23460],{"class":90},[84,35718,35719],{"class":86,"line":266},[84,35720,35721],{"class":90},"    Estado del sistema\n",[84,35723,35724,35726,35728],{"class":86,"line":271},[84,35725,324],{"class":90},[84,35727,15],{"class":94},[84,35729,102],{"class":90},[84,35731,35732,35734,35736],{"class":86,"line":281},[84,35733,274],{"class":90},[84,35735,291],{"class":94},[84,35737,102],{"class":90},[74,35739,35742],{"className":76,"code":35740,"filename":1782,"highlights":35741,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      isActive: true,\n      hasError: false,\n    };\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cp\n    :class=\"{\n      'text-success': isActive,\n      'text-danger': hasError,\n      'text-muted': !isActive && !hasError,\n    }\"\n  >\n    Estado del sistema\n  \u003C\u002Fp>\n\u003C\u002Ftemplate>\n",[154,232,237,253,266,271],[22,35743,35744,35752,35760,35766,35772,35782,35790,35794,35798,35802,35810,35814,35822,35829,35838,35843,35848,35853,35857,35861,35865,35873],{"__ignoreMap":80},[84,35745,35746,35748,35750],{"class":86,"line":87},[84,35747,91],{"class":90},[84,35749,95],{"class":94},[84,35751,102],{"class":90},[84,35753,35754,35756,35758],{"class":86,"line":105},[84,35755,418],{"class":108},[84,35757,1870],{"class":108},[84,35759,175],{"class":90},[84,35761,35762,35764],{"class":86,"line":122},[84,35763,1896],{"class":98},[84,35765,1307],{"class":90},[84,35767,35768,35770],{"class":86,"line":129},[84,35769,1903],{"class":108},[84,35771,175],{"class":90},[84,35773,35775,35778,35780],{"class":35774,"line":154},[86,10151],[84,35776,35777],{"class":90},"      isActive: ",[84,35779,2938],{"class":135},[84,35781,1887],{"class":90},[84,35783,35784,35786,35788],{"class":86,"line":159},[84,35785,5438],{"class":90},[84,35787,148],{"class":135},[84,35789,1887],{"class":90},[84,35791,35792],{"class":86,"line":178},[84,35793,19195],{"class":90},[84,35795,35796],{"class":86,"line":190},[84,35797,1941],{"class":90},[84,35799,35800],{"class":86,"line":196},[84,35801,18973],{"class":90},[84,35803,35804,35806,35808],{"class":86,"line":201},[84,35805,274],{"class":90},[84,35807,95],{"class":94},[84,35809,102],{"class":90},[84,35811,35812],{"class":86,"line":217},[84,35813,126],{"emptyLinePlaceholder":125},[84,35815,35816,35818,35820],{"class":86,"line":227},[84,35817,91],{"class":90},[84,35819,291],{"class":94},[84,35821,102],{"class":90},[84,35823,35825,35827],{"class":35824,"line":232},[86,10151],[84,35826,299],{"class":90},[84,35828,35677],{"class":94},[84,35830,35832,35834,35836],{"class":35831,"line":237},[86,10151],[84,35833,35683],{"class":98},[84,35835,184],{"class":90},[84,35837,35688],{"class":118},[84,35839,35841],{"class":35840,"line":253},[86,10151],[84,35842,35694],{"class":118},[84,35844,35846],{"class":35845,"line":266},[86,10151],[84,35847,35700],{"class":118},[84,35849,35851],{"class":35850,"line":271},[86,10151],[84,35852,35706],{"class":118},[84,35854,35855],{"class":86,"line":281},[84,35856,35712],{"class":118},[84,35858,35859],{"class":86,"line":286},[84,35860,23460],{"class":90},[84,35862,35863],{"class":86,"line":296},[84,35864,35721],{"class":90},[84,35866,35867,35869,35871],{"class":86,"line":315},[84,35868,324],{"class":90},[84,35870,15],{"class":94},[84,35872,102],{"class":90},[84,35874,35875,35877,35879],{"class":86,"line":321},[84,35876,274],{"class":90},[84,35878,291],{"class":94},[84,35880,102],{"class":90},[1074,35882,27465,35884,35887],{"id":35883},"_4-v-bindstyle-dinámico-con-objeto",[22,35885,35886],{},"v-bind:style"," dinámico con objeto",[74,35889,35892],{"className":76,"code":35890,"filename":873,"highlights":35891,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from \"vue\";\n\nconst fontSize = ref(16);\nconst textColor = ref(\"#1D5BA1\");\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cp :style=\"{ fontSize: `${fontSize}px`, color: textColor }\">\n    Texto con estilo reactivo\n  \u003C\u002Fp>\n\u003C\u002Ftemplate>\n",[129,154,196],[22,35893,35894,35904,35916,35920,35939,35958,35966,35970,35978,35994,35999,36007],{"__ignoreMap":80},[84,35895,35896,35898,35900,35902],{"class":86,"line":87},[84,35897,91],{"class":90},[84,35899,95],{"class":94},[84,35901,99],{"class":98},[84,35903,102],{"class":90},[84,35905,35906,35908,35910,35912,35914],{"class":86,"line":105},[84,35907,109],{"class":108},[84,35909,112],{"class":90},[84,35911,115],{"class":108},[84,35913,18866],{"class":118},[84,35915,18869],{"class":90},[84,35917,35918],{"class":86,"line":122},[84,35919,126],{"emptyLinePlaceholder":125},[84,35921,35923,35925,35928,35930,35932,35934,35937],{"class":35922,"line":129},[86,10151],[84,35924,132],{"class":108},[84,35926,35927],{"class":135}," fontSize",[84,35929,139],{"class":108},[84,35931,142],{"class":98},[84,35933,145],{"class":90},[84,35935,35936],{"class":135},"16",[84,35938,18994],{"class":90},[84,35940,35942,35944,35947,35949,35951,35953,35956],{"class":35941,"line":154},[86,10151],[84,35943,132],{"class":108},[84,35945,35946],{"class":135}," textColor",[84,35948,139],{"class":108},[84,35950,142],{"class":98},[84,35952,145],{"class":90},[84,35954,35955],{"class":118},"\"#1D5BA1\"",[84,35957,18994],{"class":90},[84,35959,35960,35962,35964],{"class":86,"line":159},[84,35961,274],{"class":90},[84,35963,95],{"class":94},[84,35965,102],{"class":90},[84,35967,35968],{"class":86,"line":178},[84,35969,126],{"emptyLinePlaceholder":125},[84,35971,35972,35974,35976],{"class":86,"line":190},[84,35973,91],{"class":90},[84,35975,291],{"class":94},[84,35977,102],{"class":90},[84,35979,35981,35983,35985,35987,35989,35992],{"class":35980,"line":196},[86,10151],[84,35982,299],{"class":90},[84,35984,15],{"class":94},[84,35986,33987],{"class":98},[84,35988,184],{"class":90},[84,35990,35991],{"class":118},"\"{ fontSize: `${fontSize}px`, color: textColor }\"",[84,35993,102],{"class":90},[84,35995,35996],{"class":86,"line":201},[84,35997,35998],{"class":90},"    Texto con estilo reactivo\n",[84,36000,36001,36003,36005],{"class":86,"line":217},[84,36002,324],{"class":90},[84,36004,15],{"class":94},[84,36006,102],{"class":90},[84,36008,36009,36011,36013],{"class":86,"line":227},[84,36010,274],{"class":90},[84,36012,291],{"class":94},[84,36014,102],{"class":90},[74,36016,36019],{"className":76,"code":36017,"filename":1782,"highlights":36018,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      fontSize: 16,\n      textColor: \"#1D5BA1\",\n    };\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cp :style=\"{ fontSize: `${fontSize}px`, color: textColor }\">\n    Texto con estilo reactivo\n  \u003C\u002Fp>\n\u003C\u002Ftemplate>\n",[154,159,232],[22,36020,36021,36029,36037,36043,36049,36059,36069,36073,36077,36081,36089,36093,36101,36116,36120,36128],{"__ignoreMap":80},[84,36022,36023,36025,36027],{"class":86,"line":87},[84,36024,91],{"class":90},[84,36026,95],{"class":94},[84,36028,102],{"class":90},[84,36030,36031,36033,36035],{"class":86,"line":105},[84,36032,418],{"class":108},[84,36034,1870],{"class":108},[84,36036,175],{"class":90},[84,36038,36039,36041],{"class":86,"line":122},[84,36040,1896],{"class":98},[84,36042,1307],{"class":90},[84,36044,36045,36047],{"class":86,"line":129},[84,36046,1903],{"class":108},[84,36048,175],{"class":90},[84,36050,36052,36055,36057],{"class":36051,"line":154},[86,10151],[84,36053,36054],{"class":90},"      fontSize: ",[84,36056,35936],{"class":135},[84,36058,1887],{"class":90},[84,36060,36062,36065,36067],{"class":36061,"line":159},[86,10151],[84,36063,36064],{"class":90},"      textColor: ",[84,36066,35955],{"class":118},[84,36068,1887],{"class":90},[84,36070,36071],{"class":86,"line":178},[84,36072,19195],{"class":90},[84,36074,36075],{"class":86,"line":190},[84,36076,1941],{"class":90},[84,36078,36079],{"class":86,"line":196},[84,36080,18973],{"class":90},[84,36082,36083,36085,36087],{"class":86,"line":201},[84,36084,274],{"class":90},[84,36086,95],{"class":94},[84,36088,102],{"class":90},[84,36090,36091],{"class":86,"line":217},[84,36092,126],{"emptyLinePlaceholder":125},[84,36094,36095,36097,36099],{"class":86,"line":227},[84,36096,91],{"class":90},[84,36098,291],{"class":94},[84,36100,102],{"class":90},[84,36102,36104,36106,36108,36110,36112,36114],{"class":36103,"line":232},[86,10151],[84,36105,299],{"class":90},[84,36107,15],{"class":94},[84,36109,33987],{"class":98},[84,36111,184],{"class":90},[84,36113,35991],{"class":118},[84,36115,102],{"class":90},[84,36117,36118],{"class":86,"line":237},[84,36119,35998],{"class":90},[84,36121,36122,36124,36126],{"class":86,"line":253},[84,36123,324],{"class":90},[84,36125,15],{"class":94},[84,36127,102],{"class":90},[84,36129,36130,36132,36134],{"class":86,"line":266},[84,36131,274],{"class":90},[84,36133,291],{"class":94},[84,36135,102],{"class":90},[1074,36137,36139,36140],{"id":36138},"_5-argumento-dinámico-attrnamevalue","5) Argumento dinámico: ",[22,36141,34818],{},[15,36143,36144],{},"Útil cuando el nombre del atributo también depende del estado.",[74,36146,36149],{"className":76,"code":36147,"filename":873,"highlights":36148,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from \"vue\";\n\nconst attrName = ref(\"title\");\nconst attrValue = ref(\"Tooltip dinámico\");\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton :[attrName]=\"attrValue\">Hover me\u003C\u002Fbutton>\n\u003C\u002Ftemplate>\n",[129,154,196],[22,36150,36151,36161,36173,36177,36196,36215,36223,36227,36235,36257],{"__ignoreMap":80},[84,36152,36153,36155,36157,36159],{"class":86,"line":87},[84,36154,91],{"class":90},[84,36156,95],{"class":94},[84,36158,99],{"class":98},[84,36160,102],{"class":90},[84,36162,36163,36165,36167,36169,36171],{"class":86,"line":105},[84,36164,109],{"class":108},[84,36166,112],{"class":90},[84,36168,115],{"class":108},[84,36170,18866],{"class":118},[84,36172,18869],{"class":90},[84,36174,36175],{"class":86,"line":122},[84,36176,126],{"emptyLinePlaceholder":125},[84,36178,36180,36182,36185,36187,36189,36191,36194],{"class":36179,"line":129},[86,10151],[84,36181,132],{"class":108},[84,36183,36184],{"class":135}," attrName",[84,36186,139],{"class":108},[84,36188,142],{"class":98},[84,36190,145],{"class":90},[84,36192,36193],{"class":118},"\"title\"",[84,36195,18994],{"class":90},[84,36197,36199,36201,36204,36206,36208,36210,36213],{"class":36198,"line":154},[86,10151],[84,36200,132],{"class":108},[84,36202,36203],{"class":135}," attrValue",[84,36205,139],{"class":108},[84,36207,142],{"class":98},[84,36209,145],{"class":90},[84,36211,36212],{"class":118},"\"Tooltip dinámico\"",[84,36214,18994],{"class":90},[84,36216,36217,36219,36221],{"class":86,"line":159},[84,36218,274],{"class":90},[84,36220,95],{"class":94},[84,36222,102],{"class":90},[84,36224,36225],{"class":86,"line":178},[84,36226,126],{"emptyLinePlaceholder":125},[84,36228,36229,36231,36233],{"class":86,"line":190},[84,36230,91],{"class":90},[84,36232,291],{"class":94},[84,36234,102],{"class":90},[84,36236,36238,36240,36242,36245,36247,36250,36253,36255],{"class":36237,"line":196},[86,10151],[84,36239,299],{"class":90},[84,36241,302],{"class":94},[84,36243,36244],{"class":98}," :[attrName]",[84,36246,184],{"class":90},[84,36248,36249],{"class":118},"\"attrValue\"",[84,36251,36252],{"class":90},">Hover me\u003C\u002F",[84,36254,302],{"class":94},[84,36256,102],{"class":90},[84,36258,36259,36261,36263],{"class":86,"line":201},[84,36260,274],{"class":90},[84,36262,291],{"class":94},[84,36264,102],{"class":90},[74,36266,36269],{"className":76,"code":36267,"filename":1782,"highlights":36268,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      attrName: \"title\",\n      attrValue: \"Tooltip dinámico\",\n    };\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton :[attrName]=\"attrValue\">Hover me\u003C\u002Fbutton>\n\u003C\u002Ftemplate>\n",[154,159,232],[22,36270,36271,36279,36287,36293,36299,36309,36319,36323,36327,36331,36339,36343,36351,36370],{"__ignoreMap":80},[84,36272,36273,36275,36277],{"class":86,"line":87},[84,36274,91],{"class":90},[84,36276,95],{"class":94},[84,36278,102],{"class":90},[84,36280,36281,36283,36285],{"class":86,"line":105},[84,36282,418],{"class":108},[84,36284,1870],{"class":108},[84,36286,175],{"class":90},[84,36288,36289,36291],{"class":86,"line":122},[84,36290,1896],{"class":98},[84,36292,1307],{"class":90},[84,36294,36295,36297],{"class":86,"line":129},[84,36296,1903],{"class":108},[84,36298,175],{"class":90},[84,36300,36302,36305,36307],{"class":36301,"line":154},[86,10151],[84,36303,36304],{"class":90},"      attrName: ",[84,36306,36193],{"class":118},[84,36308,1887],{"class":90},[84,36310,36312,36315,36317],{"class":36311,"line":159},[86,10151],[84,36313,36314],{"class":90},"      attrValue: ",[84,36316,36212],{"class":118},[84,36318,1887],{"class":90},[84,36320,36321],{"class":86,"line":178},[84,36322,19195],{"class":90},[84,36324,36325],{"class":86,"line":190},[84,36326,1941],{"class":90},[84,36328,36329],{"class":86,"line":196},[84,36330,18973],{"class":90},[84,36332,36333,36335,36337],{"class":86,"line":201},[84,36334,274],{"class":90},[84,36336,95],{"class":94},[84,36338,102],{"class":90},[84,36340,36341],{"class":86,"line":217},[84,36342,126],{"emptyLinePlaceholder":125},[84,36344,36345,36347,36349],{"class":86,"line":227},[84,36346,91],{"class":90},[84,36348,291],{"class":94},[84,36350,102],{"class":90},[84,36352,36354,36356,36358,36360,36362,36364,36366,36368],{"class":36353,"line":232},[86,10151],[84,36355,299],{"class":90},[84,36357,302],{"class":94},[84,36359,36244],{"class":98},[84,36361,184],{"class":90},[84,36363,36249],{"class":118},[84,36365,36252],{"class":90},[84,36367,302],{"class":94},[84,36369,102],{"class":90},[84,36371,36372,36374,36376],{"class":86,"line":237},[84,36373,274],{"class":90},[84,36375,291],{"class":94},[84,36377,102],{"class":90},[1074,36379,36381,36382,36385],{"id":36380},"_6-v-bindobj-para-pasar-múltiples-atributos-o-props","6) ",[22,36383,36384],{},"v-bind=\"obj\""," para pasar múltiples atributos o props",[74,36387,36390],{"className":76,"code":36388,"filename":873,"highlights":36389,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from \"vue\";\n\nconst inputAttrs = ref({\n  id: \"email\",\n  type: \"email\",\n  placeholder: \"tu@email.com\",\n  autocomplete: \"email\",\n  required: true,\n});\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cinput v-bind=\"inputAttrs\" \u002F>\n\u003C\u002Ftemplate>\n",[129,154,159,178,190,196,201,237],[22,36391,36392,36402,36414,36418,36432,36442,36452,36462,36472,36482,36487,36495,36499,36507,36523],{"__ignoreMap":80},[84,36393,36394,36396,36398,36400],{"class":86,"line":87},[84,36395,91],{"class":90},[84,36397,95],{"class":94},[84,36399,99],{"class":98},[84,36401,102],{"class":90},[84,36403,36404,36406,36408,36410,36412],{"class":86,"line":105},[84,36405,109],{"class":108},[84,36407,112],{"class":90},[84,36409,115],{"class":108},[84,36411,18866],{"class":118},[84,36413,18869],{"class":90},[84,36415,36416],{"class":86,"line":122},[84,36417,126],{"emptyLinePlaceholder":125},[84,36419,36421,36423,36426,36428,36430],{"class":36420,"line":129},[86,10151],[84,36422,132],{"class":108},[84,36424,36425],{"class":135}," inputAttrs",[84,36427,139],{"class":108},[84,36429,142],{"class":98},[84,36431,1876],{"class":90},[84,36433,36435,36438,36440],{"class":36434,"line":154},[86,10151],[84,36436,36437],{"class":90},"  id: ",[84,36439,32590],{"class":118},[84,36441,1887],{"class":90},[84,36443,36445,36448,36450],{"class":36444,"line":159},[86,10151],[84,36446,36447],{"class":90},"  type: ",[84,36449,32590],{"class":118},[84,36451,1887],{"class":90},[84,36453,36455,36458,36460],{"class":36454,"line":178},[86,10151],[84,36456,36457],{"class":90},"  placeholder: ",[84,36459,32604],{"class":118},[84,36461,1887],{"class":90},[84,36463,36465,36468,36470],{"class":36464,"line":190},[86,10151],[84,36466,36467],{"class":90},"  autocomplete: ",[84,36469,32590],{"class":118},[84,36471,1887],{"class":90},[84,36473,36475,36478,36480],{"class":36474,"line":196},[86,10151],[84,36476,36477],{"class":90},"  required: ",[84,36479,2938],{"class":135},[84,36481,1887],{"class":90},[84,36483,36485],{"class":36484,"line":201},[86,10151],[84,36486,22163],{"class":90},[84,36488,36489,36491,36493],{"class":86,"line":217},[84,36490,274],{"class":90},[84,36492,95],{"class":94},[84,36494,102],{"class":90},[84,36496,36497],{"class":86,"line":227},[84,36498,126],{"emptyLinePlaceholder":125},[84,36500,36501,36503,36505],{"class":86,"line":232},[84,36502,91],{"class":90},[84,36504,291],{"class":94},[84,36506,102],{"class":90},[84,36508,36510,36512,36514,36516,36518,36521],{"class":36509,"line":237},[86,10151],[84,36511,299],{"class":90},[84,36513,18759],{"class":94},[84,36515,34721],{"class":98},[84,36517,184],{"class":90},[84,36519,36520],{"class":118},"\"inputAttrs\"",[84,36522,5100],{"class":90},[84,36524,36525,36527,36529],{"class":86,"line":253},[84,36526,274],{"class":90},[84,36528,291],{"class":94},[84,36530,102],{"class":90},[74,36532,36535],{"className":76,"code":36533,"filename":1782,"highlights":36534,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      inputAttrs: {\n        id: \"email\",\n        type: \"email\",\n        placeholder: \"tu@email.com\",\n        autocomplete: \"email\",\n        required: true,\n      },\n    };\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cinput v-bind=\"inputAttrs\" \u002F>\n\u003C\u002Ftemplate>\n",[154,159,178,190,196,201,217,281],[22,36536,36537,36545,36553,36559,36565,36571,36581,36591,36601,36611,36621,36626,36630,36634,36638,36646,36650,36658,36673],{"__ignoreMap":80},[84,36538,36539,36541,36543],{"class":86,"line":87},[84,36540,91],{"class":90},[84,36542,95],{"class":94},[84,36544,102],{"class":90},[84,36546,36547,36549,36551],{"class":86,"line":105},[84,36548,418],{"class":108},[84,36550,1870],{"class":108},[84,36552,175],{"class":90},[84,36554,36555,36557],{"class":86,"line":122},[84,36556,1896],{"class":98},[84,36558,1307],{"class":90},[84,36560,36561,36563],{"class":86,"line":129},[84,36562,1903],{"class":108},[84,36564,175],{"class":90},[84,36566,36568],{"class":36567,"line":154},[86,10151],[84,36569,36570],{"class":90},"      inputAttrs: {\n",[84,36572,36574,36577,36579],{"class":36573,"line":159},[86,10151],[84,36575,36576],{"class":90},"        id: ",[84,36578,32590],{"class":118},[84,36580,1887],{"class":90},[84,36582,36584,36587,36589],{"class":36583,"line":178},[86,10151],[84,36585,36586],{"class":90},"        type: ",[84,36588,32590],{"class":118},[84,36590,1887],{"class":90},[84,36592,36594,36597,36599],{"class":36593,"line":190},[86,10151],[84,36595,36596],{"class":90},"        placeholder: ",[84,36598,32604],{"class":118},[84,36600,1887],{"class":90},[84,36602,36604,36607,36609],{"class":36603,"line":196},[86,10151],[84,36605,36606],{"class":90},"        autocomplete: ",[84,36608,32590],{"class":118},[84,36610,1887],{"class":90},[84,36612,36614,36617,36619],{"class":36613,"line":201},[86,10151],[84,36615,36616],{"class":90},"        required: ",[84,36618,2938],{"class":135},[84,36620,1887],{"class":90},[84,36622,36624],{"class":36623,"line":217},[86,10151],[84,36625,3414],{"class":90},[84,36627,36628],{"class":86,"line":227},[84,36629,19195],{"class":90},[84,36631,36632],{"class":86,"line":232},[84,36633,1941],{"class":90},[84,36635,36636],{"class":86,"line":237},[84,36637,18973],{"class":90},[84,36639,36640,36642,36644],{"class":86,"line":253},[84,36641,274],{"class":90},[84,36643,95],{"class":94},[84,36645,102],{"class":90},[84,36647,36648],{"class":86,"line":266},[84,36649,126],{"emptyLinePlaceholder":125},[84,36651,36652,36654,36656],{"class":86,"line":271},[84,36653,91],{"class":90},[84,36655,291],{"class":94},[84,36657,102],{"class":90},[84,36659,36661,36663,36665,36667,36669,36671],{"class":36660,"line":281},[86,10151],[84,36662,299],{"class":90},[84,36664,18759],{"class":94},[84,36666,34721],{"class":98},[84,36668,184],{"class":90},[84,36670,36520],{"class":118},[84,36672,5100],{"class":90},[84,36674,36675,36677,36679],{"class":86,"line":286},[84,36676,274],{"class":90},[84,36678,291],{"class":94},[84,36680,102],{"class":90},[823,36682,36683],{},[15,36684,36685,36687],{},[22,36686,36384],{}," también es común para forwarding de props en componentes base.",[34,36689,36691],{"id":36690},"ejemplo-integrado","Ejemplo integrado",[15,36693,36694,36695,36697],{},"Formulario simple con ",[22,36696,18692],{}," para atributos, clases y estado.",[74,36699,36701],{"className":76,"code":36700,"filename":873,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { computed, ref } from \"vue\";\n\nconst email = ref(\"\");\nconst isSubmitting = ref(false);\nconst hasError = ref(false);\n\nconst inputAttrs = computed(() => ({\n  type: \"email\",\n  placeholder: \"Ingresa tu correo\",\n  autocomplete: \"email\",\n  required: true,\n}));\n\nconst buttonClass = computed(() => ({\n  \"btn-primary\": !isSubmitting.value,\n  \"btn-disabled\": isSubmitting.value,\n}));\n\nfunction submit() {\n  hasError.value = email.value.trim() === \"\";\n  if (hasError.value) return;\n  isSubmitting.value = true;\n  setTimeout(() => {\n    isSubmitting.value = false;\n  }, 1000);\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cform @submit.prevent=\"submit\">\n    \u003Cinput v-bind=\"inputAttrs\" v-model=\"email\" :class=\"{ 'input-error': hasError }\" \u002F>\n\n    \u003Cbutton :disabled=\"isSubmitting\" :class=\"buttonClass\">\n      {{ isSubmitting ? \"Enviando...\" : \"Enviar\" }}\n    \u003C\u002Fbutton>\n\n    \u003Cp :style=\"{ color: hasError ? '#E74C3C' : '#2ECC71' }\">\n      {{ hasError ? \"El correo es obligatorio.\" : \"Listo para enviar.\" }}\n    \u003C\u002Fp>\n  \u003C\u002Fform>\n\u003C\u002Ftemplate>\n",[22,36702,36703,36713,36725,36729,36745,36762,36778,36782,36799,36807,36816,36824,36832,36837,36841,36858,36870,36878,36882,36886,36895,36914,36925,36936,36947,36958,36966,36970,36978,36982,36990,37004,37032,37036,37058,37063,37071,37075,37090,37095,37103,37111],{"__ignoreMap":80},[84,36704,36705,36707,36709,36711],{"class":86,"line":87},[84,36706,91],{"class":90},[84,36708,95],{"class":94},[84,36710,99],{"class":98},[84,36712,102],{"class":90},[84,36714,36715,36717,36719,36721,36723],{"class":86,"line":105},[84,36716,109],{"class":108},[84,36718,24087],{"class":90},[84,36720,115],{"class":108},[84,36722,18866],{"class":118},[84,36724,18869],{"class":90},[84,36726,36727],{"class":86,"line":122},[84,36728,126],{"emptyLinePlaceholder":125},[84,36730,36731,36733,36735,36737,36739,36741,36743],{"class":86,"line":129},[84,36732,132],{"class":108},[84,36734,32479],{"class":135},[84,36736,139],{"class":108},[84,36738,142],{"class":98},[84,36740,145],{"class":90},[84,36742,26013],{"class":118},[84,36744,18994],{"class":90},[84,36746,36747,36749,36752,36754,36756,36758,36760],{"class":86,"line":154},[84,36748,132],{"class":108},[84,36750,36751],{"class":135}," isSubmitting",[84,36753,139],{"class":108},[84,36755,142],{"class":98},[84,36757,145],{"class":90},[84,36759,148],{"class":135},[84,36761,18994],{"class":90},[84,36763,36764,36766,36768,36770,36772,36774,36776],{"class":86,"line":159},[84,36765,132],{"class":108},[84,36767,4261],{"class":135},[84,36769,139],{"class":108},[84,36771,142],{"class":98},[84,36773,145],{"class":90},[84,36775,148],{"class":135},[84,36777,18994],{"class":90},[84,36779,36780],{"class":86,"line":178},[84,36781,126],{"emptyLinePlaceholder":125},[84,36783,36784,36786,36788,36790,36792,36794,36796],{"class":86,"line":190},[84,36785,132],{"class":108},[84,36787,36425],{"class":135},[84,36789,139],{"class":108},[84,36791,2989],{"class":98},[84,36793,2992],{"class":90},[84,36795,172],{"class":108},[84,36797,36798],{"class":90}," ({\n",[84,36800,36801,36803,36805],{"class":86,"line":196},[84,36802,36447],{"class":90},[84,36804,32590],{"class":118},[84,36806,1887],{"class":90},[84,36808,36809,36811,36814],{"class":86,"line":201},[84,36810,36457],{"class":90},[84,36812,36813],{"class":118},"\"Ingresa tu correo\"",[84,36815,1887],{"class":90},[84,36817,36818,36820,36822],{"class":86,"line":217},[84,36819,36467],{"class":90},[84,36821,32590],{"class":118},[84,36823,1887],{"class":90},[84,36825,36826,36828,36830],{"class":86,"line":227},[84,36827,36477],{"class":90},[84,36829,2938],{"class":135},[84,36831,1887],{"class":90},[84,36833,36834],{"class":86,"line":232},[84,36835,36836],{"class":90},"}));\n",[84,36838,36839],{"class":86,"line":237},[84,36840,126],{"emptyLinePlaceholder":125},[84,36842,36843,36845,36848,36850,36852,36854,36856],{"class":86,"line":253},[84,36844,132],{"class":108},[84,36846,36847],{"class":135}," buttonClass",[84,36849,139],{"class":108},[84,36851,2989],{"class":98},[84,36853,2992],{"class":90},[84,36855,172],{"class":108},[84,36857,36798],{"class":90},[84,36859,36860,36863,36865,36867],{"class":86,"line":266},[84,36861,36862],{"class":118},"  \"btn-primary\"",[84,36864,21408],{"class":90},[84,36866,1344],{"class":108},[84,36868,36869],{"class":90},"isSubmitting.value,\n",[84,36871,36872,36875],{"class":86,"line":271},[84,36873,36874],{"class":118},"  \"btn-disabled\"",[84,36876,36877],{"class":90},": isSubmitting.value,\n",[84,36879,36880],{"class":86,"line":281},[84,36881,36836],{"class":90},[84,36883,36884],{"class":86,"line":286},[84,36885,126],{"emptyLinePlaceholder":125},[84,36887,36888,36890,36893],{"class":86,"line":296},[84,36889,3246],{"class":108},[84,36891,36892],{"class":98}," submit",[84,36894,1307],{"class":90},[84,36896,36897,36899,36901,36904,36906,36908,36910,36912],{"class":86,"line":315},[84,36898,4723],{"class":90},[84,36900,184],{"class":108},[84,36902,36903],{"class":90}," email.value.",[84,36905,32516],{"class":98},[84,36907,8890],{"class":90},[84,36909,3288],{"class":108},[84,36911,33684],{"class":118},[84,36913,18869],{"class":90},[84,36915,36916,36918,36921,36923],{"class":86,"line":321},[84,36917,1338],{"class":108},[84,36919,36920],{"class":90}," (hasError.value) ",[84,36922,19063],{"class":108},[84,36924,18869],{"class":90},[84,36926,36927,36930,36932,36934],{"class":86,"line":331},[84,36928,36929],{"class":90},"  isSubmitting.value ",[84,36931,184],{"class":108},[84,36933,21148],{"class":135},[84,36935,18869],{"class":90},[84,36937,36938,36941,36943,36945],{"class":86,"line":336},[84,36939,36940],{"class":98},"  setTimeout",[84,36942,2992],{"class":90},[84,36944,172],{"class":108},[84,36946,175],{"class":90},[84,36948,36949,36952,36954,36956],{"class":86,"line":354},[84,36950,36951],{"class":90},"    isSubmitting.value ",[84,36953,184],{"class":108},[84,36955,435],{"class":135},[84,36957,18869],{"class":90},[84,36959,36960,36962,36964],{"class":86,"line":360},[84,36961,6888],{"class":90},[84,36963,11994],{"class":135},[84,36965,18994],{"class":90},[84,36967,36968],{"class":86,"line":369},[84,36969,193],{"class":90},[84,36971,36972,36974,36976],{"class":86,"line":1453},[84,36973,274],{"class":90},[84,36975,95],{"class":94},[84,36977,102],{"class":90},[84,36979,36980],{"class":86,"line":1462},[84,36981,126],{"emptyLinePlaceholder":125},[84,36983,36984,36986,36988],{"class":86,"line":1484},[84,36985,91],{"class":90},[84,36987,291],{"class":94},[84,36989,102],{"class":90},[84,36991,36992,36994,36996,36998,37000,37002],{"class":86,"line":1489},[84,36993,299],{"class":90},[84,36995,31973],{"class":94},[84,36997,32570],{"class":98},[84,36999,184],{"class":90},[84,37001,32619],{"class":118},[84,37003,102],{"class":90},[84,37005,37006,37008,37010,37012,37014,37016,37018,37020,37022,37025,37027,37030],{"class":86,"line":1495},[84,37007,1642],{"class":90},[84,37009,18759],{"class":94},[84,37011,34721],{"class":98},[84,37013,184],{"class":90},[84,37015,36520],{"class":118},[84,37017,24454],{"class":98},[84,37019,184],{"class":90},[84,37021,32590],{"class":118},[84,37023,37024],{"class":98}," :class",[84,37026,184],{"class":90},[84,37028,37029],{"class":118},"\"{ 'input-error': hasError }\"",[84,37031,5100],{"class":90},[84,37033,37034],{"class":86,"line":1500},[84,37035,126],{"emptyLinePlaceholder":125},[84,37037,37038,37040,37042,37044,37046,37049,37051,37053,37056],{"class":86,"line":1516},[84,37039,1642],{"class":90},[84,37041,302],{"class":94},[84,37043,35438],{"class":98},[84,37045,184],{"class":90},[84,37047,37048],{"class":118},"\"isSubmitting\"",[84,37050,37024],{"class":98},[84,37052,184],{"class":90},[84,37054,37055],{"class":118},"\"buttonClass\"",[84,37057,102],{"class":90},[84,37059,37060],{"class":86,"line":1533},[84,37061,37062],{"class":90},"      {{ isSubmitting ? \"Enviando...\" : \"Enviar\" }}\n",[84,37064,37065,37067,37069],{"class":86,"line":1538},[84,37066,1734],{"class":90},[84,37068,302],{"class":94},[84,37070,102],{"class":90},[84,37072,37073],{"class":86,"line":1545},[84,37074,126],{"emptyLinePlaceholder":125},[84,37076,37077,37079,37081,37083,37085,37088],{"class":86,"line":1554},[84,37078,1642],{"class":90},[84,37080,15],{"class":94},[84,37082,33987],{"class":98},[84,37084,184],{"class":90},[84,37086,37087],{"class":118},"\"{ color: hasError ? '#E74C3C' : '#2ECC71' }\"",[84,37089,102],{"class":90},[84,37091,37092],{"class":86,"line":1563},[84,37093,37094],{"class":90},"      {{ hasError ? \"El correo es obligatorio.\" : \"Listo para enviar.\" }}\n",[84,37096,37097,37099,37101],{"class":86,"line":1570},[84,37098,1734],{"class":90},[84,37100,15],{"class":94},[84,37102,102],{"class":90},[84,37104,37105,37107,37109],{"class":86,"line":1588},[84,37106,324],{"class":90},[84,37108,31973],{"class":94},[84,37110,102],{"class":90},[84,37112,37113,37115,37117],{"class":86,"line":1593},[84,37114,274],{"class":90},[84,37116,291],{"class":94},[84,37118,102],{"class":90},[74,37120,37122],{"className":76,"code":37121,"filename":1782,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      email: \"\",\n      isSubmitting: false,\n      hasError: false,\n    };\n  },\n  computed: {\n    inputAttrs() {\n      return {\n        type: \"email\",\n        placeholder: \"Ingresa tu correo\",\n        autocomplete: \"email\",\n        required: true,\n      };\n    },\n    buttonClass() {\n      return {\n        \"btn-primary\": !this.isSubmitting,\n        \"btn-disabled\": this.isSubmitting,\n      };\n    },\n  },\n  methods: {\n    submit() {\n      this.hasError = this.email.trim() === \"\";\n      if (this.hasError) return;\n      this.isSubmitting = true;\n      setTimeout(() => {\n        this.isSubmitting = false;\n      }, 1000);\n    },\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cform @submit.prevent=\"submit\">\n    \u003Cinput v-bind=\"inputAttrs\" v-model=\"email\" :class=\"{ 'input-error': hasError }\" \u002F>\n\n    \u003Cbutton :disabled=\"isSubmitting\" :class=\"buttonClass\">\n      {{ isSubmitting ? \"Enviando...\" : \"Enviar\" }}\n    \u003C\u002Fbutton>\n\n    \u003Cp :style=\"{ color: hasError ? '#E74C3C' : '#2ECC71' }\">\n      {{ hasError ? \"El correo es obligatorio.\" : \"Listo para enviar.\" }}\n    \u003C\u002Fp>\n  \u003C\u002Fform>\n\u003C\u002Ftemplate>\n",[22,37123,37124,37132,37140,37146,37152,37160,37169,37177,37181,37185,37189,37196,37202,37210,37218,37226,37234,37239,37243,37250,37256,37270,37281,37285,37289,37293,37297,37304,37326,37341,37354,37365,37377,37385,37389,37393,37397,37405,37409,37417,37431,37457,37461,37481,37485,37493,37497,37511,37515,37523,37531],{"__ignoreMap":80},[84,37125,37126,37128,37130],{"class":86,"line":87},[84,37127,91],{"class":90},[84,37129,95],{"class":94},[84,37131,102],{"class":90},[84,37133,37134,37136,37138],{"class":86,"line":105},[84,37135,418],{"class":108},[84,37137,1870],{"class":108},[84,37139,175],{"class":90},[84,37141,37142,37144],{"class":86,"line":122},[84,37143,1896],{"class":98},[84,37145,1307],{"class":90},[84,37147,37148,37150],{"class":86,"line":129},[84,37149,1903],{"class":108},[84,37151,175],{"class":90},[84,37153,37154,37156,37158],{"class":86,"line":154},[84,37155,32687],{"class":90},[84,37157,26013],{"class":118},[84,37159,1887],{"class":90},[84,37161,37162,37165,37167],{"class":86,"line":159},[84,37163,37164],{"class":90},"      isSubmitting: ",[84,37166,148],{"class":135},[84,37168,1887],{"class":90},[84,37170,37171,37173,37175],{"class":86,"line":178},[84,37172,5438],{"class":90},[84,37174,148],{"class":135},[84,37176,1887],{"class":90},[84,37178,37179],{"class":86,"line":190},[84,37180,19195],{"class":90},[84,37182,37183],{"class":86,"line":196},[84,37184,1941],{"class":90},[84,37186,37187],{"class":86,"line":201},[84,37188,3527],{"class":90},[84,37190,37191,37194],{"class":86,"line":217},[84,37192,37193],{"class":98},"    inputAttrs",[84,37195,1307],{"class":90},[84,37197,37198,37200],{"class":86,"line":227},[84,37199,3539],{"class":108},[84,37201,175],{"class":90},[84,37203,37204,37206,37208],{"class":86,"line":232},[84,37205,36586],{"class":90},[84,37207,32590],{"class":118},[84,37209,1887],{"class":90},[84,37211,37212,37214,37216],{"class":86,"line":237},[84,37213,36596],{"class":90},[84,37215,36813],{"class":118},[84,37217,1887],{"class":90},[84,37219,37220,37222,37224],{"class":86,"line":253},[84,37221,36606],{"class":90},[84,37223,32590],{"class":118},[84,37225,1887],{"class":90},[84,37227,37228,37230,37232],{"class":86,"line":266},[84,37229,36616],{"class":90},[84,37231,2938],{"class":135},[84,37233,1887],{"class":90},[84,37235,37236],{"class":86,"line":271},[84,37237,37238],{"class":90},"      };\n",[84,37240,37241],{"class":86,"line":281},[84,37242,7783],{"class":90},[84,37244,37245,37248],{"class":86,"line":286},[84,37246,37247],{"class":98},"    buttonClass",[84,37249,1307],{"class":90},[84,37251,37252,37254],{"class":86,"line":296},[84,37253,3539],{"class":108},[84,37255,175],{"class":90},[84,37257,37258,37261,37263,37265,37267],{"class":86,"line":315},[84,37259,37260],{"class":118},"        \"btn-primary\"",[84,37262,21408],{"class":90},[84,37264,1344],{"class":108},[84,37266,2151],{"class":135},[84,37268,37269],{"class":90},".isSubmitting,\n",[84,37271,37272,37275,37277,37279],{"class":86,"line":321},[84,37273,37274],{"class":118},"        \"btn-disabled\"",[84,37276,21408],{"class":90},[84,37278,2151],{"class":135},[84,37280,37269],{"class":90},[84,37282,37283],{"class":86,"line":331},[84,37284,37238],{"class":90},[84,37286,37287],{"class":86,"line":336},[84,37288,7783],{"class":90},[84,37290,37291],{"class":86,"line":354},[84,37292,1941],{"class":90},[84,37294,37295],{"class":86,"line":360},[84,37296,1950],{"class":90},[84,37298,37299,37302],{"class":86,"line":369},[84,37300,37301],{"class":98},"    submit",[84,37303,1307],{"class":90},[84,37305,37306,37308,37310,37312,37314,37316,37318,37320,37322,37324],{"class":86,"line":1453},[84,37307,2022],{"class":135},[84,37309,5502],{"class":90},[84,37311,184],{"class":108},[84,37313,2078],{"class":135},[84,37315,32723],{"class":90},[84,37317,32516],{"class":98},[84,37319,8890],{"class":90},[84,37321,3288],{"class":108},[84,37323,33684],{"class":118},[84,37325,18869],{"class":90},[84,37327,37328,37330,37332,37334,37337,37339],{"class":86,"line":1462},[84,37329,1987],{"class":108},[84,37331,1341],{"class":90},[84,37333,2151],{"class":135},[84,37335,37336],{"class":90},".hasError) ",[84,37338,19063],{"class":108},[84,37340,18869],{"class":90},[84,37342,37343,37345,37348,37350,37352],{"class":86,"line":1484},[84,37344,2022],{"class":135},[84,37346,37347],{"class":90},".isSubmitting ",[84,37349,184],{"class":108},[84,37351,21148],{"class":135},[84,37353,18869],{"class":90},[84,37355,37356,37359,37361,37363],{"class":86,"line":1489},[84,37357,37358],{"class":98},"      setTimeout",[84,37360,2992],{"class":90},[84,37362,172],{"class":108},[84,37364,175],{"class":90},[84,37366,37367,37369,37371,37373,37375],{"class":86,"line":1495},[84,37368,9580],{"class":135},[84,37370,37347],{"class":90},[84,37372,184],{"class":108},[84,37374,435],{"class":135},[84,37376,18869],{"class":90},[84,37378,37379,37381,37383],{"class":86,"line":1500},[84,37380,7851],{"class":90},[84,37382,11994],{"class":135},[84,37384,18994],{"class":90},[84,37386,37387],{"class":86,"line":1516},[84,37388,7783],{"class":90},[84,37390,37391],{"class":86,"line":1533},[84,37392,1941],{"class":90},[84,37394,37395],{"class":86,"line":1538},[84,37396,18973],{"class":90},[84,37398,37399,37401,37403],{"class":86,"line":1545},[84,37400,274],{"class":90},[84,37402,95],{"class":94},[84,37404,102],{"class":90},[84,37406,37407],{"class":86,"line":1554},[84,37408,126],{"emptyLinePlaceholder":125},[84,37410,37411,37413,37415],{"class":86,"line":1563},[84,37412,91],{"class":90},[84,37414,291],{"class":94},[84,37416,102],{"class":90},[84,37418,37419,37421,37423,37425,37427,37429],{"class":86,"line":1570},[84,37420,299],{"class":90},[84,37422,31973],{"class":94},[84,37424,32570],{"class":98},[84,37426,184],{"class":90},[84,37428,32619],{"class":118},[84,37430,102],{"class":90},[84,37432,37433,37435,37437,37439,37441,37443,37445,37447,37449,37451,37453,37455],{"class":86,"line":1588},[84,37434,1642],{"class":90},[84,37436,18759],{"class":94},[84,37438,34721],{"class":98},[84,37440,184],{"class":90},[84,37442,36520],{"class":118},[84,37444,24454],{"class":98},[84,37446,184],{"class":90},[84,37448,32590],{"class":118},[84,37450,37024],{"class":98},[84,37452,184],{"class":90},[84,37454,37029],{"class":118},[84,37456,5100],{"class":90},[84,37458,37459],{"class":86,"line":1593},[84,37460,126],{"emptyLinePlaceholder":125},[84,37462,37463,37465,37467,37469,37471,37473,37475,37477,37479],{"class":86,"line":1598},[84,37464,1642],{"class":90},[84,37466,302],{"class":94},[84,37468,35438],{"class":98},[84,37470,184],{"class":90},[84,37472,37048],{"class":118},[84,37474,37024],{"class":98},[84,37476,184],{"class":90},[84,37478,37055],{"class":118},[84,37480,102],{"class":90},[84,37482,37483],{"class":86,"line":1607},[84,37484,37062],{"class":90},[84,37486,37487,37489,37491],{"class":86,"line":1612},[84,37488,1734],{"class":90},[84,37490,302],{"class":94},[84,37492,102],{"class":90},[84,37494,37495],{"class":86,"line":1621},[84,37496,126],{"emptyLinePlaceholder":125},[84,37498,37499,37501,37503,37505,37507,37509],{"class":86,"line":1639},[84,37500,1642],{"class":90},[84,37502,15],{"class":94},[84,37504,33987],{"class":98},[84,37506,184],{"class":90},[84,37508,37087],{"class":118},[84,37510,102],{"class":90},[84,37512,37513],{"class":86,"line":1661},[84,37514,37094],{"class":90},[84,37516,37517,37519,37521],{"class":86,"line":1666},[84,37518,1734],{"class":90},[84,37520,15],{"class":94},[84,37522,102],{"class":90},[84,37524,37525,37527,37529],{"class":86,"line":1688},[84,37526,324],{"class":90},[84,37528,31973],{"class":94},[84,37530,102],{"class":90},[84,37532,37533,37535,37537],{"class":86,"line":1703},[84,37534,274],{"class":90},[84,37536,291],{"class":94},[84,37538,102],{"class":90},[34,37540,2406],{"id":2405},[15,37542,37543,37545],{},[22,37544,18692],{}," es la forma declarativa de conectar estado y atributos en Vue.\nDominarlo te permite construir interfaces dinámicas de manera limpia y mantenible.",[15,37547,37548],{},"Qué recordar:",[737,37550,37551,37558,37565,37570],{},[740,37552,37553,37555,37556,764],{},[22,37554,1203],{}," es shorthand de ",[22,37557,18692],{},[740,37559,37560,37561,2488,37563,764],{},"Úsalo para atributos, props, ",[22,37562,34809],{},[22,37564,835],{},[740,37566,37567,37568,764],{},"Evita lógica compleja inline: mueve reglas a ",[22,37569,2523],{},[740,37571,37572,37574],{},[22,37573,36384],{}," es ideal para agrupar atributos\u002Fprops.",[15,37576,37577,37578,37580],{},"Si entiendes bien ",[22,37579,18692],{},", entiendes una parte central de cómo Vue traduce reactividad en UI real.",[835,37582,37583],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}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 .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}",{"title":80,"searchDepth":105,"depth":105,"links":37585},[37586,37587,37588,37589,37590,37599,37613,37614],{"id":21333,"depth":105,"text":21334},{"id":25349,"depth":105,"text":25350},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":783,"depth":105,"text":784,"children":37591},[37592,37594,37596,37597],{"id":34874,"depth":122,"text":37593},"1) Olvidar que v-bind evalúa JavaScript",{"id":34975,"depth":122,"text":37595},"2) Poner demasiada lógica inline en :class o :style",{"id":35059,"depth":122,"text":35060},{"id":35104,"depth":122,"text":37598},"4) Creer que v-bind \"protege\" datos",{"id":2735,"depth":105,"text":2736,"children":37600},[37601,37603,37605,37607,37609,37611],{"id":35118,"depth":122,"text":37602},"1) Básico: enlace dinámico (href)",{"id":35355,"depth":122,"text":37604},"2) Atributo booleano dinámico (disabled)",{"id":35580,"depth":122,"text":37606},"3) v-bind:class con objeto (patrón recomendado)",{"id":35883,"depth":122,"text":37608},"4) v-bind:style dinámico con objeto",{"id":36138,"depth":122,"text":37610},"5) Argumento dinámico: :[attrName]=\"value\"",{"id":36380,"depth":122,"text":37612},"6) v-bind=\"obj\" para pasar múltiples atributos o props",{"id":36690,"depth":105,"text":36691},{"id":2405,"depth":105,"text":2406},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1770849828\u002Fdirectives-vue-v-bind-guide_gqrgyj.png","Imagen temporal para portada del artículo sobre v-bind en Vue","2026-02-11","Aprende a usar v-bind en Vue desde lo más básico hasta patrones avanzados: atributos dinámicos, class\u002Fstyle reactivos, props en componentes y errores comunes.",{"updatedAt":37620,"coverCaption":18477,"author":868,"keywords":37621},"2026-02-11T18:00:00-05:00",[870,18692,37622,37623,37624,873,1782],"atributos dinámicos","class binding","style binding","\u002Fblog\u002Fdirectives-vue-v-bind-guide.es",[37627],{"headline":37628,"author":37629,"datePublished":37620,"@type":880},"Directiva v-bind en Vue: guía de básico a avanzado",{"name":868,"@type":879},{"title":34659,"description":37618},"blog\u002Fdirectives-vue-v-bind-guide.es",[37633,37634,37635,37636],{"tag":21297,"color":21298},{"tag":22594,"color":22595},{"tag":3945,"color":3946},{"tag":894,"color":895},"ggicPee9rp0vgescxGeL26jTmua2py715WKhjmXHpp0",{"id":37639,"title":37640,"body":37641,"cover":40966,"coverAlt":40967,"date":40968,"description":40969,"draft":852,"extension":853,"lab":882,"locale":864,"meta":40970,"navigation":125,"path":40974,"schemaOrg":40975,"seo":40979,"series":21291,"seriesDescription":21292,"seriesOrder":122,"seriesTitle":21293,"slug":882,"stem":40980,"tags":40981,"__hash__":40987},"blog\u002Fblog\u002Fdirectives-vue-v-for-guide.es.md","Directivas en Vue: v-for",{"type":8,"value":37642,"toc":40930},[37643,37650,37655,37658,37671,37674,37676,37679,37696,37702,37713,37719,37722,37733,37735,37741,37765,37769,37892,38017,38021,38024,38230,38437,38444,38450,38453,38571,38695,38699,38837,38978,38984,39177,39367,39371,39377,39385,39662,39926,39932,40081,40241,40245,40466,40685,40691,40699,40754,40757,40765,40774,40841,40849,40855,40858,40864,40870,40874,40900,40902,40907,40910,40925,40928],[11,37644,37646,37647,37649],{"id":37645},"directiva-v-for-en-vue-de-lo-básico-a-lo-avanzado","Directiva ",[22,37648,25577],{}," en Vue: de lo básico a lo avanzado",[15,37651,37652,37654],{},[22,37653,25577],{}," es la directiva de Vue para renderizar listas.\nParece simple, pero usarla bien marca una diferencia enorme en rendimiento, estabilidad visual y legibilidad del código.",[15,37656,37657],{},"La idea clave es esta:",[737,37659,37660,37665],{},[740,37661,37662,37664],{},[22,37663,25577],{}," describe cómo repetir estructura en el template.",[740,37666,37667,37670],{},[22,37668,37669],{},":key"," le dice a Vue cómo identificar cada nodo de forma estable.",[15,37672,37673],{},"Si dominas ese par, evitas la mayoría de bugs en listas dinámicas.",[34,37675,21334],{"id":21333},[15,37677,37678],{},"En aplicaciones reales siempre renderizas listas:",[737,37680,37681,37684,37687,37690,37693],{},[740,37682,37683],{},"Tareas",[740,37685,37686],{},"Productos",[740,37688,37689],{},"Comentarios",[740,37691,37692],{},"Notificaciones",[740,37694,37695],{},"Filas de tablas",[15,37697,37698,37699,37701],{},"Cuando la lista cambia (insertar, borrar, reordenar), Vue necesita saber qué item es cuál.\nSi la clave (",[22,37700,2580],{},") no es estable, aparecen errores como:",[737,37703,37704,37707,37710],{},[740,37705,37706],{},"Estados internos mezclados entre filas",[740,37708,37709],{},"Animaciones raras",[740,37711,37712],{},"Inputs que \"saltan\" de elemento",[34,37714,37716,37717],{"id":37715},"cuándo-usar-v-for","Cuándo usar ",[22,37718,25577],{},[15,37720,37721],{},"Úsalo cuando necesitas:",[737,37723,37724,37727,37730],{},[740,37725,37726],{},"Renderizar arrays u objetos reactivos",[740,37728,37729],{},"Repetir componentes con distintos datos",[740,37731,37732],{},"Mostrar estructuras anidadas (ej: categorías y productos)",[34,37734,1040],{"id":1039},[15,37736,37737,37738,37740],{},"Evita usar ",[22,37739,25577],{}," para:",[737,37742,37743,37746,37756],{},[740,37744,37745],{},"Hacer filtrado complejo directamente en el template",[740,37747,37748,37749,2488,37751,37753,37754],{},"Combinar ",[22,37750,8299],{},[22,37752,25577],{}," en el mismo nodo si puedes prefiltrar con ",[22,37755,2523],{},[740,37757,10045,37758,37761,37762,37764],{},[22,37759,37760],{},"index"," como ",[22,37763,2580],{}," en listas que cambian de orden",[34,37766,37768],{"id":37767},"sintaxis-base","Sintaxis base",[74,37770,37773],{"className":76,"code":37771,"filename":873,"highlights":37772,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst frameworks = ref(['Vue', 'React', 'Svelte'])\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cli v-for=\"framework in frameworks\" :key=\"framework\">\n    {{ framework }}\n  \u003C\u002Fli>\n\u003C\u002Ftemplate>\n",[190],[22,37774,37775,37785,37795,37799,37828,37836,37840,37848,37871,37876,37884],{"__ignoreMap":80},[84,37776,37777,37779,37781,37783],{"class":86,"line":87},[84,37778,91],{"class":90},[84,37780,95],{"class":94},[84,37782,99],{"class":98},[84,37784,102],{"class":90},[84,37786,37787,37789,37791,37793],{"class":86,"line":105},[84,37788,109],{"class":108},[84,37790,112],{"class":90},[84,37792,115],{"class":108},[84,37794,119],{"class":118},[84,37796,37797],{"class":86,"line":122},[84,37798,126],{"emptyLinePlaceholder":125},[84,37800,37801,37803,37806,37808,37810,37813,37816,37818,37821,37823,37826],{"class":86,"line":129},[84,37802,132],{"class":108},[84,37804,37805],{"class":135}," frameworks",[84,37807,139],{"class":108},[84,37809,142],{"class":98},[84,37811,37812],{"class":90},"([",[84,37814,37815],{"class":118},"'Vue'",[84,37817,754],{"class":90},[84,37819,37820],{"class":118},"'React'",[84,37822,754],{"class":90},[84,37824,37825],{"class":118},"'Svelte'",[84,37827,2973],{"class":90},[84,37829,37830,37832,37834],{"class":86,"line":154},[84,37831,274],{"class":90},[84,37833,95],{"class":94},[84,37835,102],{"class":90},[84,37837,37838],{"class":86,"line":159},[84,37839,126],{"emptyLinePlaceholder":125},[84,37841,37842,37844,37846],{"class":86,"line":178},[84,37843,91],{"class":90},[84,37845,291],{"class":94},[84,37847,102],{"class":90},[84,37849,37851,37853,37855,37857,37859,37862,37864,37866,37869],{"class":37850,"line":190},[86,10151],[84,37852,299],{"class":90},[84,37854,740],{"class":94},[84,37856,13525],{"class":98},[84,37858,184],{"class":90},[84,37860,37861],{"class":118},"\"framework in frameworks\"",[84,37863,5092],{"class":98},[84,37865,184],{"class":90},[84,37867,37868],{"class":118},"\"framework\"",[84,37870,102],{"class":90},[84,37872,37873],{"class":86,"line":196},[84,37874,37875],{"class":90},"    {{ framework }}\n",[84,37877,37878,37880,37882],{"class":86,"line":201},[84,37879,324],{"class":90},[84,37881,740],{"class":94},[84,37883,102],{"class":90},[84,37885,37886,37888,37890],{"class":86,"line":217},[84,37887,274],{"class":90},[84,37889,291],{"class":94},[84,37891,102],{"class":90},[74,37893,37896],{"className":76,"code":37894,"filename":1782,"highlights":37895,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      frameworks: ['Vue', 'React', 'Svelte']\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cli v-for=\"framework in frameworks\" :key=\"framework\">\n    {{ framework }}\n  \u003C\u002Fli>\n\u003C\u002Ftemplate>\n",[227],[22,37897,37898,37906,37914,37920,37926,37944,37948,37952,37956,37964,37968,37976,37997,38001,38009],{"__ignoreMap":80},[84,37899,37900,37902,37904],{"class":86,"line":87},[84,37901,91],{"class":90},[84,37903,95],{"class":94},[84,37905,102],{"class":90},[84,37907,37908,37910,37912],{"class":86,"line":105},[84,37909,418],{"class":108},[84,37911,1870],{"class":108},[84,37913,175],{"class":90},[84,37915,37916,37918],{"class":86,"line":122},[84,37917,1896],{"class":98},[84,37919,1307],{"class":90},[84,37921,37922,37924],{"class":86,"line":129},[84,37923,1903],{"class":108},[84,37925,175],{"class":90},[84,37927,37928,37931,37933,37935,37937,37939,37941],{"class":86,"line":154},[84,37929,37930],{"class":90},"      frameworks: [",[84,37932,37815],{"class":118},[84,37934,754],{"class":90},[84,37936,37820],{"class":118},[84,37938,754],{"class":90},[84,37940,37825],{"class":118},[84,37942,37943],{"class":90},"]\n",[84,37945,37946],{"class":86,"line":159},[84,37947,1936],{"class":90},[84,37949,37950],{"class":86,"line":178},[84,37951,485],{"class":90},[84,37953,37954],{"class":86,"line":190},[84,37955,193],{"class":90},[84,37957,37958,37960,37962],{"class":86,"line":196},[84,37959,274],{"class":90},[84,37961,95],{"class":94},[84,37963,102],{"class":90},[84,37965,37966],{"class":86,"line":201},[84,37967,126],{"emptyLinePlaceholder":125},[84,37969,37970,37972,37974],{"class":86,"line":217},[84,37971,91],{"class":90},[84,37973,291],{"class":94},[84,37975,102],{"class":90},[84,37977,37979,37981,37983,37985,37987,37989,37991,37993,37995],{"class":37978,"line":227},[86,10151],[84,37980,299],{"class":90},[84,37982,740],{"class":94},[84,37984,13525],{"class":98},[84,37986,184],{"class":90},[84,37988,37861],{"class":118},[84,37990,5092],{"class":98},[84,37992,184],{"class":90},[84,37994,37868],{"class":118},[84,37996,102],{"class":90},[84,37998,37999],{"class":86,"line":232},[84,38000,37875],{"class":90},[84,38002,38003,38005,38007],{"class":86,"line":237},[84,38004,324],{"class":90},[84,38006,740],{"class":94},[84,38008,102],{"class":90},[84,38010,38011,38013,38015],{"class":86,"line":253},[84,38012,274],{"class":90},[84,38014,291],{"class":94},[84,38016,102],{"class":90},[34,38018,38020],{"id":38019},"ejemplo-básico-lista-de-tareas","Ejemplo básico: lista de tareas",[15,38022,38023],{},"Este es el patrón más común y correcto para empezar.",[74,38025,38028],{"className":76,"code":38026,"filename":873,"highlights":38027,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst todos = ref([\n  { id: 1, text: 'Aprender v-for', done: true },\n  { id: 2, text: 'Practicar key estable', done: false },\n  { id: 3, text: 'Evitar index como key', done: false }\n])\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cul>\n    \u003Cli v-for=\"todo in todos\" :key=\"todo.id\">\n      \u003Cspan :style=\"{ textDecoration: todo.done ? 'line-through' : 'none' }\">\n        {{ todo.text }}\n      \u003C\u002Fspan>\n    \u003C\u002Fli>\n  \u003C\u002Ful>\n\u003C\u002Ftemplate>\n",[129,154,159,178,190,232],[22,38029,38030,38040,38050,38054,38068,38086,38104,38122,38127,38135,38139,38147,38155,38178,38193,38198,38206,38214,38222],{"__ignoreMap":80},[84,38031,38032,38034,38036,38038],{"class":86,"line":87},[84,38033,91],{"class":90},[84,38035,95],{"class":94},[84,38037,99],{"class":98},[84,38039,102],{"class":90},[84,38041,38042,38044,38046,38048],{"class":86,"line":105},[84,38043,109],{"class":108},[84,38045,112],{"class":90},[84,38047,115],{"class":108},[84,38049,119],{"class":118},[84,38051,38052],{"class":86,"line":122},[84,38053,126],{"emptyLinePlaceholder":125},[84,38055,38057,38059,38062,38064,38066],{"class":38056,"line":129},[86,10151],[84,38058,132],{"class":108},[84,38060,38061],{"class":135}," todos",[84,38063,139],{"class":108},[84,38065,142],{"class":98},[84,38067,2894],{"class":90},[84,38069,38071,38073,38075,38077,38080,38082,38084],{"class":38070,"line":154},[86,10151],[84,38072,2899],{"class":90},[84,38074,2862],{"class":135},[84,38076,10443],{"class":90},[84,38078,38079],{"class":118},"'Aprender v-for'",[84,38081,2910],{"class":90},[84,38083,2938],{"class":135},[84,38085,2921],{"class":90},[84,38087,38089,38091,38093,38095,38098,38100,38102],{"class":38088,"line":159},[86,10151],[84,38090,2899],{"class":90},[84,38092,2928],{"class":135},[84,38094,10443],{"class":90},[84,38096,38097],{"class":118},"'Practicar key estable'",[84,38099,2910],{"class":90},[84,38101,148],{"class":135},[84,38103,2921],{"class":90},[84,38105,38107,38109,38111,38113,38116,38118,38120],{"class":38106,"line":178},[86,10151],[84,38108,2899],{"class":90},[84,38110,2952],{"class":135},[84,38112,10443],{"class":90},[84,38114,38115],{"class":118},"'Evitar index como key'",[84,38117,2910],{"class":90},[84,38119,148],{"class":135},[84,38121,2968],{"class":90},[84,38123,38125],{"class":38124,"line":190},[86,10151],[84,38126,2973],{"class":90},[84,38128,38129,38131,38133],{"class":86,"line":196},[84,38130,274],{"class":90},[84,38132,95],{"class":94},[84,38134,102],{"class":90},[84,38136,38137],{"class":86,"line":201},[84,38138,126],{"emptyLinePlaceholder":125},[84,38140,38141,38143,38145],{"class":86,"line":217},[84,38142,91],{"class":90},[84,38144,291],{"class":94},[84,38146,102],{"class":90},[84,38148,38149,38151,38153],{"class":86,"line":227},[84,38150,299],{"class":90},[84,38152,737],{"class":94},[84,38154,102],{"class":90},[84,38156,38158,38160,38162,38164,38166,38169,38171,38173,38176],{"class":38157,"line":232},[86,10151],[84,38159,1642],{"class":90},[84,38161,740],{"class":94},[84,38163,13525],{"class":98},[84,38165,184],{"class":90},[84,38167,38168],{"class":118},"\"todo in todos\"",[84,38170,5092],{"class":98},[84,38172,184],{"class":90},[84,38174,38175],{"class":118},"\"todo.id\"",[84,38177,102],{"class":90},[84,38179,38180,38182,38184,38186,38188,38191],{"class":86,"line":237},[84,38181,1691],{"class":90},[84,38183,84],{"class":94},[84,38185,33987],{"class":98},[84,38187,184],{"class":90},[84,38189,38190],{"class":118},"\"{ textDecoration: todo.done ? 'line-through' : 'none' }\"",[84,38192,102],{"class":90},[84,38194,38195],{"class":86,"line":253},[84,38196,38197],{"class":90},"        {{ todo.text }}\n",[84,38199,38200,38202,38204],{"class":86,"line":266},[84,38201,4952],{"class":90},[84,38203,84],{"class":94},[84,38205,102],{"class":90},[84,38207,38208,38210,38212],{"class":86,"line":271},[84,38209,1734],{"class":90},[84,38211,740],{"class":94},[84,38213,102],{"class":90},[84,38215,38216,38218,38220],{"class":86,"line":281},[84,38217,324],{"class":90},[84,38219,737],{"class":94},[84,38221,102],{"class":90},[84,38223,38224,38226,38228],{"class":86,"line":286},[84,38225,274],{"class":90},[84,38227,291],{"class":94},[84,38229,102],{"class":90},[74,38231,38234],{"className":76,"code":38232,"filename":1782,"highlights":38233,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      todos: [\n        { id: 1, text: 'Aprender v-for', done: true },\n        { id: 2, text: 'Practicar key estable', done: false },\n        { id: 3, text: 'Evitar index como key', done: false }\n      ]\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cul>\n    \u003Cli v-for=\"todo in todos\" :key=\"todo.id\">\n      \u003Cspan :style=\"{ textDecoration: todo.done ? 'line-through' : 'none' }\">\n        {{ todo.text }}\n      \u003C\u002Fspan>\n    \u003C\u002Fli>\n  \u003C\u002Ful>\n\u003C\u002Ftemplate>\n",[154,159,178,190,196,271],[22,38235,38236,38244,38252,38258,38264,38270,38287,38304,38321,38326,38330,38334,38338,38346,38350,38358,38366,38387,38401,38405,38413,38421,38429],{"__ignoreMap":80},[84,38237,38238,38240,38242],{"class":86,"line":87},[84,38239,91],{"class":90},[84,38241,95],{"class":94},[84,38243,102],{"class":90},[84,38245,38246,38248,38250],{"class":86,"line":105},[84,38247,418],{"class":108},[84,38249,1870],{"class":108},[84,38251,175],{"class":90},[84,38253,38254,38256],{"class":86,"line":122},[84,38255,1896],{"class":98},[84,38257,1307],{"class":90},[84,38259,38260,38262],{"class":86,"line":129},[84,38261,1903],{"class":108},[84,38263,175],{"class":90},[84,38265,38267],{"class":38266,"line":154},[86,10151],[84,38268,38269],{"class":90},"      todos: [\n",[84,38271,38273,38275,38277,38279,38281,38283,38285],{"class":38272,"line":159},[86,10151],[84,38274,3449],{"class":90},[84,38276,2862],{"class":135},[84,38278,10443],{"class":90},[84,38280,38079],{"class":118},[84,38282,2910],{"class":90},[84,38284,2938],{"class":135},[84,38286,2921],{"class":90},[84,38288,38290,38292,38294,38296,38298,38300,38302],{"class":38289,"line":178},[86,10151],[84,38291,3449],{"class":90},[84,38293,2928],{"class":135},[84,38295,10443],{"class":90},[84,38297,38097],{"class":118},[84,38299,2910],{"class":90},[84,38301,148],{"class":135},[84,38303,2921],{"class":90},[84,38305,38307,38309,38311,38313,38315,38317,38319],{"class":38306,"line":190},[86,10151],[84,38308,3449],{"class":90},[84,38310,2952],{"class":135},[84,38312,10443],{"class":90},[84,38314,38115],{"class":118},[84,38316,2910],{"class":90},[84,38318,148],{"class":135},[84,38320,2968],{"class":90},[84,38322,38324],{"class":38323,"line":196},[86,10151],[84,38325,3510],{"class":90},[84,38327,38328],{"class":86,"line":201},[84,38329,1936],{"class":90},[84,38331,38332],{"class":86,"line":217},[84,38333,485],{"class":90},[84,38335,38336],{"class":86,"line":227},[84,38337,193],{"class":90},[84,38339,38340,38342,38344],{"class":86,"line":232},[84,38341,274],{"class":90},[84,38343,95],{"class":94},[84,38345,102],{"class":90},[84,38347,38348],{"class":86,"line":237},[84,38349,126],{"emptyLinePlaceholder":125},[84,38351,38352,38354,38356],{"class":86,"line":253},[84,38353,91],{"class":90},[84,38355,291],{"class":94},[84,38357,102],{"class":90},[84,38359,38360,38362,38364],{"class":86,"line":266},[84,38361,299],{"class":90},[84,38363,737],{"class":94},[84,38365,102],{"class":90},[84,38367,38369,38371,38373,38375,38377,38379,38381,38383,38385],{"class":38368,"line":271},[86,10151],[84,38370,1642],{"class":90},[84,38372,740],{"class":94},[84,38374,13525],{"class":98},[84,38376,184],{"class":90},[84,38378,38168],{"class":118},[84,38380,5092],{"class":98},[84,38382,184],{"class":90},[84,38384,38175],{"class":118},[84,38386,102],{"class":90},[84,38388,38389,38391,38393,38395,38397,38399],{"class":86,"line":281},[84,38390,1691],{"class":90},[84,38392,84],{"class":94},[84,38394,33987],{"class":98},[84,38396,184],{"class":90},[84,38398,38190],{"class":118},[84,38400,102],{"class":90},[84,38402,38403],{"class":86,"line":286},[84,38404,38197],{"class":90},[84,38406,38407,38409,38411],{"class":86,"line":296},[84,38408,4952],{"class":90},[84,38410,84],{"class":94},[84,38412,102],{"class":90},[84,38414,38415,38417,38419],{"class":86,"line":315},[84,38416,1734],{"class":90},[84,38418,740],{"class":94},[84,38420,102],{"class":90},[84,38422,38423,38425,38427],{"class":86,"line":321},[84,38424,324],{"class":90},[84,38426,737],{"class":94},[84,38428,102],{"class":90},[84,38430,38431,38433,38435],{"class":86,"line":331},[84,38432,274],{"class":90},[84,38434,291],{"class":94},[84,38436,102],{"class":90},[34,38438,38440,38441],{"id":38439},"nivel-intermedio-índice-objetos-y-template-v-for","Nivel intermedio: índice, objetos y ",[22,38442,38443],{},"template v-for",[1074,38445,38447,38448],{"id":38446},"_1-índice-en-v-for","1) Índice en ",[22,38449,25577],{},[15,38451,38452],{},"Puedes obtener índice cuando realmente lo necesitas:",[74,38454,38457],{"className":76,"code":38455,"filename":873,"highlights":38456,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst users = ref(['Ana', 'Luis', 'Marta'])\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cp v-for=\"(user, index) in users\" :key=\"user\">\n    #{{ index + 1 }} - {{ user }}\n  \u003C\u002Fp>\n\u003C\u002Ftemplate>\n",[190],[22,38458,38459,38469,38479,38483,38508,38516,38520,38528,38550,38555,38563],{"__ignoreMap":80},[84,38460,38461,38463,38465,38467],{"class":86,"line":87},[84,38462,91],{"class":90},[84,38464,95],{"class":94},[84,38466,99],{"class":98},[84,38468,102],{"class":90},[84,38470,38471,38473,38475,38477],{"class":86,"line":105},[84,38472,109],{"class":108},[84,38474,112],{"class":90},[84,38476,115],{"class":108},[84,38478,119],{"class":118},[84,38480,38481],{"class":86,"line":122},[84,38482,126],{"emptyLinePlaceholder":125},[84,38484,38485,38487,38489,38491,38493,38495,38497,38499,38501,38503,38506],{"class":86,"line":129},[84,38486,132],{"class":108},[84,38488,11767],{"class":135},[84,38490,139],{"class":108},[84,38492,142],{"class":98},[84,38494,37812],{"class":90},[84,38496,2918],{"class":118},[84,38498,754],{"class":90},[84,38500,2943],{"class":118},[84,38502,754],{"class":90},[84,38504,38505],{"class":118},"'Marta'",[84,38507,2973],{"class":90},[84,38509,38510,38512,38514],{"class":86,"line":154},[84,38511,274],{"class":90},[84,38513,95],{"class":94},[84,38515,102],{"class":90},[84,38517,38518],{"class":86,"line":159},[84,38519,126],{"emptyLinePlaceholder":125},[84,38521,38522,38524,38526],{"class":86,"line":178},[84,38523,91],{"class":90},[84,38525,291],{"class":94},[84,38527,102],{"class":90},[84,38529,38531,38533,38535,38537,38539,38542,38544,38546,38548],{"class":38530,"line":190},[86,10151],[84,38532,299],{"class":90},[84,38534,15],{"class":94},[84,38536,13525],{"class":98},[84,38538,184],{"class":90},[84,38540,38541],{"class":118},"\"(user, index) in users\"",[84,38543,5092],{"class":98},[84,38545,184],{"class":90},[84,38547,22227],{"class":118},[84,38549,102],{"class":90},[84,38551,38552],{"class":86,"line":196},[84,38553,38554],{"class":90},"    #{{ index + 1 }} - {{ user }}\n",[84,38556,38557,38559,38561],{"class":86,"line":201},[84,38558,324],{"class":90},[84,38560,15],{"class":94},[84,38562,102],{"class":90},[84,38564,38565,38567,38569],{"class":86,"line":217},[84,38566,274],{"class":90},[84,38568,291],{"class":94},[84,38570,102],{"class":90},[74,38572,38575],{"className":76,"code":38573,"filename":1782,"highlights":38574,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      users: ['Ana', 'Luis', 'Marta']\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cp v-for=\"(user, index) in users\" :key=\"user\">\n    #{{ index + 1 }} - {{ user }}\n  \u003C\u002Fp>\n\u003C\u002Ftemplate>\n",[227],[22,38576,38577,38585,38593,38599,38605,38622,38626,38630,38634,38642,38646,38654,38675,38679,38687],{"__ignoreMap":80},[84,38578,38579,38581,38583],{"class":86,"line":87},[84,38580,91],{"class":90},[84,38582,95],{"class":94},[84,38584,102],{"class":90},[84,38586,38587,38589,38591],{"class":86,"line":105},[84,38588,418],{"class":108},[84,38590,1870],{"class":108},[84,38592,175],{"class":90},[84,38594,38595,38597],{"class":86,"line":122},[84,38596,1896],{"class":98},[84,38598,1307],{"class":90},[84,38600,38601,38603],{"class":86,"line":129},[84,38602,1903],{"class":108},[84,38604,175],{"class":90},[84,38606,38607,38610,38612,38614,38616,38618,38620],{"class":86,"line":154},[84,38608,38609],{"class":90},"      users: [",[84,38611,2918],{"class":118},[84,38613,754],{"class":90},[84,38615,2943],{"class":118},[84,38617,754],{"class":90},[84,38619,38505],{"class":118},[84,38621,37943],{"class":90},[84,38623,38624],{"class":86,"line":159},[84,38625,1936],{"class":90},[84,38627,38628],{"class":86,"line":178},[84,38629,485],{"class":90},[84,38631,38632],{"class":86,"line":190},[84,38633,193],{"class":90},[84,38635,38636,38638,38640],{"class":86,"line":196},[84,38637,274],{"class":90},[84,38639,95],{"class":94},[84,38641,102],{"class":90},[84,38643,38644],{"class":86,"line":201},[84,38645,126],{"emptyLinePlaceholder":125},[84,38647,38648,38650,38652],{"class":86,"line":217},[84,38649,91],{"class":90},[84,38651,291],{"class":94},[84,38653,102],{"class":90},[84,38655,38657,38659,38661,38663,38665,38667,38669,38671,38673],{"class":38656,"line":227},[86,10151],[84,38658,299],{"class":90},[84,38660,15],{"class":94},[84,38662,13525],{"class":98},[84,38664,184],{"class":90},[84,38666,38541],{"class":118},[84,38668,5092],{"class":98},[84,38670,184],{"class":90},[84,38672,22227],{"class":118},[84,38674,102],{"class":90},[84,38676,38677],{"class":86,"line":232},[84,38678,38554],{"class":90},[84,38680,38681,38683,38685],{"class":86,"line":237},[84,38682,324],{"class":90},[84,38684,15],{"class":94},[84,38686,102],{"class":90},[84,38688,38689,38691,38693],{"class":86,"line":253},[84,38690,274],{"class":90},[84,38692,291],{"class":94},[84,38694,102],{"class":90},[1074,38696,38698],{"id":38697},"_2-iterar-un-objeto","2) Iterar un objeto",[74,38700,38703],{"className":76,"code":38701,"filename":873,"highlights":38702,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst profile = ref({\n  name: 'Cristian',\n  role: 'Frontend Dev',\n  country: 'Colombia'\n})\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cli v-for=\"(value, key) in profile\" :key=\"key\">\n    {{ key }}: {{ value }}\n  \u003C\u002Fli>\n\u003C\u002Ftemplate>\n",[227],[22,38704,38705,38715,38725,38729,38742,38751,38761,38769,38773,38781,38785,38793,38816,38821,38829],{"__ignoreMap":80},[84,38706,38707,38709,38711,38713],{"class":86,"line":87},[84,38708,91],{"class":90},[84,38710,95],{"class":94},[84,38712,99],{"class":98},[84,38714,102],{"class":90},[84,38716,38717,38719,38721,38723],{"class":86,"line":105},[84,38718,109],{"class":108},[84,38720,112],{"class":90},[84,38722,115],{"class":108},[84,38724,119],{"class":118},[84,38726,38727],{"class":86,"line":122},[84,38728,126],{"emptyLinePlaceholder":125},[84,38730,38731,38733,38736,38738,38740],{"class":86,"line":129},[84,38732,132],{"class":108},[84,38734,38735],{"class":135}," profile",[84,38737,139],{"class":108},[84,38739,142],{"class":98},[84,38741,1876],{"class":90},[84,38743,38744,38746,38749],{"class":86,"line":154},[84,38745,1881],{"class":90},[84,38747,38748],{"class":118},"'Cristian'",[84,38750,1887],{"class":90},[84,38752,38753,38756,38759],{"class":86,"line":159},[84,38754,38755],{"class":90},"  role: ",[84,38757,38758],{"class":118},"'Frontend Dev'",[84,38760,1887],{"class":90},[84,38762,38763,38766],{"class":86,"line":178},[84,38764,38765],{"class":90},"  country: ",[84,38767,38768],{"class":118},"'Colombia'\n",[84,38770,38771],{"class":86,"line":190},[84,38772,1492],{"class":90},[84,38774,38775,38777,38779],{"class":86,"line":196},[84,38776,274],{"class":90},[84,38778,95],{"class":94},[84,38780,102],{"class":90},[84,38782,38783],{"class":86,"line":201},[84,38784,126],{"emptyLinePlaceholder":125},[84,38786,38787,38789,38791],{"class":86,"line":217},[84,38788,91],{"class":90},[84,38790,291],{"class":94},[84,38792,102],{"class":90},[84,38794,38796,38798,38800,38802,38804,38807,38809,38811,38814],{"class":38795,"line":227},[86,10151],[84,38797,299],{"class":90},[84,38799,740],{"class":94},[84,38801,13525],{"class":98},[84,38803,184],{"class":90},[84,38805,38806],{"class":118},"\"(value, key) in profile\"",[84,38808,5092],{"class":98},[84,38810,184],{"class":90},[84,38812,38813],{"class":118},"\"key\"",[84,38815,102],{"class":90},[84,38817,38818],{"class":86,"line":232},[84,38819,38820],{"class":90},"    {{ key }}: {{ value }}\n",[84,38822,38823,38825,38827],{"class":86,"line":237},[84,38824,324],{"class":90},[84,38826,740],{"class":94},[84,38828,102],{"class":90},[84,38830,38831,38833,38835],{"class":86,"line":253},[84,38832,274],{"class":90},[84,38834,291],{"class":94},[84,38836,102],{"class":90},[74,38838,38841],{"className":76,"code":38839,"filename":1782,"highlights":38840,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      profile: {\n        name: 'Cristian',\n        role: 'Frontend Dev',\n        country: 'Colombia'\n      }\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cli v-for=\"(value, key) in profile\" :key=\"key\">\n    {{ key }}: {{ value }}\n  \u003C\u002Fli>\n\u003C\u002Ftemplate>\n",[266],[22,38842,38843,38851,38859,38865,38871,38876,38885,38894,38901,38905,38909,38913,38917,38925,38929,38937,38958,38962,38970],{"__ignoreMap":80},[84,38844,38845,38847,38849],{"class":86,"line":87},[84,38846,91],{"class":90},[84,38848,95],{"class":94},[84,38850,102],{"class":90},[84,38852,38853,38855,38857],{"class":86,"line":105},[84,38854,418],{"class":108},[84,38856,1870],{"class":108},[84,38858,175],{"class":90},[84,38860,38861,38863],{"class":86,"line":122},[84,38862,1896],{"class":98},[84,38864,1307],{"class":90},[84,38866,38867,38869],{"class":86,"line":129},[84,38868,1903],{"class":108},[84,38870,175],{"class":90},[84,38872,38873],{"class":86,"line":154},[84,38874,38875],{"class":90},"      profile: {\n",[84,38877,38878,38881,38883],{"class":86,"line":159},[84,38879,38880],{"class":90},"        name: ",[84,38882,38748],{"class":118},[84,38884,1887],{"class":90},[84,38886,38887,38890,38892],{"class":86,"line":178},[84,38888,38889],{"class":90},"        role: ",[84,38891,38758],{"class":118},[84,38893,1887],{"class":90},[84,38895,38896,38899],{"class":86,"line":190},[84,38897,38898],{"class":90},"        country: ",[84,38900,38768],{"class":118},[84,38902,38903],{"class":86,"line":196},[84,38904,2013],{"class":90},[84,38906,38907],{"class":86,"line":201},[84,38908,1936],{"class":90},[84,38910,38911],{"class":86,"line":217},[84,38912,485],{"class":90},[84,38914,38915],{"class":86,"line":227},[84,38916,193],{"class":90},[84,38918,38919,38921,38923],{"class":86,"line":232},[84,38920,274],{"class":90},[84,38922,95],{"class":94},[84,38924,102],{"class":90},[84,38926,38927],{"class":86,"line":237},[84,38928,126],{"emptyLinePlaceholder":125},[84,38930,38931,38933,38935],{"class":86,"line":253},[84,38932,91],{"class":90},[84,38934,291],{"class":94},[84,38936,102],{"class":90},[84,38938,38940,38942,38944,38946,38948,38950,38952,38954,38956],{"class":38939,"line":266},[86,10151],[84,38941,299],{"class":90},[84,38943,740],{"class":94},[84,38945,13525],{"class":98},[84,38947,184],{"class":90},[84,38949,38806],{"class":118},[84,38951,5092],{"class":98},[84,38953,184],{"class":90},[84,38955,38813],{"class":118},[84,38957,102],{"class":90},[84,38959,38960],{"class":86,"line":271},[84,38961,38820],{"class":90},[84,38963,38964,38966,38968],{"class":86,"line":281},[84,38965,324],{"class":90},[84,38967,740],{"class":94},[84,38969,102],{"class":90},[84,38971,38972,38974,38976],{"class":86,"line":286},[84,38973,274],{"class":90},[84,38975,291],{"class":94},[84,38977,102],{"class":90},[1074,38979,38981,38982],{"id":38980},"_3-repetir-varios-nodos-con-template","3) Repetir varios nodos con ",[22,38983,291],{},[74,38985,38988],{"className":76,"code":38986,"filename":873,"highlights":38987,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst items = ref([\n  { id: 1, title: 'Vue 3', description: 'Framework progresivo' },\n  { id: 2, title: 'Pinia', description: 'Estado global moderno' }\n])\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Ctemplate v-for=\"item in items\" :key=\"item.id\">\n    \u003Ch3>{{ item.title }}\u003C\u002Fh3>\n    \u003Cp>{{ item.description }}\u003C\u002Fp>\n    \u003Chr \u002F>\n  \u003C\u002Ftemplate>\n\u003C\u002Ftemplate>\n",[217],[22,38989,38990,39000,39010,39014,39027,39046,39064,39068,39076,39080,39088,39126,39139,39152,39161,39169],{"__ignoreMap":80},[84,38991,38992,38994,38996,38998],{"class":86,"line":87},[84,38993,91],{"class":90},[84,38995,95],{"class":94},[84,38997,99],{"class":98},[84,38999,102],{"class":90},[84,39001,39002,39004,39006,39008],{"class":86,"line":105},[84,39003,109],{"class":108},[84,39005,112],{"class":90},[84,39007,115],{"class":108},[84,39009,119],{"class":118},[84,39011,39012],{"class":86,"line":122},[84,39013,126],{"emptyLinePlaceholder":125},[84,39015,39016,39018,39021,39023,39025],{"class":86,"line":129},[84,39017,132],{"class":108},[84,39019,39020],{"class":135}," items",[84,39022,139],{"class":108},[84,39024,142],{"class":98},[84,39026,2894],{"class":90},[84,39028,39029,39031,39033,39035,39038,39041,39044],{"class":86,"line":154},[84,39030,2899],{"class":90},[84,39032,2862],{"class":135},[84,39034,2904],{"class":90},[84,39036,39037],{"class":118},"'Vue 3'",[84,39039,39040],{"class":90},", description: ",[84,39042,39043],{"class":118},"'Framework progresivo'",[84,39045,2921],{"class":90},[84,39047,39048,39050,39052,39054,39057,39059,39062],{"class":86,"line":159},[84,39049,2899],{"class":90},[84,39051,2928],{"class":135},[84,39053,2904],{"class":90},[84,39055,39056],{"class":118},"'Pinia'",[84,39058,39040],{"class":90},[84,39060,39061],{"class":118},"'Estado global moderno'",[84,39063,2968],{"class":90},[84,39065,39066],{"class":86,"line":178},[84,39067,2973],{"class":90},[84,39069,39070,39072,39074],{"class":86,"line":190},[84,39071,274],{"class":90},[84,39073,95],{"class":94},[84,39075,102],{"class":90},[84,39077,39078],{"class":86,"line":196},[84,39079,126],{"emptyLinePlaceholder":125},[84,39081,39082,39084,39086],{"class":86,"line":201},[84,39083,91],{"class":90},[84,39085,291],{"class":94},[84,39087,102],{"class":90},[84,39089,39091,39093,39095,39097,39099,39101,39104,39107,39109,39111,39113,39115,39117,39119,39122,39124],{"class":39090,"line":217},[86,10151],[84,39092,299],{"class":90},[84,39094,291],{"class":94},[84,39096,13525],{"class":108},[84,39098,184],{"class":90},[84,39100,1678],{"class":118},[84,39102,39103],{"class":90},"item ",[84,39105,39106],{"class":108},"in",[84,39108,39020],{"class":90},[84,39110,1678],{"class":118},[84,39112,7012],{"class":90},[84,39114,2580],{"class":98},[84,39116,184],{"class":90},[84,39118,1678],{"class":118},[84,39120,39121],{"class":90},"item.id",[84,39123,1678],{"class":118},[84,39125,102],{"class":90},[84,39127,39128,39130,39132,39135,39137],{"class":86,"line":227},[84,39129,1642],{"class":90},[84,39131,1074],{"class":94},[84,39133,39134],{"class":90},">{{ item.title }}\u003C\u002F",[84,39136,1074],{"class":94},[84,39138,102],{"class":90},[84,39140,39141,39143,39145,39148,39150],{"class":86,"line":232},[84,39142,1642],{"class":90},[84,39144,15],{"class":94},[84,39146,39147],{"class":90},">{{ item.description }}\u003C\u002F",[84,39149,15],{"class":94},[84,39151,102],{"class":90},[84,39153,39154,39156,39159],{"class":86,"line":237},[84,39155,1642],{"class":90},[84,39157,39158],{"class":94},"hr",[84,39160,5100],{"class":90},[84,39162,39163,39165,39167],{"class":86,"line":253},[84,39164,324],{"class":90},[84,39166,291],{"class":94},[84,39168,102],{"class":90},[84,39170,39171,39173,39175],{"class":86,"line":266},[84,39172,274],{"class":90},[84,39174,291],{"class":94},[84,39176,102],{"class":90},[74,39178,39181],{"className":76,"code":39179,"filename":1782,"highlights":39180,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      items: [\n        { id: 1, title: 'Vue 3', description: 'Framework progresivo' },\n        { id: 2, title: 'Pinia', description: 'Estado global moderno' }\n      ]\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Ctemplate v-for=\"item in items\" :key=\"item.id\">\n    \u003Ch3>{{ item.title }}\u003C\u002Fh3>\n    \u003Cp>{{ item.description }}\u003C\u002Fp>\n    \u003Chr \u002F>\n  \u003C\u002Ftemplate>\n\u003C\u002Ftemplate>\n",[253],[22,39182,39183,39191,39199,39205,39211,39216,39232,39248,39252,39256,39260,39264,39272,39276,39284,39319,39331,39343,39351,39359],{"__ignoreMap":80},[84,39184,39185,39187,39189],{"class":86,"line":87},[84,39186,91],{"class":90},[84,39188,95],{"class":94},[84,39190,102],{"class":90},[84,39192,39193,39195,39197],{"class":86,"line":105},[84,39194,418],{"class":108},[84,39196,1870],{"class":108},[84,39198,175],{"class":90},[84,39200,39201,39203],{"class":86,"line":122},[84,39202,1896],{"class":98},[84,39204,1307],{"class":90},[84,39206,39207,39209],{"class":86,"line":129},[84,39208,1903],{"class":108},[84,39210,175],{"class":90},[84,39212,39213],{"class":86,"line":154},[84,39214,39215],{"class":90},"      items: [\n",[84,39217,39218,39220,39222,39224,39226,39228,39230],{"class":86,"line":159},[84,39219,3449],{"class":90},[84,39221,2862],{"class":135},[84,39223,2904],{"class":90},[84,39225,39037],{"class":118},[84,39227,39040],{"class":90},[84,39229,39043],{"class":118},[84,39231,2921],{"class":90},[84,39233,39234,39236,39238,39240,39242,39244,39246],{"class":86,"line":178},[84,39235,3449],{"class":90},[84,39237,2928],{"class":135},[84,39239,2904],{"class":90},[84,39241,39056],{"class":118},[84,39243,39040],{"class":90},[84,39245,39061],{"class":118},[84,39247,2968],{"class":90},[84,39249,39250],{"class":86,"line":190},[84,39251,3510],{"class":90},[84,39253,39254],{"class":86,"line":196},[84,39255,1936],{"class":90},[84,39257,39258],{"class":86,"line":201},[84,39259,485],{"class":90},[84,39261,39262],{"class":86,"line":217},[84,39263,193],{"class":90},[84,39265,39266,39268,39270],{"class":86,"line":227},[84,39267,274],{"class":90},[84,39269,95],{"class":94},[84,39271,102],{"class":90},[84,39273,39274],{"class":86,"line":232},[84,39275,126],{"emptyLinePlaceholder":125},[84,39277,39278,39280,39282],{"class":86,"line":237},[84,39279,91],{"class":90},[84,39281,291],{"class":94},[84,39283,102],{"class":90},[84,39285,39287,39289,39291,39293,39295,39297,39299,39301,39303,39305,39307,39309,39311,39313,39315,39317],{"class":39286,"line":253},[86,10151],[84,39288,299],{"class":90},[84,39290,291],{"class":94},[84,39292,13525],{"class":108},[84,39294,184],{"class":90},[84,39296,1678],{"class":118},[84,39298,39103],{"class":90},[84,39300,39106],{"class":108},[84,39302,39020],{"class":90},[84,39304,1678],{"class":118},[84,39306,7012],{"class":90},[84,39308,2580],{"class":98},[84,39310,184],{"class":90},[84,39312,1678],{"class":118},[84,39314,39121],{"class":90},[84,39316,1678],{"class":118},[84,39318,102],{"class":90},[84,39320,39321,39323,39325,39327,39329],{"class":86,"line":266},[84,39322,1642],{"class":90},[84,39324,1074],{"class":94},[84,39326,39134],{"class":90},[84,39328,1074],{"class":94},[84,39330,102],{"class":90},[84,39332,39333,39335,39337,39339,39341],{"class":86,"line":271},[84,39334,1642],{"class":90},[84,39336,15],{"class":94},[84,39338,39147],{"class":90},[84,39340,15],{"class":94},[84,39342,102],{"class":90},[84,39344,39345,39347,39349],{"class":86,"line":281},[84,39346,1642],{"class":90},[84,39348,39158],{"class":94},[84,39350,5100],{"class":90},[84,39352,39353,39355,39357],{"class":86,"line":286},[84,39354,324],{"class":90},[84,39356,291],{"class":94},[84,39358,102],{"class":90},[84,39360,39361,39363,39365],{"class":86,"line":296},[84,39362,274],{"class":90},[84,39364,291],{"class":94},[84,39366,102],{"class":90},[34,39368,39370],{"id":39369},"nivel-avanzado-listas-derivadas-componentes-y-anidación","Nivel avanzado: listas derivadas, componentes y anidación",[1074,39372,39374,39375],{"id":39373},"_1-prefiltrar-y-ordenar-con-computed","1) Prefiltrar y ordenar con ",[22,39376,2523],{},[15,39378,39379,39380,39382,39383,764],{},"No hagas lógica pesada dentro del ",[22,39381,25577],{},".\nDeriva la lista antes, con ",[22,39384,2523],{},[74,39386,39389],{"className":76,"code":39387,"filename":873,"highlights":39388,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { computed, ref } from 'vue'\n\nconst products = ref([\n  { id: 1, name: 'Laptop', price: 1200, stock: 5 },\n  { id: 2, name: 'Mouse', price: 25, stock: 0 },\n  { id: 3, name: 'Keyboard', price: 80, stock: 12 }\n])\n\nconst inStockSorted = computed(() => {\n  return products.value\n    .filter(product => product.stock > 0)\n    .slice()\n    .sort((a, b) => a.price - b.price)\n})\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cli v-for=\"product in inStockSorted\" :key=\"product.id\">\n    {{ product.name }} - ${{ product.price }}\n  \u003C\u002Fli>\n\u003C\u002Ftemplate>\n",[201,217,227,232,237,253,286],[22,39390,39391,39401,39411,39415,39427,39450,39472,39495,39499,39503,39521,39529,39553,39563,39593,39598,39606,39610,39618,39641,39646,39654],{"__ignoreMap":80},[84,39392,39393,39395,39397,39399],{"class":86,"line":87},[84,39394,91],{"class":90},[84,39396,95],{"class":94},[84,39398,99],{"class":98},[84,39400,102],{"class":90},[84,39402,39403,39405,39407,39409],{"class":86,"line":105},[84,39404,109],{"class":108},[84,39406,24087],{"class":90},[84,39408,115],{"class":108},[84,39410,119],{"class":118},[84,39412,39413],{"class":86,"line":122},[84,39414,126],{"emptyLinePlaceholder":125},[84,39416,39417,39419,39421,39423,39425],{"class":86,"line":129},[84,39418,132],{"class":108},[84,39420,30307],{"class":135},[84,39422,139],{"class":108},[84,39424,142],{"class":98},[84,39426,2894],{"class":90},[84,39428,39429,39431,39433,39435,39438,39440,39443,39445,39448],{"class":86,"line":154},[84,39430,2899],{"class":90},[84,39432,2862],{"class":135},[84,39434,23323],{"class":90},[84,39436,39437],{"class":118},"'Laptop'",[84,39439,30327],{"class":90},[84,39441,39442],{"class":135},"1200",[84,39444,30333],{"class":90},[84,39446,39447],{"class":135},"5",[84,39449,2921],{"class":90},[84,39451,39452,39454,39456,39458,39461,39463,39466,39468,39470],{"class":86,"line":159},[84,39453,2899],{"class":90},[84,39455,2928],{"class":135},[84,39457,23323],{"class":90},[84,39459,39460],{"class":118},"'Mouse'",[84,39462,30327],{"class":90},[84,39464,39465],{"class":135},"25",[84,39467,30333],{"class":90},[84,39469,4320],{"class":135},[84,39471,2921],{"class":90},[84,39473,39474,39476,39478,39480,39483,39485,39488,39490,39493],{"class":86,"line":178},[84,39475,2899],{"class":90},[84,39477,2952],{"class":135},[84,39479,23323],{"class":90},[84,39481,39482],{"class":118},"'Keyboard'",[84,39484,30327],{"class":90},[84,39486,39487],{"class":135},"80",[84,39489,30333],{"class":90},[84,39491,39492],{"class":135},"12",[84,39494,2968],{"class":90},[84,39496,39497],{"class":86,"line":190},[84,39498,2973],{"class":90},[84,39500,39501],{"class":86,"line":196},[84,39502,126],{"emptyLinePlaceholder":125},[84,39504,39506,39508,39511,39513,39515,39517,39519],{"class":39505,"line":201},[86,10151],[84,39507,132],{"class":108},[84,39509,39510],{"class":135}," inStockSorted",[84,39512,139],{"class":108},[84,39514,2989],{"class":98},[84,39516,2992],{"class":90},[84,39518,172],{"class":108},[84,39520,175],{"class":90},[84,39522,39524,39526],{"class":39523,"line":217},[86,10151],[84,39525,557],{"class":108},[84,39527,39528],{"class":90}," products.value\n",[84,39530,39532,39535,39537,39539,39541,39543,39546,39548,39551],{"class":39531,"line":227},[86,10151],[84,39533,39534],{"class":90},"    .",[84,39536,3006],{"class":98},[84,39538,145],{"class":90},[84,39540,1681],{"class":429},[84,39542,3014],{"class":108},[84,39544,39545],{"class":90}," product.stock ",[84,39547,10674],{"class":108},[84,39549,39550],{"class":135}," 0",[84,39552,151],{"class":90},[84,39554,39556,39558,39561],{"class":39555,"line":232},[86,10151],[84,39557,39534],{"class":90},[84,39559,39560],{"class":98},"slice",[84,39562,635],{"class":90},[84,39564,39566,39568,39571,39573,39575,39577,39580,39582,39584,39587,39590],{"class":39565,"line":237},[86,10151],[84,39567,39534],{"class":90},[84,39569,39570],{"class":98},"sort",[84,39572,3120],{"class":90},[84,39574,13911],{"class":429},[84,39576,754],{"class":90},[84,39578,39579],{"class":429},"b",[84,39581,3126],{"class":90},[84,39583,172],{"class":108},[84,39585,39586],{"class":90}," a.price ",[84,39588,39589],{"class":108},"-",[84,39591,39592],{"class":90}," b.price)\n",[84,39594,39596],{"class":39595,"line":253},[86,10151],[84,39597,1492],{"class":90},[84,39599,39600,39602,39604],{"class":86,"line":266},[84,39601,274],{"class":90},[84,39603,95],{"class":94},[84,39605,102],{"class":90},[84,39607,39608],{"class":86,"line":271},[84,39609,126],{"emptyLinePlaceholder":125},[84,39611,39612,39614,39616],{"class":86,"line":281},[84,39613,91],{"class":90},[84,39615,291],{"class":94},[84,39617,102],{"class":90},[84,39619,39621,39623,39625,39627,39629,39632,39634,39636,39639],{"class":39620,"line":286},[86,10151],[84,39622,299],{"class":90},[84,39624,740],{"class":94},[84,39626,13525],{"class":98},[84,39628,184],{"class":90},[84,39630,39631],{"class":118},"\"product in inStockSorted\"",[84,39633,5092],{"class":98},[84,39635,184],{"class":90},[84,39637,39638],{"class":118},"\"product.id\"",[84,39640,102],{"class":90},[84,39642,39643],{"class":86,"line":296},[84,39644,39645],{"class":90},"    {{ product.name }} - ${{ product.price }}\n",[84,39647,39648,39650,39652],{"class":86,"line":315},[84,39649,324],{"class":90},[84,39651,740],{"class":94},[84,39653,102],{"class":90},[84,39655,39656,39658,39660],{"class":86,"line":321},[84,39657,274],{"class":90},[84,39659,291],{"class":94},[84,39661,102],{"class":90},[74,39663,39666],{"className":76,"code":39664,"filename":1782,"highlights":39665,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      products: [\n        { id: 1, name: 'Laptop', price: 1200, stock: 5 },\n        { id: 2, name: 'Mouse', price: 25, stock: 0 },\n        { id: 3, name: 'Keyboard', price: 80, stock: 12 }\n      ]\n    }\n  },\n  computed: {\n    inStockSorted() {\n      return this.products\n        .filter(product => product.stock > 0)\n        .slice()\n        .sort((a, b) => a.price - b.price)\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cli v-for=\"product in inStockSorted\" :key=\"product.id\">\n    {{ product.name }} - ${{ product.price }}\n  \u003C\u002Fli>\n\u003C\u002Ftemplate>\n",[227,232,237,253,266,271,281,286,336],[22,39667,39668,39676,39684,39690,39696,39700,39720,39740,39760,39764,39768,39772,39777,39785,39795,39817,39826,39851,39856,39861,39865,39873,39877,39885,39906,39910,39918],{"__ignoreMap":80},[84,39669,39670,39672,39674],{"class":86,"line":87},[84,39671,91],{"class":90},[84,39673,95],{"class":94},[84,39675,102],{"class":90},[84,39677,39678,39680,39682],{"class":86,"line":105},[84,39679,418],{"class":108},[84,39681,1870],{"class":108},[84,39683,175],{"class":90},[84,39685,39686,39688],{"class":86,"line":122},[84,39687,1896],{"class":98},[84,39689,1307],{"class":90},[84,39691,39692,39694],{"class":86,"line":129},[84,39693,1903],{"class":108},[84,39695,175],{"class":90},[84,39697,39698],{"class":86,"line":154},[84,39699,31070],{"class":90},[84,39701,39702,39704,39706,39708,39710,39712,39714,39716,39718],{"class":86,"line":159},[84,39703,3449],{"class":90},[84,39705,2862],{"class":135},[84,39707,23323],{"class":90},[84,39709,39437],{"class":118},[84,39711,30327],{"class":90},[84,39713,39442],{"class":135},[84,39715,30333],{"class":90},[84,39717,39447],{"class":135},[84,39719,2921],{"class":90},[84,39721,39722,39724,39726,39728,39730,39732,39734,39736,39738],{"class":86,"line":178},[84,39723,3449],{"class":90},[84,39725,2928],{"class":135},[84,39727,23323],{"class":90},[84,39729,39460],{"class":118},[84,39731,30327],{"class":90},[84,39733,39465],{"class":135},[84,39735,30333],{"class":90},[84,39737,4320],{"class":135},[84,39739,2921],{"class":90},[84,39741,39742,39744,39746,39748,39750,39752,39754,39756,39758],{"class":86,"line":190},[84,39743,3449],{"class":90},[84,39745,2952],{"class":135},[84,39747,23323],{"class":90},[84,39749,39482],{"class":118},[84,39751,30327],{"class":90},[84,39753,39487],{"class":135},[84,39755,30333],{"class":90},[84,39757,39492],{"class":135},[84,39759,2968],{"class":90},[84,39761,39762],{"class":86,"line":196},[84,39763,3510],{"class":90},[84,39765,39766],{"class":86,"line":201},[84,39767,1936],{"class":90},[84,39769,39770],{"class":86,"line":217},[84,39771,1941],{"class":90},[84,39773,39775],{"class":39774,"line":227},[86,10151],[84,39776,3527],{"class":90},[84,39778,39780,39783],{"class":39779,"line":232},[86,10151],[84,39781,39782],{"class":98},"    inStockSorted",[84,39784,1307],{"class":90},[84,39786,39788,39790,39792],{"class":39787,"line":237},[86,10151],[84,39789,3539],{"class":108},[84,39791,2078],{"class":135},[84,39793,39794],{"class":90},".products\n",[84,39796,39798,39801,39803,39805,39807,39809,39811,39813,39815],{"class":39797,"line":253},[86,10151],[84,39799,39800],{"class":90},"        .",[84,39802,3006],{"class":98},[84,39804,145],{"class":90},[84,39806,1681],{"class":429},[84,39808,3014],{"class":108},[84,39810,39545],{"class":90},[84,39812,10674],{"class":108},[84,39814,39550],{"class":135},[84,39816,151],{"class":90},[84,39818,39820,39822,39824],{"class":39819,"line":266},[86,10151],[84,39821,39800],{"class":90},[84,39823,39560],{"class":98},[84,39825,635],{"class":90},[84,39827,39829,39831,39833,39835,39837,39839,39841,39843,39845,39847,39849],{"class":39828,"line":271},[86,10151],[84,39830,39800],{"class":90},[84,39832,39570],{"class":98},[84,39834,3120],{"class":90},[84,39836,13911],{"class":429},[84,39838,754],{"class":90},[84,39840,39579],{"class":429},[84,39842,3126],{"class":90},[84,39844,172],{"class":108},[84,39846,39586],{"class":90},[84,39848,39589],{"class":108},[84,39850,39592],{"class":90},[84,39852,39854],{"class":39853,"line":281},[86,10151],[84,39855,1936],{"class":90},[84,39857,39859],{"class":39858,"line":286},[86,10151],[84,39860,485],{"class":90},[84,39862,39863],{"class":86,"line":296},[84,39864,193],{"class":90},[84,39866,39867,39869,39871],{"class":86,"line":315},[84,39868,274],{"class":90},[84,39870,95],{"class":94},[84,39872,102],{"class":90},[84,39874,39875],{"class":86,"line":321},[84,39876,126],{"emptyLinePlaceholder":125},[84,39878,39879,39881,39883],{"class":86,"line":331},[84,39880,91],{"class":90},[84,39882,291],{"class":94},[84,39884,102],{"class":90},[84,39886,39888,39890,39892,39894,39896,39898,39900,39902,39904],{"class":39887,"line":336},[86,10151],[84,39889,299],{"class":90},[84,39891,740],{"class":94},[84,39893,13525],{"class":98},[84,39895,184],{"class":90},[84,39897,39631],{"class":118},[84,39899,5092],{"class":98},[84,39901,184],{"class":90},[84,39903,39638],{"class":118},[84,39905,102],{"class":90},[84,39907,39908],{"class":86,"line":354},[84,39909,39645],{"class":90},[84,39911,39912,39914,39916],{"class":86,"line":360},[84,39913,324],{"class":90},[84,39915,740],{"class":94},[84,39917,102],{"class":90},[84,39919,39920,39922,39924],{"class":86,"line":369},[84,39921,274],{"class":90},[84,39923,291],{"class":94},[84,39925,102],{"class":90},[1074,39927,39929,39930],{"id":39928},"_2-renderizar-componentes-con-v-for","2) Renderizar componentes con ",[22,39931,25577],{},[74,39933,39936],{"className":76,"code":39934,"filename":873,"highlights":39935,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\nimport UserCard from '~\u002Fcomponents\u002FUserCard.vue'\n\nconst users = ref([\n  { id: 'u1', name: 'Ana', role: 'Admin' },\n  { id: 'u2', name: 'Luis', role: 'Editor' }\n])\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003CUserCard v-for=\"user in users\" :key=\"user.id\" :user=\"user\" \u002F>\n\u003C\u002Ftemplate>\n",[227],[22,39937,39938,39948,39958,39970,39974,39986,40004,40022,40026,40034,40038,40046,40073],{"__ignoreMap":80},[84,39939,39940,39942,39944,39946],{"class":86,"line":87},[84,39941,91],{"class":90},[84,39943,95],{"class":94},[84,39945,99],{"class":98},[84,39947,102],{"class":90},[84,39949,39950,39952,39954,39956],{"class":86,"line":105},[84,39951,109],{"class":108},[84,39953,112],{"class":90},[84,39955,115],{"class":108},[84,39957,119],{"class":118},[84,39959,39960,39962,39965,39967],{"class":86,"line":122},[84,39961,109],{"class":108},[84,39963,39964],{"class":90}," UserCard ",[84,39966,115],{"class":108},[84,39968,39969],{"class":118}," '~\u002Fcomponents\u002FUserCard.vue'\n",[84,39971,39972],{"class":86,"line":129},[84,39973,126],{"emptyLinePlaceholder":125},[84,39975,39976,39978,39980,39982,39984],{"class":86,"line":154},[84,39977,132],{"class":108},[84,39979,11767],{"class":135},[84,39981,139],{"class":108},[84,39983,142],{"class":98},[84,39985,2894],{"class":90},[84,39987,39988,39990,39993,39995,39997,39999,40002],{"class":86,"line":159},[84,39989,2899],{"class":90},[84,39991,39992],{"class":118},"'u1'",[84,39994,23323],{"class":90},[84,39996,2918],{"class":118},[84,39998,27953],{"class":90},[84,40000,40001],{"class":118},"'Admin'",[84,40003,2921],{"class":90},[84,40005,40006,40008,40011,40013,40015,40017,40020],{"class":86,"line":178},[84,40007,2899],{"class":90},[84,40009,40010],{"class":118},"'u2'",[84,40012,23323],{"class":90},[84,40014,2943],{"class":118},[84,40016,27953],{"class":90},[84,40018,40019],{"class":118},"'Editor'",[84,40021,2968],{"class":90},[84,40023,40024],{"class":86,"line":190},[84,40025,2973],{"class":90},[84,40027,40028,40030,40032],{"class":86,"line":196},[84,40029,274],{"class":90},[84,40031,95],{"class":94},[84,40033,102],{"class":90},[84,40035,40036],{"class":86,"line":201},[84,40037,126],{"emptyLinePlaceholder":125},[84,40039,40040,40042,40044],{"class":86,"line":217},[84,40041,91],{"class":90},[84,40043,291],{"class":94},[84,40045,102],{"class":90},[84,40047,40049,40051,40053,40055,40057,40059,40061,40063,40065,40067,40069,40071],{"class":40048,"line":227},[86,10151],[84,40050,299],{"class":90},[84,40052,23311],{"class":94},[84,40054,13525],{"class":98},[84,40056,184],{"class":90},[84,40058,13530],{"class":118},[84,40060,5092],{"class":98},[84,40062,184],{"class":90},[84,40064,13537],{"class":118},[84,40066,27808],{"class":98},[84,40068,184],{"class":90},[84,40070,22227],{"class":118},[84,40072,5100],{"class":90},[84,40074,40075,40077,40079],{"class":86,"line":232},[84,40076,274],{"class":90},[84,40078,291],{"class":94},[84,40080,102],{"class":90},[74,40082,40085],{"className":76,"code":40083,"filename":1782,"highlights":40084,"language":79,"meta":80,"style":80},"\u003Cscript>\nimport UserCard from '~\u002Fcomponents\u002FUserCard.vue'\n\nexport default {\n  components: { UserCard },\n  data() {\n    return {\n      users: [\n        { id: 'u1', name: 'Ana', role: 'Admin' },\n        { id: 'u2', name: 'Luis', role: 'Editor' }\n      ]\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003CUserCard v-for=\"user in users\" :key=\"user.id\" :user=\"user\" \u002F>\n\u003C\u002Ftemplate>\n",[281],[22,40086,40087,40095,40105,40109,40117,40122,40128,40134,40138,40154,40170,40174,40178,40182,40186,40194,40198,40206,40233],{"__ignoreMap":80},[84,40088,40089,40091,40093],{"class":86,"line":87},[84,40090,91],{"class":90},[84,40092,95],{"class":94},[84,40094,102],{"class":90},[84,40096,40097,40099,40101,40103],{"class":86,"line":105},[84,40098,109],{"class":108},[84,40100,39964],{"class":90},[84,40102,115],{"class":108},[84,40104,39969],{"class":118},[84,40106,40107],{"class":86,"line":122},[84,40108,126],{"emptyLinePlaceholder":125},[84,40110,40111,40113,40115],{"class":86,"line":129},[84,40112,418],{"class":108},[84,40114,1870],{"class":108},[84,40116,175],{"class":90},[84,40118,40119],{"class":86,"line":154},[84,40120,40121],{"class":90},"  components: { UserCard },\n",[84,40123,40124,40126],{"class":86,"line":159},[84,40125,1896],{"class":98},[84,40127,1307],{"class":90},[84,40129,40130,40132],{"class":86,"line":178},[84,40131,1903],{"class":108},[84,40133,175],{"class":90},[84,40135,40136],{"class":86,"line":190},[84,40137,23597],{"class":90},[84,40139,40140,40142,40144,40146,40148,40150,40152],{"class":86,"line":196},[84,40141,3449],{"class":90},[84,40143,39992],{"class":118},[84,40145,23323],{"class":90},[84,40147,2918],{"class":118},[84,40149,27953],{"class":90},[84,40151,40001],{"class":118},[84,40153,2921],{"class":90},[84,40155,40156,40158,40160,40162,40164,40166,40168],{"class":86,"line":201},[84,40157,3449],{"class":90},[84,40159,40010],{"class":118},[84,40161,23323],{"class":90},[84,40163,2943],{"class":118},[84,40165,27953],{"class":90},[84,40167,40019],{"class":118},[84,40169,2968],{"class":90},[84,40171,40172],{"class":86,"line":217},[84,40173,3510],{"class":90},[84,40175,40176],{"class":86,"line":227},[84,40177,1936],{"class":90},[84,40179,40180],{"class":86,"line":232},[84,40181,485],{"class":90},[84,40183,40184],{"class":86,"line":237},[84,40185,193],{"class":90},[84,40187,40188,40190,40192],{"class":86,"line":253},[84,40189,274],{"class":90},[84,40191,95],{"class":94},[84,40193,102],{"class":90},[84,40195,40196],{"class":86,"line":266},[84,40197,126],{"emptyLinePlaceholder":125},[84,40199,40200,40202,40204],{"class":86,"line":271},[84,40201,91],{"class":90},[84,40203,291],{"class":94},[84,40205,102],{"class":90},[84,40207,40209,40211,40213,40215,40217,40219,40221,40223,40225,40227,40229,40231],{"class":40208,"line":281},[86,10151],[84,40210,299],{"class":90},[84,40212,23311],{"class":94},[84,40214,13525],{"class":98},[84,40216,184],{"class":90},[84,40218,13530],{"class":118},[84,40220,5092],{"class":98},[84,40222,184],{"class":90},[84,40224,13537],{"class":118},[84,40226,27808],{"class":98},[84,40228,184],{"class":90},[84,40230,22227],{"class":118},[84,40232,5100],{"class":90},[84,40234,40235,40237,40239],{"class":86,"line":286},[84,40236,274],{"class":90},[84,40238,291],{"class":94},[84,40240,102],{"class":90},[1074,40242,40244],{"id":40243},"_3-listas-anidadas-categorías-y-productos","3) Listas anidadas (categorías y productos)",[74,40246,40249],{"className":76,"code":40247,"filename":873,"highlights":40248,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst categories = ref([\n  {\n    id: 'c1',\n    name: 'Periféricos',\n    products: [\n      { id: 'p1', name: 'Mouse' },\n      { id: 'p2', name: 'Teclado' }\n    ]\n  }\n])\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection v-for=\"category in categories\" :key=\"category.id\">\n    \u003Ch3>{{ category.name }}\u003C\u002Fh3>\n    \u003Cli v-for=\"product in category.products\" :key=\"product.id\">\n      {{ product.name }}\n    \u003C\u002Fli>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[271,286],[22,40250,40251,40261,40271,40275,40288,40293,40303,40313,40318,40332,40346,40351,40355,40359,40367,40371,40379,40402,40415,40437,40442,40450,40458],{"__ignoreMap":80},[84,40252,40253,40255,40257,40259],{"class":86,"line":87},[84,40254,91],{"class":90},[84,40256,95],{"class":94},[84,40258,99],{"class":98},[84,40260,102],{"class":90},[84,40262,40263,40265,40267,40269],{"class":86,"line":105},[84,40264,109],{"class":108},[84,40266,112],{"class":90},[84,40268,115],{"class":108},[84,40270,119],{"class":118},[84,40272,40273],{"class":86,"line":122},[84,40274,126],{"emptyLinePlaceholder":125},[84,40276,40277,40279,40282,40284,40286],{"class":86,"line":129},[84,40278,132],{"class":108},[84,40280,40281],{"class":135}," categories",[84,40283,139],{"class":108},[84,40285,142],{"class":98},[84,40287,2894],{"class":90},[84,40289,40290],{"class":86,"line":154},[84,40291,40292],{"class":90},"  {\n",[84,40294,40295,40298,40301],{"class":86,"line":159},[84,40296,40297],{"class":90},"    id: ",[84,40299,40300],{"class":118},"'c1'",[84,40302,1887],{"class":90},[84,40304,40305,40308,40311],{"class":86,"line":178},[84,40306,40307],{"class":90},"    name: ",[84,40309,40310],{"class":118},"'Periféricos'",[84,40312,1887],{"class":90},[84,40314,40315],{"class":86,"line":190},[84,40316,40317],{"class":90},"    products: [\n",[84,40319,40320,40323,40326,40328,40330],{"class":86,"line":196},[84,40321,40322],{"class":90},"      { id: ",[84,40324,40325],{"class":118},"'p1'",[84,40327,23323],{"class":90},[84,40329,39460],{"class":118},[84,40331,2921],{"class":90},[84,40333,40334,40336,40339,40341,40344],{"class":86,"line":201},[84,40335,40322],{"class":90},[84,40337,40338],{"class":118},"'p2'",[84,40340,23323],{"class":90},[84,40342,40343],{"class":118},"'Teclado'",[84,40345,2968],{"class":90},[84,40347,40348],{"class":86,"line":217},[84,40349,40350],{"class":90},"    ]\n",[84,40352,40353],{"class":86,"line":227},[84,40354,485],{"class":90},[84,40356,40357],{"class":86,"line":232},[84,40358,2973],{"class":90},[84,40360,40361,40363,40365],{"class":86,"line":237},[84,40362,274],{"class":90},[84,40364,95],{"class":94},[84,40366,102],{"class":90},[84,40368,40369],{"class":86,"line":253},[84,40370,126],{"emptyLinePlaceholder":125},[84,40372,40373,40375,40377],{"class":86,"line":266},[84,40374,91],{"class":90},[84,40376,291],{"class":94},[84,40378,102],{"class":90},[84,40380,40382,40384,40386,40388,40390,40393,40395,40397,40400],{"class":40381,"line":271},[86,10151],[84,40383,299],{"class":90},[84,40385,4898],{"class":94},[84,40387,13525],{"class":98},[84,40389,184],{"class":90},[84,40391,40392],{"class":118},"\"category in categories\"",[84,40394,5092],{"class":98},[84,40396,184],{"class":90},[84,40398,40399],{"class":118},"\"category.id\"",[84,40401,102],{"class":90},[84,40403,40404,40406,40408,40411,40413],{"class":86,"line":281},[84,40405,1642],{"class":90},[84,40407,1074],{"class":94},[84,40409,40410],{"class":90},">{{ category.name }}\u003C\u002F",[84,40412,1074],{"class":94},[84,40414,102],{"class":90},[84,40416,40418,40420,40422,40424,40426,40429,40431,40433,40435],{"class":40417,"line":286},[86,10151],[84,40419,1642],{"class":90},[84,40421,740],{"class":94},[84,40423,13525],{"class":98},[84,40425,184],{"class":90},[84,40427,40428],{"class":118},"\"product in category.products\"",[84,40430,5092],{"class":98},[84,40432,184],{"class":90},[84,40434,39638],{"class":118},[84,40436,102],{"class":90},[84,40438,40439],{"class":86,"line":296},[84,40440,40441],{"class":90},"      {{ product.name }}\n",[84,40443,40444,40446,40448],{"class":86,"line":315},[84,40445,1734],{"class":90},[84,40447,740],{"class":94},[84,40449,102],{"class":90},[84,40451,40452,40454,40456],{"class":86,"line":321},[84,40453,324],{"class":90},[84,40455,4898],{"class":94},[84,40457,102],{"class":90},[84,40459,40460,40462,40464],{"class":86,"line":331},[84,40461,274],{"class":90},[84,40463,291],{"class":94},[84,40465,102],{"class":90},[74,40467,40470],{"className":76,"code":40468,"filename":1782,"highlights":40469,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      categories: [\n        {\n          id: 'c1',\n          name: 'Periféricos',\n          products: [\n            { id: 'p1', name: 'Mouse' },\n            { id: 'p2', name: 'Teclado' }\n          ]\n        }\n      ]\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Csection v-for=\"category in categories\" :key=\"category.id\">\n    \u003Ch3>{{ category.name }}\u003C\u002Fh3>\n    \u003Cli v-for=\"product in category.products\" :key=\"product.id\">\n      {{ product.name }}\n    \u003C\u002Fli>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[315,331],[22,40471,40472,40480,40488,40494,40500,40505,40510,40519,40528,40533,40546,40558,40563,40567,40571,40575,40579,40583,40591,40595,40603,40624,40636,40657,40661,40669,40677],{"__ignoreMap":80},[84,40473,40474,40476,40478],{"class":86,"line":87},[84,40475,91],{"class":90},[84,40477,95],{"class":94},[84,40479,102],{"class":90},[84,40481,40482,40484,40486],{"class":86,"line":105},[84,40483,418],{"class":108},[84,40485,1870],{"class":108},[84,40487,175],{"class":90},[84,40489,40490,40492],{"class":86,"line":122},[84,40491,1896],{"class":98},[84,40493,1307],{"class":90},[84,40495,40496,40498],{"class":86,"line":129},[84,40497,1903],{"class":108},[84,40499,175],{"class":90},[84,40501,40502],{"class":86,"line":154},[84,40503,40504],{"class":90},"      categories: [\n",[84,40506,40507],{"class":86,"line":159},[84,40508,40509],{"class":90},"        {\n",[84,40511,40512,40515,40517],{"class":86,"line":178},[84,40513,40514],{"class":90},"          id: ",[84,40516,40300],{"class":118},[84,40518,1887],{"class":90},[84,40520,40521,40524,40526],{"class":86,"line":190},[84,40522,40523],{"class":90},"          name: ",[84,40525,40310],{"class":118},[84,40527,1887],{"class":90},[84,40529,40530],{"class":86,"line":196},[84,40531,40532],{"class":90},"          products: [\n",[84,40534,40535,40538,40540,40542,40544],{"class":86,"line":201},[84,40536,40537],{"class":90},"            { id: ",[84,40539,40325],{"class":118},[84,40541,23323],{"class":90},[84,40543,39460],{"class":118},[84,40545,2921],{"class":90},[84,40547,40548,40550,40552,40554,40556],{"class":86,"line":217},[84,40549,40537],{"class":90},[84,40551,40338],{"class":118},[84,40553,23323],{"class":90},[84,40555,40343],{"class":118},[84,40557,2968],{"class":90},[84,40559,40560],{"class":86,"line":227},[84,40561,40562],{"class":90},"          ]\n",[84,40564,40565],{"class":86,"line":232},[84,40566,9629],{"class":90},[84,40568,40569],{"class":86,"line":237},[84,40570,3510],{"class":90},[84,40572,40573],{"class":86,"line":253},[84,40574,1936],{"class":90},[84,40576,40577],{"class":86,"line":266},[84,40578,485],{"class":90},[84,40580,40581],{"class":86,"line":271},[84,40582,193],{"class":90},[84,40584,40585,40587,40589],{"class":86,"line":281},[84,40586,274],{"class":90},[84,40588,95],{"class":94},[84,40590,102],{"class":90},[84,40592,40593],{"class":86,"line":286},[84,40594,126],{"emptyLinePlaceholder":125},[84,40596,40597,40599,40601],{"class":86,"line":296},[84,40598,91],{"class":90},[84,40600,291],{"class":94},[84,40602,102],{"class":90},[84,40604,40606,40608,40610,40612,40614,40616,40618,40620,40622],{"class":40605,"line":315},[86,10151],[84,40607,299],{"class":90},[84,40609,4898],{"class":94},[84,40611,13525],{"class":98},[84,40613,184],{"class":90},[84,40615,40392],{"class":118},[84,40617,5092],{"class":98},[84,40619,184],{"class":90},[84,40621,40399],{"class":118},[84,40623,102],{"class":90},[84,40625,40626,40628,40630,40632,40634],{"class":86,"line":321},[84,40627,1642],{"class":90},[84,40629,1074],{"class":94},[84,40631,40410],{"class":90},[84,40633,1074],{"class":94},[84,40635,102],{"class":90},[84,40637,40639,40641,40643,40645,40647,40649,40651,40653,40655],{"class":40638,"line":331},[86,10151],[84,40640,1642],{"class":90},[84,40642,740],{"class":94},[84,40644,13525],{"class":98},[84,40646,184],{"class":90},[84,40648,40428],{"class":118},[84,40650,5092],{"class":98},[84,40652,184],{"class":90},[84,40654,39638],{"class":118},[84,40656,102],{"class":90},[84,40658,40659],{"class":86,"line":336},[84,40660,40441],{"class":90},[84,40662,40663,40665,40667],{"class":86,"line":354},[84,40664,1734],{"class":90},[84,40666,740],{"class":94},[84,40668,102],{"class":90},[84,40670,40671,40673,40675],{"class":86,"line":360},[84,40672,324],{"class":90},[84,40674,4898],{"class":94},[84,40676,102],{"class":90},[84,40678,40679,40681,40683],{"class":86,"line":369},[84,40680,274],{"class":90},[84,40682,291],{"class":94},[84,40684,102],{"class":90},[34,40686,40688,40689],{"id":40687},"errores-comunes-con-v-for","Errores comunes con ",[22,40690,25577],{},[1074,40692,21530,40694,37761,40696,40698],{"id":40693},"_1-usar-index-como-key-en-listas-mutables",[22,40695,37760],{},[22,40697,2580],{}," en listas mutables",[74,40700,40703],{"className":76,"code":40701,"filename":34884,"highlights":40702,"language":79,"meta":80,"style":80},"\u003Cli v-for=\"(item, index) in items\" :key=\"index\">\n  {{ item.name }}\n\u003C\u002Fli>\n",[87],[22,40704,40705,40741,40746],{"__ignoreMap":80},[84,40706,40708,40710,40712,40714,40716,40718,40721,40723,40725,40727,40729,40731,40733,40735,40737,40739],{"class":40707,"line":87},[86,10151],[84,40709,91],{"class":90},[84,40711,740],{"class":94},[84,40713,13525],{"class":108},[84,40715,184],{"class":90},[84,40717,1678],{"class":118},[84,40719,40720],{"class":90},"(item, index) ",[84,40722,39106],{"class":108},[84,40724,39020],{"class":90},[84,40726,1678],{"class":118},[84,40728,7012],{"class":90},[84,40730,2580],{"class":98},[84,40732,184],{"class":90},[84,40734,1678],{"class":118},[84,40736,37760],{"class":90},[84,40738,1678],{"class":118},[84,40740,102],{"class":90},[84,40742,40743],{"class":86,"line":105},[84,40744,40745],{"class":90},"  {{ item.name }}\n",[84,40747,40748,40750,40752],{"class":86,"line":122},[84,40749,274],{"class":90},[84,40751,740],{"class":94},[84,40753,102],{"class":90},[15,40755,40756],{},"Esto puede romper el estado de cada fila al reordenar o insertar elementos.",[823,40758,40759],{},[15,40760,40761,40762,40764],{},"Usa una clave estable (",[22,40763,39121],{},") cuando exista.",[1074,40766,40768,40769,2488,40771,40773],{"id":40767},"_2-mezclar-v-if-y-v-for-en-el-mismo-nodo","2) Mezclar ",[22,40770,8299],{},[22,40772,25577],{}," en el mismo nodo",[74,40775,40778],{"className":76,"code":40776,"filename":29029,"highlights":40777,"language":79,"meta":80,"style":80},"\u003Cli v-for=\"user in users\" v-if=\"user.active\" :key=\"user.id\">\n  {{ user.name }}\n\u003C\u002Fli>\n",[87],[22,40779,40780,40828,40833],{"__ignoreMap":80},[84,40781,40783,40785,40787,40789,40791,40793,40796,40798,40800,40802,40804,40806,40808,40811,40813,40815,40817,40819,40821,40824,40826],{"class":40782,"line":87},[86,10151],[84,40784,91],{"class":90},[84,40786,740],{"class":94},[84,40788,13525],{"class":108},[84,40790,184],{"class":90},[84,40792,1678],{"class":118},[84,40794,40795],{"class":90},"user ",[84,40797,39106],{"class":108},[84,40799,11767],{"class":90},[84,40801,1678],{"class":118},[84,40803,344],{"class":108},[84,40805,184],{"class":90},[84,40807,1678],{"class":118},[84,40809,40810],{"class":90},"user.active",[84,40812,1678],{"class":118},[84,40814,7012],{"class":90},[84,40816,2580],{"class":98},[84,40818,184],{"class":90},[84,40820,1678],{"class":118},[84,40822,40823],{"class":90},"user.id",[84,40825,1678],{"class":118},[84,40827,102],{"class":90},[84,40829,40830],{"class":86,"line":105},[84,40831,40832],{"class":90},"  {{ user.name }}\n",[84,40834,40835,40837,40839],{"class":86,"line":122},[84,40836,274],{"class":90},[84,40838,740],{"class":94},[84,40840,102],{"class":90},[823,40842,40843],{},[15,40844,40845,40846,40848],{},"Crea una lista ",[22,40847,2523],{}," filtrada e itera esa lista.",[1074,40850,40852,40853],{"id":40851},"_3-mutar-directamente-el-resultado-de-un-computed","3) Mutar directamente el resultado de un ",[22,40854,2523],{},[15,40856,40857],{},"Si derives una lista ordenada\u002Ffiltrada, no la mutas directamente.\nLa fuente de verdad debe seguir siendo el estado original.",[1074,40859,27465,40861,40863],{"id":40860},"_4-key-duplicadas",[22,40862,2580],{}," duplicadas",[15,40865,40866,40867,40869],{},"Si dos elementos comparten la misma ",[22,40868,2580],{},", Vue no puede hacer diff correctamente.\nResultado: renders inconsistentes y bugs visuales difíciles de depurar.",[34,40871,40873],{"id":40872},"buenas-prácticas-rápidas","Buenas prácticas rápidas",[737,40875,40876,40883,40888,40891,40897],{},[740,40877,21486,40878,40880,40881,764],{},[22,40879,22745],{}," estable para ",[22,40882,37669],{},[740,40884,40885,40886,764],{},"Prefiltra y ordena con ",[22,40887,2523],{},[740,40889,40890],{},"Evita lógica compleja en el template.",[740,40892,40893,40894,40896],{},"Mantén los bloques ",[22,40895,25577],{}," pequeños y legibles.",[740,40898,40899],{},"En listas grandes, considera paginación o virtualización.",[34,40901,18395],{"id":18394},[15,40903,40904,40906],{},[22,40905,25577],{}," no es solo \"pintar arrays\".\nEs una pieza central del renderizado declarativo en Vue.",[15,40908,40909],{},"Si aplicas estas reglas:",[737,40911,40912,40917,40922],{},[740,40913,40914,40916],{},[22,40915,2580],{}," estable",[740,40918,40919,40920],{},"Listas derivadas con ",[22,40921,2523],{},[740,40923,40924],{},"Estructura limpia del template",[15,40926,40927],{},"Vas a tener componentes más predecibles, más performantes y mucho más fáciles de mantener.",[835,40929,837],{},{"title":80,"searchDepth":105,"depth":105,"links":40931},[40932,40933,40935,40936,40937,40938,40946,40953,40964,40965],{"id":21333,"depth":105,"text":21334},{"id":37715,"depth":105,"text":40934},"Cuándo usar v-for",{"id":1039,"depth":105,"text":1040},{"id":37767,"depth":105,"text":37768},{"id":38019,"depth":105,"text":38020},{"id":38439,"depth":105,"text":40939,"children":40940},"Nivel intermedio: índice, objetos y template v-for",[40941,40943,40944],{"id":38446,"depth":122,"text":40942},"1) Índice en v-for",{"id":38697,"depth":122,"text":38698},{"id":38980,"depth":122,"text":40945},"3) Repetir varios nodos con template",{"id":39369,"depth":105,"text":39370,"children":40947},[40948,40950,40952],{"id":39373,"depth":122,"text":40949},"1) Prefiltrar y ordenar con computed",{"id":39928,"depth":122,"text":40951},"2) Renderizar componentes con v-for",{"id":40243,"depth":122,"text":40244},{"id":40687,"depth":105,"text":40954,"children":40955},"Errores comunes con v-for",[40956,40958,40960,40962],{"id":40693,"depth":122,"text":40957},"1) Usar index como key en listas mutables",{"id":40767,"depth":122,"text":40959},"2) Mezclar v-if y v-for en el mismo nodo",{"id":40851,"depth":122,"text":40961},"3) Mutar directamente el resultado de un computed",{"id":40860,"depth":122,"text":40963},"4) key duplicadas",{"id":40872,"depth":105,"text":40873},{"id":18394,"depth":105,"text":18395},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1770690176\u002Fdirectives-vue-v-for-guide_itbdds.png","Imagen temporal para portada del artículo sobre v-for en Vue","2026-02-10","Aprende a dominar v-for en Vue con ejemplos prácticos desde lo más básico hasta patrones avanzados, uso correcto de key, errores comunes y buenas prácticas en Composition API y Options API.",{"updatedAt":40971,"coverCaption":18477,"author":868,"keywords":40972},"2026-02-09T21:30:00-05:00",[870,25577,40973,2580,873,1782,11392],"listas","\u002Fblog\u002Fdirectives-vue-v-for-guide.es",[40976],{"headline":40977,"author":40978,"datePublished":40971,"@type":880},"Directiva v-for en Vue: guía completa de básico a avanzado",{"name":868,"@type":879},{"title":37640,"description":40969},"blog\u002Fdirectives-vue-v-for-guide.es",[40982,40983,40985,40986],{"tag":21297,"color":21298},{"tag":40984,"color":3946},"Listas",{"tag":22594,"color":22595},{"tag":894,"color":895},"h_Z-6C71ir_sIzxviVE8eEY3vMd8ZVXbADx8GTll9U8",{"id":40989,"title":40990,"body":40991,"cover":42830,"coverAlt":42831,"date":42832,"description":42833,"draft":852,"extension":853,"lab":882,"locale":864,"meta":42834,"navigation":125,"path":42840,"schemaOrg":42841,"seo":42845,"series":21291,"seriesDescription":21292,"seriesOrder":105,"seriesTitle":21293,"slug":882,"stem":42846,"tags":42847,"__hash__":42854},"blog\u002Fblog\u002Fdirectives-vue-v-if-v-else-v-show-guide.es.md","Directivas en Vue: v-if, v-else y v-show",{"type":8,"value":40992,"toc":42804},[40993,41004,41018,41045,41055,41059,41063,41079,41084,41095,41106,41114,41125,41128,41143,41147,41154,41158,41166,41178,41182,41217,41225,41228,41466,41709,41729,41735,41743,41929,42117,42121,42128,42139,42148,42158,42168,42413,42646,42648,42657,42659,42710,42722,42728,42743,42750,42763,42765,42793,42801],[11,40994,40996,754,40998,2488,41001,41003],{"id":40995},"v-if-v-else-y-v-show-en-vue-cuándo-usar-cada-una",[22,40997,8299],{},[22,40999,41000],{},"v-else",[22,41002,8462],{}," en Vue: cuándo usar cada una",[15,41005,41006,41007,754,41009,2488,41011,41013,41014,41017],{},"Las directivas ",[22,41008,8299],{},[22,41010,41000],{},[22,41012,8462],{}," sirven para ",[958,41015,41016],{},"mostrar u ocultar contenido"," en función de una condición reactiva.\nLa diferencia clave —la que evita bugs sutiles y problemas de rendimiento— es esta:",[737,41019,41020,41032],{},[740,41021,41022,21408,41028,41031],{},[958,41023,41024,6014,41026],{},[22,41025,8299],{},[22,41027,41000],{},[4070,41029,41030],{},"crean o destruyen"," elementos del DOM.",[740,41033,41034,21408,41038,41041,41042,764],{},[958,41035,41036],{},[22,41037,8462],{},[4070,41039,41040],{},"no destruye nada","; solo alterna ",[22,41043,41044],{},"display: none",[15,41046,41047,41048,13234,41051,41054],{},"Si lo piensas como ",[958,41049,41050],{},"“¿Esto existe?”",[958,41052,41053],{},"“¿Esto se ve?”",", ya vas por buen camino.",[34,41056,41058],{"id":41057},"qué-hace-cada-una","Qué hace cada una",[1074,41060,41061],{"id":8299},[22,41062,8299],{},[15,41064,41065,41066,41069,41070,41072,41073,41075,41076,764],{},"Renderiza el elemento ",[958,41067,41068],{},"solo si"," la condición es ",[22,41071,2938],{},".\nSi es ",[22,41074,148],{},", el elemento ",[958,41077,41078],{},"no existe en el DOM",[15,41080,41081],{},[958,41082,41083],{},"Útil cuando:",[737,41085,41086,41089,41092],{},[740,41087,41088],{},"El contenido es pesado (componentes grandes, listas, gráficos)",[740,41090,41091],{},"No debería existir si no se cumple la condición (permisos de UI, flujos sensibles)",[740,41093,41094],{},"Se muestra pocas veces u ocasionalmente",[823,41096,41097],{},[15,41098,41099,41101,41102,41105],{},[22,41100,8299],{}," tiene un costo mayor al alternar, porque implica ",[958,41103,41104],{},"montaje y desmontaje"," del árbol de componentes.",[1074,41107,41109,2488,41111],{"id":41108},"v-else-y-v-else-if",[22,41110,41000],{},[22,41112,41113],{},"v-else-if",[15,41115,41116,41117,41120,41121,50,41123,764],{},"Se usan ",[958,41118,41119],{},"inmediatamente después"," de un ",[22,41122,8299],{},[22,41124,41113],{},[15,41126,41127],{},"Reglas importantes:",[737,41129,41130,41137],{},[740,41131,41132,41133,41136],{},"Deben estar ",[958,41134,41135],{},"adyacentes"," (sin nodos intermedios).",[740,41138,41139,41140,764],{},"Vue los interpreta como ",[958,41141,41142],{},"un único bloque condicional",[1074,41144,41145],{"id":8462},[22,41146,8462],{},[15,41148,41149,41150,41153],{},"El elemento ",[958,41151,41152],{},"siempre se renderiza"," (existe en el DOM), pero se muestra u oculta con CSS.",[15,41155,41156],{},[958,41157,41083],{},[737,41159,41160,41163],{},[740,41161,41162],{},"La visibilidad cambia con frecuencia (toggles, menús, paneles)",[740,41164,41165],{},"Quieres evitar el costo de montar\u002Fdesmontar",[823,41167,41168],{},[15,41169,41170,11716,41172,41177],{},[22,41171,8462],{},[958,41173,41174,41175],{},"no funciona con ",[22,41176,26850],{},", porque no es un elemento real.\nEl contenido sigue en el DOM: foco, tab order y accesibilidad pueden verse afectados si no se gestiona bien.",[34,41179,41181],{"id":41180},"resumen-rápido-cuál-usar","Resumen rápido: cuál usar",[737,41183,41184,41195,41208],{},[740,41185,21486,41186,41190,41191,41194],{},[958,41187,41188],{},[22,41189,8299],{}," cuando el contenido ",[958,41192,41193],{},"no debe existir"," si la condición no se cumple.",[740,41196,21486,41197,41190,41201,41204,41205,764],{},[958,41198,41199],{},[22,41200,8462],{},[958,41202,41203],{},"solo debe ocultarse"," y el toggle será ",[958,41206,41207],{},"frecuente",[740,41209,21486,41210,41214,41215,764],{},[958,41211,41212],{},[22,41213,41000],{}," para el caso alternativo inmediato de un ",[22,41216,8299],{},[34,41218,41220,41221,28840,41223,909],{"id":41219},"ejemplo-1-login-v-if-v-else","Ejemplo 1: Login (",[22,41222,8299],{},[22,41224,41000],{},[15,41226,41227],{},"Cuando una persona está autenticada, muestras el panel; si no, un CTA para iniciar sesión.",[74,41229,41232],{"className":76,"code":41230,"filename":873,"highlights":41231,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from \"vue\";\n\nconst isLoggedIn = ref(false);\n\nfunction toggleLogin() {\n  isLoggedIn.value = !isLoggedIn.value;\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"toggleLogin\">\n    {{ isLoggedIn ? \"Log out\" : \"Log in\" }}\n  \u003C\u002Fbutton>\n\n  \u003Csection v-if=\"isLoggedIn\">\n    \u003Ch2>Welcome back\u003C\u002Fh2>\n    \u003Cp>You have access to your dashboard.\u003C\u002Fp>\n  \u003C\u002Fsection>\n\n  \u003Csection v-else>\n    \u003Ch2>Please log in\u003C\u002Fh2>\n    \u003Cp>You need an account to continue.\u003C\u002Fp>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[178,266,315],[22,41233,41234,41244,41256,41260,41277,41281,41290,41303,41307,41315,41319,41327,41342,41347,41355,41359,41375,41388,41401,41409,41413,41424,41437,41450,41458],{"__ignoreMap":80},[84,41235,41236,41238,41240,41242],{"class":86,"line":87},[84,41237,91],{"class":90},[84,41239,95],{"class":94},[84,41241,99],{"class":98},[84,41243,102],{"class":90},[84,41245,41246,41248,41250,41252,41254],{"class":86,"line":105},[84,41247,109],{"class":108},[84,41249,112],{"class":90},[84,41251,115],{"class":108},[84,41253,18866],{"class":118},[84,41255,18869],{"class":90},[84,41257,41258],{"class":86,"line":122},[84,41259,126],{"emptyLinePlaceholder":125},[84,41261,41262,41264,41267,41269,41271,41273,41275],{"class":86,"line":129},[84,41263,132],{"class":108},[84,41265,41266],{"class":135}," isLoggedIn",[84,41268,139],{"class":108},[84,41270,142],{"class":98},[84,41272,145],{"class":90},[84,41274,148],{"class":135},[84,41276,18994],{"class":90},[84,41278,41279],{"class":86,"line":154},[84,41280,126],{"emptyLinePlaceholder":125},[84,41282,41283,41285,41288],{"class":86,"line":159},[84,41284,3246],{"class":108},[84,41286,41287],{"class":98}," toggleLogin",[84,41289,1307],{"class":90},[84,41291,41293,41296,41298,41300],{"class":41292,"line":178},[86,10151],[84,41294,41295],{"class":90},"  isLoggedIn.value ",[84,41297,184],{"class":108},[84,41299,260],{"class":108},[84,41301,41302],{"class":90},"isLoggedIn.value;\n",[84,41304,41305],{"class":86,"line":190},[84,41306,193],{"class":90},[84,41308,41309,41311,41313],{"class":86,"line":196},[84,41310,274],{"class":90},[84,41312,95],{"class":94},[84,41314,102],{"class":90},[84,41316,41317],{"class":86,"line":201},[84,41318,126],{"emptyLinePlaceholder":125},[84,41320,41321,41323,41325],{"class":86,"line":217},[84,41322,91],{"class":90},[84,41324,291],{"class":94},[84,41326,102],{"class":90},[84,41328,41329,41331,41333,41335,41337,41340],{"class":86,"line":227},[84,41330,299],{"class":90},[84,41332,302],{"class":94},[84,41334,305],{"class":98},[84,41336,184],{"class":90},[84,41338,41339],{"class":118},"\"toggleLogin\"",[84,41341,102],{"class":90},[84,41343,41344],{"class":86,"line":232},[84,41345,41346],{"class":90},"    {{ isLoggedIn ? \"Log out\" : \"Log in\" }}\n",[84,41348,41349,41351,41353],{"class":86,"line":237},[84,41350,324],{"class":90},[84,41352,302],{"class":94},[84,41354,102],{"class":90},[84,41356,41357],{"class":86,"line":253},[84,41358,126],{"emptyLinePlaceholder":125},[84,41360,41362,41364,41366,41368,41370,41373],{"class":41361,"line":266},[86,10151],[84,41363,299],{"class":90},[84,41365,4898],{"class":94},[84,41367,344],{"class":98},[84,41369,184],{"class":90},[84,41371,41372],{"class":118},"\"isLoggedIn\"",[84,41374,102],{"class":90},[84,41376,41377,41379,41381,41384,41386],{"class":86,"line":271},[84,41378,1642],{"class":90},[84,41380,34],{"class":94},[84,41382,41383],{"class":90},">Welcome back\u003C\u002F",[84,41385,34],{"class":94},[84,41387,102],{"class":90},[84,41389,41390,41392,41394,41397,41399],{"class":86,"line":281},[84,41391,1642],{"class":90},[84,41393,15],{"class":94},[84,41395,41396],{"class":90},">You have access to your dashboard.\u003C\u002F",[84,41398,15],{"class":94},[84,41400,102],{"class":90},[84,41402,41403,41405,41407],{"class":86,"line":286},[84,41404,324],{"class":90},[84,41406,4898],{"class":94},[84,41408,102],{"class":90},[84,41410,41411],{"class":86,"line":296},[84,41412,126],{"emptyLinePlaceholder":125},[84,41414,41416,41418,41420,41422],{"class":41415,"line":315},[86,10151],[84,41417,299],{"class":90},[84,41419,4898],{"class":94},[84,41421,1753],{"class":98},[84,41423,102],{"class":90},[84,41425,41426,41428,41430,41433,41435],{"class":86,"line":321},[84,41427,1642],{"class":90},[84,41429,34],{"class":94},[84,41431,41432],{"class":90},">Please log in\u003C\u002F",[84,41434,34],{"class":94},[84,41436,102],{"class":90},[84,41438,41439,41441,41443,41446,41448],{"class":86,"line":331},[84,41440,1642],{"class":90},[84,41442,15],{"class":94},[84,41444,41445],{"class":90},">You need an account to continue.\u003C\u002F",[84,41447,15],{"class":94},[84,41449,102],{"class":90},[84,41451,41452,41454,41456],{"class":86,"line":336},[84,41453,324],{"class":90},[84,41455,4898],{"class":94},[84,41457,102],{"class":90},[84,41459,41460,41462,41464],{"class":86,"line":354},[84,41461,274],{"class":90},[84,41463,291],{"class":94},[84,41465,102],{"class":90},[74,41467,41470],{"className":76,"code":41468,"filename":1782,"highlights":41469,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      isLoggedIn: false,\n    };\n  },\n  methods: {\n    toggleLogin() {\n      this.isLoggedIn = !this.isLoggedIn;\n    },\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"toggleLogin\">\n    {{ isLoggedIn ? \"Log out\" : \"Log in\" }}\n  \u003C\u002Fbutton>\n\n  \u003Csection v-if=\"isLoggedIn\">\n    \u003Ch2>Welcome back\u003C\u002Fh2>\n    \u003Cp>You have access to your dashboard.\u003C\u002Fp>\n  \u003C\u002Fsection>\n\n  \u003Csection v-else>\n    \u003Ch2>Please log in\u003C\u002Fh2>\n    \u003Cp>You need an account to continue.\u003C\u002Fp>\n  \u003C\u002Fsection>\n\u003C\u002Ftemplate>\n",[201,315,360],[22,41471,41472,41480,41488,41494,41500,41509,41513,41517,41521,41528,41545,41549,41553,41557,41565,41569,41577,41591,41595,41603,41607,41622,41634,41646,41654,41658,41669,41681,41693,41701],{"__ignoreMap":80},[84,41473,41474,41476,41478],{"class":86,"line":87},[84,41475,91],{"class":90},[84,41477,95],{"class":94},[84,41479,102],{"class":90},[84,41481,41482,41484,41486],{"class":86,"line":105},[84,41483,418],{"class":108},[84,41485,1870],{"class":108},[84,41487,175],{"class":90},[84,41489,41490,41492],{"class":86,"line":122},[84,41491,1896],{"class":98},[84,41493,1307],{"class":90},[84,41495,41496,41498],{"class":86,"line":129},[84,41497,1903],{"class":108},[84,41499,175],{"class":90},[84,41501,41502,41505,41507],{"class":86,"line":154},[84,41503,41504],{"class":90},"      isLoggedIn: ",[84,41506,148],{"class":135},[84,41508,1887],{"class":90},[84,41510,41511],{"class":86,"line":159},[84,41512,19195],{"class":90},[84,41514,41515],{"class":86,"line":178},[84,41516,1941],{"class":90},[84,41518,41519],{"class":86,"line":190},[84,41520,1950],{"class":90},[84,41522,41523,41526],{"class":86,"line":196},[84,41524,41525],{"class":98},"    toggleLogin",[84,41527,1307],{"class":90},[84,41529,41531,41533,41536,41538,41540,41542],{"class":41530,"line":201},[86,10151],[84,41532,2022],{"class":135},[84,41534,41535],{"class":90},".isLoggedIn ",[84,41537,184],{"class":108},[84,41539,260],{"class":108},[84,41541,2151],{"class":135},[84,41543,41544],{"class":90},".isLoggedIn;\n",[84,41546,41547],{"class":86,"line":217},[84,41548,7783],{"class":90},[84,41550,41551],{"class":86,"line":227},[84,41552,1941],{"class":90},[84,41554,41555],{"class":86,"line":232},[84,41556,18973],{"class":90},[84,41558,41559,41561,41563],{"class":86,"line":237},[84,41560,274],{"class":90},[84,41562,95],{"class":94},[84,41564,102],{"class":90},[84,41566,41567],{"class":86,"line":253},[84,41568,126],{"emptyLinePlaceholder":125},[84,41570,41571,41573,41575],{"class":86,"line":266},[84,41572,91],{"class":90},[84,41574,291],{"class":94},[84,41576,102],{"class":90},[84,41578,41579,41581,41583,41585,41587,41589],{"class":86,"line":271},[84,41580,299],{"class":90},[84,41582,302],{"class":94},[84,41584,305],{"class":98},[84,41586,184],{"class":90},[84,41588,41339],{"class":118},[84,41590,102],{"class":90},[84,41592,41593],{"class":86,"line":281},[84,41594,41346],{"class":90},[84,41596,41597,41599,41601],{"class":86,"line":286},[84,41598,324],{"class":90},[84,41600,302],{"class":94},[84,41602,102],{"class":90},[84,41604,41605],{"class":86,"line":296},[84,41606,126],{"emptyLinePlaceholder":125},[84,41608,41610,41612,41614,41616,41618,41620],{"class":41609,"line":315},[86,10151],[84,41611,299],{"class":90},[84,41613,4898],{"class":94},[84,41615,344],{"class":98},[84,41617,184],{"class":90},[84,41619,41372],{"class":118},[84,41621,102],{"class":90},[84,41623,41624,41626,41628,41630,41632],{"class":86,"line":321},[84,41625,1642],{"class":90},[84,41627,34],{"class":94},[84,41629,41383],{"class":90},[84,41631,34],{"class":94},[84,41633,102],{"class":90},[84,41635,41636,41638,41640,41642,41644],{"class":86,"line":331},[84,41637,1642],{"class":90},[84,41639,15],{"class":94},[84,41641,41396],{"class":90},[84,41643,15],{"class":94},[84,41645,102],{"class":90},[84,41647,41648,41650,41652],{"class":86,"line":336},[84,41649,324],{"class":90},[84,41651,4898],{"class":94},[84,41653,102],{"class":90},[84,41655,41656],{"class":86,"line":354},[84,41657,126],{"emptyLinePlaceholder":125},[84,41659,41661,41663,41665,41667],{"class":41660,"line":360},[86,10151],[84,41662,299],{"class":90},[84,41664,4898],{"class":94},[84,41666,1753],{"class":98},[84,41668,102],{"class":90},[84,41670,41671,41673,41675,41677,41679],{"class":86,"line":369},[84,41672,1642],{"class":90},[84,41674,34],{"class":94},[84,41676,41432],{"class":90},[84,41678,34],{"class":94},[84,41680,102],{"class":90},[84,41682,41683,41685,41687,41689,41691],{"class":86,"line":1453},[84,41684,1642],{"class":90},[84,41686,15],{"class":94},[84,41688,41445],{"class":90},[84,41690,15],{"class":94},[84,41692,102],{"class":90},[84,41694,41695,41697,41699],{"class":86,"line":1462},[84,41696,324],{"class":90},[84,41698,4898],{"class":94},[84,41700,102],{"class":90},[84,41702,41703,41705,41707],{"class":86,"line":1484},[84,41704,274],{"class":90},[84,41706,291],{"class":94},[84,41708,102],{"class":90},[823,41710,41711],{},[15,41712,18597,41713,41716,41717,17698,41720,41722,41723,41726,41727,764],{},[22,41714,41715],{},"\u003Csection v-else>"," debe ir ",[958,41718,41719],{},"justo después",[22,41721,8299],{},".\nSi intercalas un comentario, un ",[22,41724,41725],{},"\u003Cdiv>"," u otro nodo, Vue deja de asociarlo como ",[22,41728,17390],{},[34,41730,41732,41733,909],{"id":41731},"ejemplo-2-tabs-o-panel-que-se-abre-y-cierra-v-show","Ejemplo 2: Tabs o panel que se abre y cierra (",[22,41734,8462],{},[15,41736,41737,41738,41742],{},"Un panel de filtros que el usuario abre y cierra constantemente. Aquí ",[958,41739,41740],{},[22,41741,8462],{}," es ideal.",[74,41744,41747],{"className":76,"code":41745,"filename":873,"highlights":41746,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from \"vue\";\n\nconst isOpen = ref(false);\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"isOpen = !isOpen\">\n    {{ isOpen ? \"Hide filters\" : \"Show filters\" }}\n  \u003C\u002Fbutton>\n\n  \u003Caside v-show=\"isOpen\" class=\"filters\">\n    \u003Ch3>Filters\u003C\u002Fh3>\n    \u003Clabel>\n      \u003Cinput type=\"checkbox\" \u002F>\n      Only available items\n    \u003C\u002Flabel>\n  \u003C\u002Faside>\n\u003C\u002Ftemplate>\n",[129,227],[22,41748,41749,41759,41771,41775,41792,41800,41804,41812,41826,41831,41839,41843,41865,41878,41886,41900,41905,41913,41921],{"__ignoreMap":80},[84,41750,41751,41753,41755,41757],{"class":86,"line":87},[84,41752,91],{"class":90},[84,41754,95],{"class":94},[84,41756,99],{"class":98},[84,41758,102],{"class":90},[84,41760,41761,41763,41765,41767,41769],{"class":86,"line":105},[84,41762,109],{"class":108},[84,41764,112],{"class":90},[84,41766,115],{"class":108},[84,41768,18866],{"class":118},[84,41770,18869],{"class":90},[84,41772,41773],{"class":86,"line":122},[84,41774,126],{"emptyLinePlaceholder":125},[84,41776,41778,41780,41782,41784,41786,41788,41790],{"class":41777,"line":129},[86,10151],[84,41779,132],{"class":108},[84,41781,136],{"class":135},[84,41783,139],{"class":108},[84,41785,142],{"class":98},[84,41787,145],{"class":90},[84,41789,148],{"class":135},[84,41791,18994],{"class":90},[84,41793,41794,41796,41798],{"class":86,"line":154},[84,41795,274],{"class":90},[84,41797,95],{"class":94},[84,41799,102],{"class":90},[84,41801,41802],{"class":86,"line":159},[84,41803,126],{"emptyLinePlaceholder":125},[84,41805,41806,41808,41810],{"class":86,"line":178},[84,41807,91],{"class":90},[84,41809,291],{"class":94},[84,41811,102],{"class":90},[84,41813,41814,41816,41818,41820,41822,41824],{"class":86,"line":190},[84,41815,299],{"class":90},[84,41817,302],{"class":94},[84,41819,305],{"class":98},[84,41821,184],{"class":90},[84,41823,19417],{"class":118},[84,41825,102],{"class":90},[84,41827,41828],{"class":86,"line":196},[84,41829,41830],{"class":90},"    {{ isOpen ? \"Hide filters\" : \"Show filters\" }}\n",[84,41832,41833,41835,41837],{"class":86,"line":201},[84,41834,324],{"class":90},[84,41836,302],{"class":94},[84,41838,102],{"class":90},[84,41840,41841],{"class":86,"line":217},[84,41842,126],{"emptyLinePlaceholder":125},[84,41844,41846,41848,41850,41853,41855,41857,41859,41861,41863],{"class":41845,"line":227},[86,10151],[84,41847,299],{"class":90},[84,41849,22190],{"class":94},[84,41851,41852],{"class":98}," v-show",[84,41854,184],{"class":90},[84,41856,349],{"class":118},[84,41858,1629],{"class":98},[84,41860,184],{"class":90},[84,41862,7184],{"class":118},[84,41864,102],{"class":90},[84,41866,41867,41869,41871,41874,41876],{"class":86,"line":232},[84,41868,1642],{"class":90},[84,41870,1074],{"class":94},[84,41872,41873],{"class":90},">Filters\u003C\u002F",[84,41875,1074],{"class":94},[84,41877,102],{"class":90},[84,41879,41880,41882,41884],{"class":86,"line":237},[84,41881,1642],{"class":90},[84,41883,4653],{"class":94},[84,41885,102],{"class":90},[84,41887,41888,41890,41892,41894,41896,41898],{"class":86,"line":253},[84,41889,1691],{"class":90},[84,41891,18759],{"class":94},[84,41893,5046],{"class":98},[84,41895,184],{"class":90},[84,41897,29874],{"class":118},[84,41899,5100],{"class":90},[84,41901,41902],{"class":86,"line":266},[84,41903,41904],{"class":90},"      Only available items\n",[84,41906,41907,41909,41911],{"class":86,"line":271},[84,41908,1734],{"class":90},[84,41910,4653],{"class":94},[84,41912,102],{"class":90},[84,41914,41915,41917,41919],{"class":86,"line":281},[84,41916,324],{"class":90},[84,41918,22190],{"class":94},[84,41920,102],{"class":90},[84,41922,41923,41925,41927],{"class":86,"line":286},[84,41924,274],{"class":90},[84,41926,291],{"class":94},[84,41928,102],{"class":90},[74,41930,41933],{"className":76,"code":41931,"filename":1782,"highlights":41932,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      isOpen: false,\n    };\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"isOpen = !isOpen\">\n    {{ isOpen ? \"Hide filters\" : \"Show filters\" }}\n  \u003C\u002Fbutton>\n\n  \u003Caside v-show=\"isOpen\" class=\"filters\">\n    \u003Ch3>Filters\u003C\u002Fh3>\n    \u003Clabel>\n      \u003Cinput type=\"checkbox\" \u002F>\n      Only available items\n    \u003C\u002Flabel>\n  \u003C\u002Faside>\n\u003C\u002Ftemplate>\n",[154,266],[22,41934,41935,41943,41951,41957,41963,41972,41976,41980,41984,41992,41996,42004,42018,42022,42030,42034,42055,42067,42075,42089,42093,42101,42109],{"__ignoreMap":80},[84,41936,41937,41939,41941],{"class":86,"line":87},[84,41938,91],{"class":90},[84,41940,95],{"class":94},[84,41942,102],{"class":90},[84,41944,41945,41947,41949],{"class":86,"line":105},[84,41946,418],{"class":108},[84,41948,1870],{"class":108},[84,41950,175],{"class":90},[84,41952,41953,41955],{"class":86,"line":122},[84,41954,1896],{"class":98},[84,41956,1307],{"class":90},[84,41958,41959,41961],{"class":86,"line":129},[84,41960,1903],{"class":108},[84,41962,175],{"class":90},[84,41964,41966,41968,41970],{"class":41965,"line":154},[86,10151],[84,41967,19547],{"class":90},[84,41969,148],{"class":135},[84,41971,1887],{"class":90},[84,41973,41974],{"class":86,"line":159},[84,41975,19195],{"class":90},[84,41977,41978],{"class":86,"line":178},[84,41979,1941],{"class":90},[84,41981,41982],{"class":86,"line":190},[84,41983,18973],{"class":90},[84,41985,41986,41988,41990],{"class":86,"line":196},[84,41987,274],{"class":90},[84,41989,95],{"class":94},[84,41991,102],{"class":90},[84,41993,41994],{"class":86,"line":201},[84,41995,126],{"emptyLinePlaceholder":125},[84,41997,41998,42000,42002],{"class":86,"line":217},[84,41999,91],{"class":90},[84,42001,291],{"class":94},[84,42003,102],{"class":90},[84,42005,42006,42008,42010,42012,42014,42016],{"class":86,"line":227},[84,42007,299],{"class":90},[84,42009,302],{"class":94},[84,42011,305],{"class":98},[84,42013,184],{"class":90},[84,42015,19417],{"class":118},[84,42017,102],{"class":90},[84,42019,42020],{"class":86,"line":232},[84,42021,41830],{"class":90},[84,42023,42024,42026,42028],{"class":86,"line":237},[84,42025,324],{"class":90},[84,42027,302],{"class":94},[84,42029,102],{"class":90},[84,42031,42032],{"class":86,"line":253},[84,42033,126],{"emptyLinePlaceholder":125},[84,42035,42037,42039,42041,42043,42045,42047,42049,42051,42053],{"class":42036,"line":266},[86,10151],[84,42038,299],{"class":90},[84,42040,22190],{"class":94},[84,42042,41852],{"class":98},[84,42044,184],{"class":90},[84,42046,349],{"class":118},[84,42048,1629],{"class":98},[84,42050,184],{"class":90},[84,42052,7184],{"class":118},[84,42054,102],{"class":90},[84,42056,42057,42059,42061,42063,42065],{"class":86,"line":271},[84,42058,1642],{"class":90},[84,42060,1074],{"class":94},[84,42062,41873],{"class":90},[84,42064,1074],{"class":94},[84,42066,102],{"class":90},[84,42068,42069,42071,42073],{"class":86,"line":281},[84,42070,1642],{"class":90},[84,42072,4653],{"class":94},[84,42074,102],{"class":90},[84,42076,42077,42079,42081,42083,42085,42087],{"class":86,"line":286},[84,42078,1691],{"class":90},[84,42080,18759],{"class":94},[84,42082,5046],{"class":98},[84,42084,184],{"class":90},[84,42086,29874],{"class":118},[84,42088,5100],{"class":90},[84,42090,42091],{"class":86,"line":296},[84,42092,41904],{"class":90},[84,42094,42095,42097,42099],{"class":86,"line":315},[84,42096,1734],{"class":90},[84,42098,4653],{"class":94},[84,42100,102],{"class":90},[84,42102,42103,42105,42107],{"class":86,"line":321},[84,42104,324],{"class":90},[84,42106,22190],{"class":94},[84,42108,102],{"class":90},[84,42110,42111,42113,42115],{"class":86,"line":331},[84,42112,274],{"class":90},[84,42114,291],{"class":94},[84,42116,102],{"class":90},[1074,42118,42120],{"id":42119},"nota-de-ux-y-accesibilidad","Nota de UX y accesibilidad",[15,42122,42123,42124,42127],{},"Como el panel ",[958,42125,42126],{},"sigue existiendo",", sus elementos interactivos pueden:",[737,42129,42130,42133,42136],{},[740,42131,42132],{},"Conservar estado",[740,42134,42135],{},"Conservar foco (a veces deseable, a veces no)",[740,42137,42138],{},"Seguir siendo accesibles para lectores de pantalla si no se manejan roles\u002FARIA",[15,42140,42141,42142,42145,42146,764],{},"Si el contenido ",[958,42143,42144],{},"no debería existir"," en absoluto, usa ",[22,42147,8299],{},[34,42149,42151,42153,42154,42157],{"id":42150},"v-else-if-múltiples-estados-sin-anidar-if-innecesarios",[22,42152,41113],{},": múltiples estados (sin anidar ",[22,42155,42156],{},"if"," innecesarios)",[15,42159,42160,42161,754,42163,2488,42165,764],{},"Un patrón común: ",[4070,42162,4121],{},[4070,42164,4127],{},[4070,42166,42167],{},"success",[74,42169,42172],{"className":76,"code":42170,"filename":873,"highlights":42171,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from \"vue\";\n\nconst status = ref(\"idle\"); \u002F\u002F \"idle\" | \"loading\" | \"error\" | \"success\"\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"status = 'loading'\">Simulate loading\u003C\u002Fbutton>\n  \u003Cbutton @click=\"status = 'error'\">Simulate error\u003C\u002Fbutton>\n  \u003Cbutton @click=\"status = 'success'\">Simulate success\u003C\u002Fbutton>\n  \u003Cbutton @click=\"status = 'idle'\">Reset\u003C\u002Fbutton>\n\n  \u003Cp v-if=\"status === 'loading'\">Loading...\u003C\u002Fp>\n  \u003Cp v-else-if=\"status === 'error'\">Something went wrong.\u003C\u002Fp>\n  \u003Cp v-else-if=\"status === 'success'\">Done!\u003C\u002Fp>\n  \u003Cp v-else>Idle. Click a button.\u003C\u002Fp>\n\u003C\u002Ftemplate>\n",[129,232,237,253,266],[22,42173,42174,42184,42196,42200,42222,42230,42234,42242,42262,42282,42302,42322,42326,42347,42368,42389,42405],{"__ignoreMap":80},[84,42175,42176,42178,42180,42182],{"class":86,"line":87},[84,42177,91],{"class":90},[84,42179,95],{"class":94},[84,42181,99],{"class":98},[84,42183,102],{"class":90},[84,42185,42186,42188,42190,42192,42194],{"class":86,"line":105},[84,42187,109],{"class":108},[84,42189,112],{"class":90},[84,42191,115],{"class":108},[84,42193,18866],{"class":118},[84,42195,18869],{"class":90},[84,42197,42198],{"class":86,"line":122},[84,42199,126],{"emptyLinePlaceholder":125},[84,42201,42203,42205,42207,42209,42211,42213,42216,42219],{"class":42202,"line":129},[86,10151],[84,42204,132],{"class":108},[84,42206,6494],{"class":135},[84,42208,139],{"class":108},[84,42210,142],{"class":98},[84,42212,145],{"class":90},[84,42214,42215],{"class":118},"\"idle\"",[84,42217,42218],{"class":90},"); ",[84,42220,42221],{"class":13481},"\u002F\u002F \"idle\" | \"loading\" | \"error\" | \"success\"\n",[84,42223,42224,42226,42228],{"class":86,"line":154},[84,42225,274],{"class":90},[84,42227,95],{"class":94},[84,42229,102],{"class":90},[84,42231,42232],{"class":86,"line":159},[84,42233,126],{"emptyLinePlaceholder":125},[84,42235,42236,42238,42240],{"class":86,"line":178},[84,42237,91],{"class":90},[84,42239,291],{"class":94},[84,42241,102],{"class":90},[84,42243,42244,42246,42248,42250,42252,42255,42258,42260],{"class":86,"line":190},[84,42245,299],{"class":90},[84,42247,302],{"class":94},[84,42249,305],{"class":98},[84,42251,184],{"class":90},[84,42253,42254],{"class":118},"\"status = 'loading'\"",[84,42256,42257],{"class":90},">Simulate loading\u003C\u002F",[84,42259,302],{"class":94},[84,42261,102],{"class":90},[84,42263,42264,42266,42268,42270,42272,42275,42278,42280],{"class":86,"line":196},[84,42265,299],{"class":90},[84,42267,302],{"class":94},[84,42269,305],{"class":98},[84,42271,184],{"class":90},[84,42273,42274],{"class":118},"\"status = 'error'\"",[84,42276,42277],{"class":90},">Simulate error\u003C\u002F",[84,42279,302],{"class":94},[84,42281,102],{"class":90},[84,42283,42284,42286,42288,42290,42292,42295,42298,42300],{"class":86,"line":201},[84,42285,299],{"class":90},[84,42287,302],{"class":94},[84,42289,305],{"class":98},[84,42291,184],{"class":90},[84,42293,42294],{"class":118},"\"status = 'success'\"",[84,42296,42297],{"class":90},">Simulate success\u003C\u002F",[84,42299,302],{"class":94},[84,42301,102],{"class":90},[84,42303,42304,42306,42308,42310,42312,42315,42318,42320],{"class":86,"line":217},[84,42305,299],{"class":90},[84,42307,302],{"class":94},[84,42309,305],{"class":98},[84,42311,184],{"class":90},[84,42313,42314],{"class":118},"\"status = 'idle'\"",[84,42316,42317],{"class":90},">Reset\u003C\u002F",[84,42319,302],{"class":94},[84,42321,102],{"class":90},[84,42323,42324],{"class":86,"line":227},[84,42325,126],{"emptyLinePlaceholder":125},[84,42327,42329,42331,42333,42335,42337,42340,42343,42345],{"class":42328,"line":232},[86,10151],[84,42330,299],{"class":90},[84,42332,15],{"class":94},[84,42334,344],{"class":98},[84,42336,184],{"class":90},[84,42338,42339],{"class":118},"\"status === 'loading'\"",[84,42341,42342],{"class":90},">Loading...\u003C\u002F",[84,42344,15],{"class":94},[84,42346,102],{"class":90},[84,42348,42350,42352,42354,42356,42358,42361,42364,42366],{"class":42349,"line":237},[86,10151],[84,42351,299],{"class":90},[84,42353,15],{"class":94},[84,42355,1673],{"class":98},[84,42357,184],{"class":90},[84,42359,42360],{"class":118},"\"status === 'error'\"",[84,42362,42363],{"class":90},">Something went wrong.\u003C\u002F",[84,42365,15],{"class":94},[84,42367,102],{"class":90},[84,42369,42371,42373,42375,42377,42379,42382,42385,42387],{"class":42370,"line":253},[86,10151],[84,42372,299],{"class":90},[84,42374,15],{"class":94},[84,42376,1673],{"class":98},[84,42378,184],{"class":90},[84,42380,42381],{"class":118},"\"status === 'success'\"",[84,42383,42384],{"class":90},">Done!\u003C\u002F",[84,42386,15],{"class":94},[84,42388,102],{"class":90},[84,42390,42392,42394,42396,42398,42401,42403],{"class":42391,"line":266},[86,10151],[84,42393,299],{"class":90},[84,42395,15],{"class":94},[84,42397,1753],{"class":98},[84,42399,42400],{"class":90},">Idle. Click a button.\u003C\u002F",[84,42402,15],{"class":94},[84,42404,102],{"class":90},[84,42406,42407,42409,42411],{"class":86,"line":271},[84,42408,274],{"class":90},[84,42410,291],{"class":94},[84,42412,102],{"class":90},[74,42414,42417],{"className":76,"code":42415,"filename":1782,"highlights":42416,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      status: \"idle\", \u002F\u002F \"idle\" | \"loading\" | \"error\" | \"success\"\n    };\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"status = 'loading'\">Simulate loading\u003C\u002Fbutton>\n  \u003Cbutton @click=\"status = 'error'\">Simulate error\u003C\u002Fbutton>\n  \u003Cbutton @click=\"status = 'success'\">Simulate success\u003C\u002Fbutton>\n  \u003Cbutton @click=\"status = 'idle'\">Reset\u003C\u002Fbutton>\n\n  \u003Cp v-if=\"status === 'loading'\">Loading...\u003C\u002Fp>\n  \u003Cp v-else-if=\"status === 'error'\">Something went wrong.\u003C\u002Fp>\n  \u003Cp v-else-if=\"status === 'success'\">Done!\u003C\u002Fp>\n  \u003Cp v-else>Idle. Click a button.\u003C\u002Fp>\n\u003C\u002Ftemplate>\n",[154,271,281,286,296],[22,42418,42419,42427,42435,42441,42447,42458,42462,42466,42470,42478,42482,42490,42508,42526,42544,42562,42566,42585,42604,42623,42638],{"__ignoreMap":80},[84,42420,42421,42423,42425],{"class":86,"line":87},[84,42422,91],{"class":90},[84,42424,95],{"class":94},[84,42426,102],{"class":90},[84,42428,42429,42431,42433],{"class":86,"line":105},[84,42430,418],{"class":108},[84,42432,1870],{"class":108},[84,42434,175],{"class":90},[84,42436,42437,42439],{"class":86,"line":122},[84,42438,1896],{"class":98},[84,42440,1307],{"class":90},[84,42442,42443,42445],{"class":86,"line":129},[84,42444,1903],{"class":108},[84,42446,175],{"class":90},[84,42448,42450,42452,42454,42456],{"class":42449,"line":154},[86,10151],[84,42451,7387],{"class":90},[84,42453,42215],{"class":118},[84,42455,754],{"class":90},[84,42457,42221],{"class":13481},[84,42459,42460],{"class":86,"line":159},[84,42461,19195],{"class":90},[84,42463,42464],{"class":86,"line":178},[84,42465,1941],{"class":90},[84,42467,42468],{"class":86,"line":190},[84,42469,18973],{"class":90},[84,42471,42472,42474,42476],{"class":86,"line":196},[84,42473,274],{"class":90},[84,42475,95],{"class":94},[84,42477,102],{"class":90},[84,42479,42480],{"class":86,"line":201},[84,42481,126],{"emptyLinePlaceholder":125},[84,42483,42484,42486,42488],{"class":86,"line":217},[84,42485,91],{"class":90},[84,42487,291],{"class":94},[84,42489,102],{"class":90},[84,42491,42492,42494,42496,42498,42500,42502,42504,42506],{"class":86,"line":227},[84,42493,299],{"class":90},[84,42495,302],{"class":94},[84,42497,305],{"class":98},[84,42499,184],{"class":90},[84,42501,42254],{"class":118},[84,42503,42257],{"class":90},[84,42505,302],{"class":94},[84,42507,102],{"class":90},[84,42509,42510,42512,42514,42516,42518,42520,42522,42524],{"class":86,"line":232},[84,42511,299],{"class":90},[84,42513,302],{"class":94},[84,42515,305],{"class":98},[84,42517,184],{"class":90},[84,42519,42274],{"class":118},[84,42521,42277],{"class":90},[84,42523,302],{"class":94},[84,42525,102],{"class":90},[84,42527,42528,42530,42532,42534,42536,42538,42540,42542],{"class":86,"line":237},[84,42529,299],{"class":90},[84,42531,302],{"class":94},[84,42533,305],{"class":98},[84,42535,184],{"class":90},[84,42537,42294],{"class":118},[84,42539,42297],{"class":90},[84,42541,302],{"class":94},[84,42543,102],{"class":90},[84,42545,42546,42548,42550,42552,42554,42556,42558,42560],{"class":86,"line":253},[84,42547,299],{"class":90},[84,42549,302],{"class":94},[84,42551,305],{"class":98},[84,42553,184],{"class":90},[84,42555,42314],{"class":118},[84,42557,42317],{"class":90},[84,42559,302],{"class":94},[84,42561,102],{"class":90},[84,42563,42564],{"class":86,"line":266},[84,42565,126],{"emptyLinePlaceholder":125},[84,42567,42569,42571,42573,42575,42577,42579,42581,42583],{"class":42568,"line":271},[86,10151],[84,42570,299],{"class":90},[84,42572,15],{"class":94},[84,42574,344],{"class":98},[84,42576,184],{"class":90},[84,42578,42339],{"class":118},[84,42580,42342],{"class":90},[84,42582,15],{"class":94},[84,42584,102],{"class":90},[84,42586,42588,42590,42592,42594,42596,42598,42600,42602],{"class":42587,"line":281},[86,10151],[84,42589,299],{"class":90},[84,42591,15],{"class":94},[84,42593,1673],{"class":98},[84,42595,184],{"class":90},[84,42597,42360],{"class":118},[84,42599,42363],{"class":90},[84,42601,15],{"class":94},[84,42603,102],{"class":90},[84,42605,42607,42609,42611,42613,42615,42617,42619,42621],{"class":42606,"line":286},[86,10151],[84,42608,299],{"class":90},[84,42610,15],{"class":94},[84,42612,1673],{"class":98},[84,42614,184],{"class":90},[84,42616,42381],{"class":118},[84,42618,42384],{"class":90},[84,42620,15],{"class":94},[84,42622,102],{"class":90},[84,42624,42626,42628,42630,42632,42634,42636],{"class":42625,"line":296},[86,10151],[84,42627,299],{"class":90},[84,42629,15],{"class":94},[84,42631,1753],{"class":98},[84,42633,42400],{"class":90},[84,42635,15],{"class":94},[84,42637,102],{"class":90},[84,42639,42640,42642,42644],{"class":86,"line":315},[84,42641,274],{"class":90},[84,42643,291],{"class":94},[84,42645,102],{"class":90},[34,42647,784],{"id":783},[1074,42649,42651,42652,42654,42655],{"id":42650},"_1-v-else-separado-del-v-if","1) ",[22,42653,41000],{}," separado del ",[22,42656,8299],{},[15,42658,25589],{},[74,42660,42663],{"className":76,"code":42661,"filename":10092,"highlights":42662,"language":79,"meta":80,"style":80},"\u003Cdiv v-if=\"ok\">Ok\u003C\u002Fdiv>\n\u003C!-- comentario o nodo -->\n\u003Cdiv v-else>No ok\u003C\u002Fdiv>\n",[105],[22,42664,42665,42689,42695],{"__ignoreMap":80},[84,42666,42667,42669,42671,42673,42675,42677,42680,42682,42685,42687],{"class":86,"line":87},[84,42668,91],{"class":90},[84,42670,4978],{"class":94},[84,42672,344],{"class":108},[84,42674,184],{"class":90},[84,42676,1678],{"class":118},[84,42678,42679],{"class":90},"ok",[84,42681,1678],{"class":118},[84,42683,42684],{"class":90},">Ok\u003C\u002F",[84,42686,4978],{"class":94},[84,42688,102],{"class":90},[84,42690,42692],{"class":42691,"line":105},[86,10151],[84,42693,42694],{"class":13481},"\u003C!-- comentario o nodo -->\n",[84,42696,42697,42699,42701,42703,42706,42708],{"class":86,"line":122},[84,42698,91],{"class":90},[84,42700,4978],{"class":94},[84,42702,1753],{"class":108},[84,42704,42705],{"class":90},">No ok\u003C\u002F",[84,42707,4978],{"class":94},[84,42709,102],{"class":90},[823,42711,42712],{},[15,42713,18597,42714,41716,42716,42719,42720,764],{},[22,42715,41000],{},[958,42717,42718],{},"inmediatamente"," después del ",[22,42721,8299],{},[1074,42723,13343,42725,42727],{"id":42724},"_2-usar-v-show-para-contenido-que-no-debería-existir",[22,42726,8462],{}," para contenido que no debería existir",[15,42729,42730,42731,42733,42734,754,42737,42740,42741,764],{},"Si ocultas con ",[22,42732,8462],{}," algo como un ",[4070,42735,42736],{},"admin panel",[958,42738,42739],{},"sigue en el DOM",".\nNo es seguridad; es solo presentación. La seguridad va en el backend, pero en la UI al menos usa ",[22,42742,8299],{},[1074,42744,42746,42747,42749],{"id":42745},"_3-pensar-que-v-if-es-gratis","3) Pensar que ",[22,42748,8299],{}," es “gratis”",[15,42751,42752,42753,42755,42756,42759,42760,42762],{},"Alternar ",[22,42754,8299],{}," muchas veces implica ",[958,42757,42758],{},"montajes y desmontajes repetidos",".\nSi el usuario va a abrir y cerrar algo constantemente, ",[22,42761,8462],{}," suele ser mejor opción.",[34,42764,18395],{"id":18394},[737,42766,42767,42778,42786],{},[740,42768,42769,42773,42774,42777],{},[958,42770,42771],{},[22,42772,8299],{},": controla la ",[958,42775,42776],{},"existencia real"," del elemento.",[740,42779,42780,42785],{},[958,42781,42782],{},[22,42783,42784],{},"v-else \u002F v-else-if",": ramas alternativas del mismo bloque condicional.",[740,42787,42788,42792],{},[958,42789,42790],{},[22,42791,8462],{},": ocultar\u002Fmostrar rápido con CSS, sin destruir el DOM.",[823,42794,42795],{},[15,42796,42797,42798],{},"Una UI se vuelve más clara cuando decides conscientemente:\n",[958,42799,42800],{},"¿Quiero que esto exista o solo que se vea?",[835,42802,42803],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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 .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}",{"title":80,"searchDepth":105,"depth":105,"links":42805},[42806,42812,42813,42815,42819,42821,42829],{"id":41057,"depth":105,"text":41058,"children":42807},[42808,42809,42811],{"id":8299,"depth":122,"text":8299},{"id":41108,"depth":122,"text":42810},"v-else y v-else-if",{"id":8462,"depth":122,"text":8462},{"id":41180,"depth":105,"text":41181},{"id":41219,"depth":105,"text":42814},"Ejemplo 1: Login (v-if + v-else)",{"id":41731,"depth":105,"text":42816,"children":42817},"Ejemplo 2: Tabs o panel que se abre y cierra (v-show)",[42818],{"id":42119,"depth":122,"text":42120},{"id":42150,"depth":105,"text":42820},"v-else-if: múltiples estados (sin anidar if innecesarios)",{"id":783,"depth":105,"text":784,"children":42822},[42823,42825,42827],{"id":42650,"depth":122,"text":42824},"1) v-else separado del v-if",{"id":42724,"depth":122,"text":42826},"2) Usar v-show para contenido que no debería existir",{"id":42745,"depth":122,"text":42828},"3) Pensar que v-if es “gratis”",{"id":18394,"depth":105,"text":18395},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1771265982\u002Fdirectives-vue-v-if-v-else-v-show-guide_qmtjik.png","Ilustración conceptual del renderizado condicional en Vue.js","2026-02-05","Aprende a usar v-if, v-else y v-show en Vue con ejemplos claros, buenas prácticas y notas clave para elegir correctamente entre renderizado condicional y visibilidad.",{"updatedAt":42835,"coverCaption":42836,"author":868,"keywords":42837},"2026-02-05T12:30:00-05:00","Renderizado condicional en Vue.js ilustrado por TODOvue",[870,8299,41000,8462,42838,42839,873,1782],"conditional rendering","directives","\u002Fblog\u002Fdirectives-vue-v-if-v-else-v-show-guide.es",[42842],{"headline":42843,"author":42844,"datePublished":42835,"@type":880},"v-if, v-else y v-show en Vue: cuándo usar cada uno",{"name":868,"@type":879},{"title":40990,"description":42833},"blog\u002Fdirectives-vue-v-if-v-else-v-show-guide.es",[42848,42849,42852,42853],{"tag":21297,"color":21298},{"tag":42850,"color":42851},"Renderizado Condicional","#E056FD",{"tag":22594,"color":22595},{"tag":894,"color":895},"b5lwqC2_R5GDZNjdpBMFknx2dcvVk_FQOPGFJOy4LmQ",{"id":42856,"title":42857,"body":42858,"cover":46223,"coverAlt":42857,"date":46224,"description":46225,"draft":852,"extension":853,"lab":882,"locale":864,"meta":46226,"navigation":125,"path":46230,"schemaOrg":46231,"seo":46235,"series":21291,"seriesDescription":21292,"seriesOrder":87,"seriesTitle":21293,"slug":882,"stem":46236,"tags":46237,"__hash__":46244},"blog\u002Fblog\u002Fvue-directives-overview.es.md","Directivas en Vue: Una Visión General",{"type":8,"value":42859,"toc":46204},[42860,42864,42879,42890,42892,42895,42947,42956,42965,42968,42979,43091,43206,43210,43219,43221,43229,43326,43426,43430,43433,43436,43447,43582,43723,43731,43735,43738,43743,43748,43849,43965,43969,43976,43979,43989,44100,44214,44222,44226,44229,44350,44491,44504,44508,44511,44606,44706,44709,44713,44716,44812,44913,44922,44926,44929,45075,45232,45238,45242,45249,45358,45471,45474,45478,45481,45611,45730,45737,45741,45744,45812,45886,45889,45893,45896,45964,46037,46040,46043,46046,46137,46171,46174,46176,46182,46185,46195,46202],[11,42861,42863],{"id":42862},"directivas-en-vue-3-guía-completa-para-entenderlas-bien","Directivas en Vue 3: guía completa para entenderlas bien",[15,42865,42866,42867,42870,42871,42874,42875,42878],{},"Las directivas en Vue son ",[958,42868,42869],{},"atributos especiales"," que permiten aplicar lógica reactiva directamente sobre el DOM.\nTodas comienzan con ",[22,42872,42873],{},"v-"," y existen para ",[958,42876,42877],{},"reducir código imperativo"," y hacer que el template sea más expresivo y declarativo.",[15,42880,42881,42882,42885,42886,42889],{},"Esta entrada es un ",[958,42883,42884],{},"mapa general",": no profundiza al extremo, pero te deja claro ",[958,42887,42888],{},"qué hace cada directiva, cuándo usarla y qué problema resuelve",".\nCada una tendrá luego su artículo dedicado.",[34,42891,13902],{"id":13901},[15,42893,42894],{},"Si quieres profundizar en cada directiva, aquí tienes la ruta completa de esta serie:",[737,42896,42897,42902,42907,42912,42917,42922,42927,42932,42937,42942],{},[740,42898,42899],{},[13911,42900,40990],{"href":42901},"\u002Fblog\u002Fdirectives-vue-v-if-v-else-v-show-guide.es\u002F",[740,42903,42904],{},[13911,42905,37640],{"href":42906},"\u002Fblog\u002Fdirectives-vue-v-for-guide.es\u002F",[740,42908,42909],{},[13911,42910,34659],{"href":42911},"\u002Fblog\u002Fdirectives-vue-v-bind-guide.es\u002F",[740,42913,42914],{},[13911,42915,28806],{"href":42916},"\u002Fblog\u002Fdirectives-vue-v-model-guide.es\u002F",[740,42918,42919],{},[13911,42920,31634],{"href":42921},"\u002Fblog\u002Fdirectives-vue-v-on-guide.es\u002F",[740,42923,42924],{},[13911,42925,25276],{"href":42926},"\u002Fblog\u002Fdirectives-vue-v-text-v-html-guide.es\u002F",[740,42928,42929],{},[13911,42930,26552],{"href":42931},"\u002Fblog\u002Fdirectives-vue-v-slot-guide.es\u002F",[740,42933,42934],{},[13911,42935,22601],{"href":42936},"\u002Fblog\u002Fdirectives-vue-v-once-v-memo-v-pre-guide.es\u002F",[740,42938,42939],{},[13911,42940,21308],{"href":42941},"\u002Fblog\u002Fdirectives-vue-v-cloak-guide.es\u002F",[740,42943,42944],{},[13911,42945,18498],{"href":42946},"\u002Fblog\u002Fdirectives-vue-custom-directives-guide.es\u002F",[34,42948,42950,754,42952,754,42954],{"id":42949},"v-if-v-else-if-v-else",[22,42951,8299],{},[22,42953,41113],{},[22,42955,41000],{},[15,42957,42958,42959,42962,42963,764],{},"Sirven para ",[958,42960,42961],{},"renderizar o eliminar elementos del DOM"," según una condición reactiva.\nSi la condición es falsa, el elemento ",[958,42964,41078],{},[15,42966,42967],{},"Úsala cuando:",[737,42969,42970,42973,42976],{},[740,42971,42972],{},"El contenido es pesado",[740,42974,42975],{},"No siempre debe existir",[740,42977,42978],{},"Depende de permisos o estados críticos",[74,42980,42983],{"className":76,"code":42981,"filename":873,"highlights":42982,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst isLogged = ref(true)\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cp v-if=\"isLogged\">Bienvenido\u003C\u002Fp>\n  \u003Cp v-else>No has iniciado sesión\u003C\u002Fp>\n\u003C\u002Ftemplate>\n",[190,196],[22,42984,42985,42995,43005,43009,43026,43034,43038,43046,43067,43083],{"__ignoreMap":80},[84,42986,42987,42989,42991,42993],{"class":86,"line":87},[84,42988,91],{"class":90},[84,42990,95],{"class":94},[84,42992,99],{"class":98},[84,42994,102],{"class":90},[84,42996,42997,42999,43001,43003],{"class":86,"line":105},[84,42998,109],{"class":108},[84,43000,112],{"class":90},[84,43002,115],{"class":108},[84,43004,119],{"class":118},[84,43006,43007],{"class":86,"line":122},[84,43008,126],{"emptyLinePlaceholder":125},[84,43010,43011,43013,43016,43018,43020,43022,43024],{"class":86,"line":129},[84,43012,132],{"class":108},[84,43014,43015],{"class":135}," isLogged",[84,43017,139],{"class":108},[84,43019,142],{"class":98},[84,43021,145],{"class":90},[84,43023,2938],{"class":135},[84,43025,151],{"class":90},[84,43027,43028,43030,43032],{"class":86,"line":154},[84,43029,274],{"class":90},[84,43031,95],{"class":94},[84,43033,102],{"class":90},[84,43035,43036],{"class":86,"line":159},[84,43037,126],{"emptyLinePlaceholder":125},[84,43039,43040,43042,43044],{"class":86,"line":178},[84,43041,91],{"class":90},[84,43043,291],{"class":94},[84,43045,102],{"class":90},[84,43047,43049,43051,43053,43055,43057,43060,43063,43065],{"class":43048,"line":190},[86,10151],[84,43050,299],{"class":90},[84,43052,15],{"class":94},[84,43054,344],{"class":98},[84,43056,184],{"class":90},[84,43058,43059],{"class":118},"\"isLogged\"",[84,43061,43062],{"class":90},">Bienvenido\u003C\u002F",[84,43064,15],{"class":94},[84,43066,102],{"class":90},[84,43068,43070,43072,43074,43076,43079,43081],{"class":43069,"line":196},[86,10151],[84,43071,299],{"class":90},[84,43073,15],{"class":94},[84,43075,1753],{"class":98},[84,43077,43078],{"class":90},">No has iniciado sesión\u003C\u002F",[84,43080,15],{"class":94},[84,43082,102],{"class":90},[84,43084,43085,43087,43089],{"class":86,"line":201},[84,43086,274],{"class":90},[84,43088,291],{"class":94},[84,43090,102],{"class":90},[74,43092,43095],{"className":76,"code":43093,"filename":1782,"highlights":43094,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      isLogged: true\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cp v-if=\"isLogged\">Bienvenido\u003C\u002Fp>\n  \u003Cp v-else>No has iniciado sesión\u003C\u002Fp>\n\u003C\u002Ftemplate>\n",[227,232],[22,43096,43097,43105,43113,43119,43125,43132,43136,43140,43144,43152,43156,43164,43183,43198],{"__ignoreMap":80},[84,43098,43099,43101,43103],{"class":86,"line":87},[84,43100,91],{"class":90},[84,43102,95],{"class":94},[84,43104,102],{"class":90},[84,43106,43107,43109,43111],{"class":86,"line":105},[84,43108,418],{"class":108},[84,43110,1870],{"class":108},[84,43112,175],{"class":90},[84,43114,43115,43117],{"class":86,"line":122},[84,43116,1896],{"class":98},[84,43118,1307],{"class":90},[84,43120,43121,43123],{"class":86,"line":129},[84,43122,1903],{"class":108},[84,43124,175],{"class":90},[84,43126,43127,43130],{"class":86,"line":154},[84,43128,43129],{"class":90},"      isLogged: ",[84,43131,2872],{"class":135},[84,43133,43134],{"class":86,"line":159},[84,43135,1936],{"class":90},[84,43137,43138],{"class":86,"line":178},[84,43139,485],{"class":90},[84,43141,43142],{"class":86,"line":190},[84,43143,193],{"class":90},[84,43145,43146,43148,43150],{"class":86,"line":196},[84,43147,274],{"class":90},[84,43149,95],{"class":94},[84,43151,102],{"class":90},[84,43153,43154],{"class":86,"line":201},[84,43155,126],{"emptyLinePlaceholder":125},[84,43157,43158,43160,43162],{"class":86,"line":217},[84,43159,91],{"class":90},[84,43161,291],{"class":94},[84,43163,102],{"class":90},[84,43165,43167,43169,43171,43173,43175,43177,43179,43181],{"class":43166,"line":227},[86,10151],[84,43168,299],{"class":90},[84,43170,15],{"class":94},[84,43172,344],{"class":98},[84,43174,184],{"class":90},[84,43176,43059],{"class":118},[84,43178,43062],{"class":90},[84,43180,15],{"class":94},[84,43182,102],{"class":90},[84,43184,43186,43188,43190,43192,43194,43196],{"class":43185,"line":232},[86,10151],[84,43187,299],{"class":90},[84,43189,15],{"class":94},[84,43191,1753],{"class":98},[84,43193,43078],{"class":90},[84,43195,15],{"class":94},[84,43197,102],{"class":90},[84,43199,43200,43202,43204],{"class":86,"line":237},[84,43201,274],{"class":90},[84,43203,291],{"class":94},[84,43205,102],{"class":90},[34,43207,43208],{"id":8462},[22,43209,8462],{},[15,43211,43212,43213,43215,43216,764],{},"Controla la visibilidad usando CSS (",[22,43214,41044],{},"), pero ",[958,43217,43218],{},"el elemento siempre existe en el DOM",[15,43220,42967],{},[737,43222,43223,43226],{},[740,43224,43225],{},"El elemento se muestra y oculta con frecuencia",[740,43227,43228],{},"No quieres pagar el costo de montar y desmontar el nodo",[74,43230,43233],{"className":76,"code":43231,"filename":873,"highlights":43232,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n  \nconst isVisible = ref(true)\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cp v-show=\"isVisible\">Contenido visible\u003C\u002Fp>\n\u003C\u002Ftemplate>\n",[190],[22,43234,43235,43245,43255,43260,43277,43285,43289,43297,43318],{"__ignoreMap":80},[84,43236,43237,43239,43241,43243],{"class":86,"line":87},[84,43238,91],{"class":90},[84,43240,95],{"class":94},[84,43242,99],{"class":98},[84,43244,102],{"class":90},[84,43246,43247,43249,43251,43253],{"class":86,"line":105},[84,43248,109],{"class":108},[84,43250,112],{"class":90},[84,43252,115],{"class":108},[84,43254,119],{"class":118},[84,43256,43257],{"class":86,"line":122},[84,43258,43259],{"class":90},"  \n",[84,43261,43262,43264,43267,43269,43271,43273,43275],{"class":86,"line":129},[84,43263,132],{"class":108},[84,43265,43266],{"class":135}," isVisible",[84,43268,139],{"class":108},[84,43270,142],{"class":98},[84,43272,145],{"class":90},[84,43274,2938],{"class":135},[84,43276,151],{"class":90},[84,43278,43279,43281,43283],{"class":86,"line":154},[84,43280,274],{"class":90},[84,43282,95],{"class":94},[84,43284,102],{"class":90},[84,43286,43287],{"class":86,"line":159},[84,43288,126],{"emptyLinePlaceholder":125},[84,43290,43291,43293,43295],{"class":86,"line":178},[84,43292,91],{"class":90},[84,43294,291],{"class":94},[84,43296,102],{"class":90},[84,43298,43300,43302,43304,43306,43308,43311,43314,43316],{"class":43299,"line":190},[86,10151],[84,43301,299],{"class":90},[84,43303,15],{"class":94},[84,43305,41852],{"class":98},[84,43307,184],{"class":90},[84,43309,43310],{"class":118},"\"isVisible\"",[84,43312,43313],{"class":90},">Contenido visible\u003C\u002F",[84,43315,15],{"class":94},[84,43317,102],{"class":90},[84,43319,43320,43322,43324],{"class":86,"line":196},[84,43321,274],{"class":90},[84,43323,291],{"class":94},[84,43325,102],{"class":90},[74,43327,43330],{"className":76,"code":43328,"filename":1782,"highlights":43329,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      isVisible: true\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cp v-show=\"isVisible\">Contenido visible\u003C\u002Fp>\n\u003C\u002Ftemplate>\n",[227],[22,43331,43332,43340,43348,43354,43360,43367,43371,43375,43379,43387,43391,43399,43418],{"__ignoreMap":80},[84,43333,43334,43336,43338],{"class":86,"line":87},[84,43335,91],{"class":90},[84,43337,95],{"class":94},[84,43339,102],{"class":90},[84,43341,43342,43344,43346],{"class":86,"line":105},[84,43343,418],{"class":108},[84,43345,1870],{"class":108},[84,43347,175],{"class":90},[84,43349,43350,43352],{"class":86,"line":122},[84,43351,1896],{"class":98},[84,43353,1307],{"class":90},[84,43355,43356,43358],{"class":86,"line":129},[84,43357,1903],{"class":108},[84,43359,175],{"class":90},[84,43361,43362,43365],{"class":86,"line":154},[84,43363,43364],{"class":90},"      isVisible: ",[84,43366,2872],{"class":135},[84,43368,43369],{"class":86,"line":159},[84,43370,1936],{"class":90},[84,43372,43373],{"class":86,"line":178},[84,43374,485],{"class":90},[84,43376,43377],{"class":86,"line":190},[84,43378,193],{"class":90},[84,43380,43381,43383,43385],{"class":86,"line":196},[84,43382,274],{"class":90},[84,43384,95],{"class":94},[84,43386,102],{"class":90},[84,43388,43389],{"class":86,"line":201},[84,43390,126],{"emptyLinePlaceholder":125},[84,43392,43393,43395,43397],{"class":86,"line":217},[84,43394,91],{"class":90},[84,43396,291],{"class":94},[84,43398,102],{"class":90},[84,43400,43402,43404,43406,43408,43410,43412,43414,43416],{"class":43401,"line":227},[86,10151],[84,43403,299],{"class":90},[84,43405,15],{"class":94},[84,43407,41852],{"class":98},[84,43409,184],{"class":90},[84,43411,43310],{"class":118},[84,43413,43313],{"class":90},[84,43415,15],{"class":94},[84,43417,102],{"class":90},[84,43419,43420,43422,43424],{"class":86,"line":232},[84,43421,274],{"class":90},[84,43423,291],{"class":94},[84,43425,102],{"class":90},[34,43427,43428],{"id":25577},[22,43429,25577],{},[15,43431,43432],{},"Permite renderizar listas a partir de arreglos u objetos reactivos.",[15,43434,43435],{},"Clave mental:",[823,43437,43438],{},[15,43439,43440,43442,43443,43446],{},[22,43441,25577],{}," describe ",[958,43444,43445],{},"estructura",", no lógica.",[74,43448,43451],{"className":76,"code":43449,"filename":873,"highlights":43450,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n  \nconst items = ref([\n  { id: 1, name: 'Vue' },\n  { id: 2, name: 'React' }\n])\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cli v-for=\"item in items\" :key=\"item.id\">\n    {{ item.name }}\n  \u003C\u002Fli>\n\u003C\u002Ftemplate>\n",[217,227,232],[22,43452,43453,43463,43473,43477,43489,43501,43513,43517,43525,43529,43537,43559,43565,43574],{"__ignoreMap":80},[84,43454,43455,43457,43459,43461],{"class":86,"line":87},[84,43456,91],{"class":90},[84,43458,95],{"class":94},[84,43460,99],{"class":98},[84,43462,102],{"class":90},[84,43464,43465,43467,43469,43471],{"class":86,"line":105},[84,43466,109],{"class":108},[84,43468,112],{"class":90},[84,43470,115],{"class":108},[84,43472,119],{"class":118},[84,43474,43475],{"class":86,"line":122},[84,43476,43259],{"class":90},[84,43478,43479,43481,43483,43485,43487],{"class":86,"line":129},[84,43480,132],{"class":108},[84,43482,39020],{"class":135},[84,43484,139],{"class":108},[84,43486,142],{"class":98},[84,43488,2894],{"class":90},[84,43490,43491,43493,43495,43497,43499],{"class":86,"line":154},[84,43492,2899],{"class":90},[84,43494,2862],{"class":135},[84,43496,23323],{"class":90},[84,43498,37815],{"class":118},[84,43500,2921],{"class":90},[84,43502,43503,43505,43507,43509,43511],{"class":86,"line":159},[84,43504,2899],{"class":90},[84,43506,2928],{"class":135},[84,43508,23323],{"class":90},[84,43510,37820],{"class":118},[84,43512,2968],{"class":90},[84,43514,43515],{"class":86,"line":178},[84,43516,2973],{"class":90},[84,43518,43519,43521,43523],{"class":86,"line":190},[84,43520,274],{"class":90},[84,43522,95],{"class":94},[84,43524,102],{"class":90},[84,43526,43527],{"class":86,"line":196},[84,43528,126],{"emptyLinePlaceholder":125},[84,43530,43531,43533,43535],{"class":86,"line":201},[84,43532,91],{"class":90},[84,43534,291],{"class":94},[84,43536,102],{"class":90},[84,43538,43540,43542,43544,43546,43548,43551,43553,43555,43557],{"class":43539,"line":217},[86,10151],[84,43541,299],{"class":90},[84,43543,740],{"class":94},[84,43545,13525],{"class":98},[84,43547,184],{"class":90},[84,43549,43550],{"class":118},"\"item in items\"",[84,43552,5092],{"class":98},[84,43554,184],{"class":90},[84,43556,30719],{"class":118},[84,43558,102],{"class":90},[84,43560,43562],{"class":43561,"line":227},[86,10151],[84,43563,43564],{"class":90},"    {{ item.name }}\n",[84,43566,43568,43570,43572],{"class":43567,"line":232},[86,10151],[84,43569,324],{"class":90},[84,43571,740],{"class":94},[84,43573,102],{"class":90},[84,43575,43576,43578,43580],{"class":86,"line":237},[84,43577,274],{"class":90},[84,43579,291],{"class":94},[84,43581,102],{"class":90},[74,43583,43586],{"className":76,"code":43584,"filename":1782,"highlights":43585,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      items: [\n        { id: 1, name: 'Vue' },\n        { id: 2, name: 'React' }\n      ]\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cli v-for=\"item in items\" :key=\"item.id\">\n    {{ item.name }}\n  \u003C\u002Fli>\n\u003C\u002Ftemplate>\n",[253,266,271],[22,43587,43588,43596,43604,43610,43616,43620,43632,43644,43648,43652,43656,43660,43668,43672,43680,43701,43706,43715],{"__ignoreMap":80},[84,43589,43590,43592,43594],{"class":86,"line":87},[84,43591,91],{"class":90},[84,43593,95],{"class":94},[84,43595,102],{"class":90},[84,43597,43598,43600,43602],{"class":86,"line":105},[84,43599,418],{"class":108},[84,43601,1870],{"class":108},[84,43603,175],{"class":90},[84,43605,43606,43608],{"class":86,"line":122},[84,43607,1896],{"class":98},[84,43609,1307],{"class":90},[84,43611,43612,43614],{"class":86,"line":129},[84,43613,1903],{"class":108},[84,43615,175],{"class":90},[84,43617,43618],{"class":86,"line":154},[84,43619,39215],{"class":90},[84,43621,43622,43624,43626,43628,43630],{"class":86,"line":159},[84,43623,3449],{"class":90},[84,43625,2862],{"class":135},[84,43627,23323],{"class":90},[84,43629,37815],{"class":118},[84,43631,2921],{"class":90},[84,43633,43634,43636,43638,43640,43642],{"class":86,"line":178},[84,43635,3449],{"class":90},[84,43637,2928],{"class":135},[84,43639,23323],{"class":90},[84,43641,37820],{"class":118},[84,43643,2968],{"class":90},[84,43645,43646],{"class":86,"line":190},[84,43647,3510],{"class":90},[84,43649,43650],{"class":86,"line":196},[84,43651,1936],{"class":90},[84,43653,43654],{"class":86,"line":201},[84,43655,485],{"class":90},[84,43657,43658],{"class":86,"line":217},[84,43659,193],{"class":90},[84,43661,43662,43664,43666],{"class":86,"line":227},[84,43663,274],{"class":90},[84,43665,95],{"class":94},[84,43667,102],{"class":90},[84,43669,43670],{"class":86,"line":232},[84,43671,126],{"emptyLinePlaceholder":125},[84,43673,43674,43676,43678],{"class":86,"line":237},[84,43675,91],{"class":90},[84,43677,291],{"class":94},[84,43679,102],{"class":90},[84,43681,43683,43685,43687,43689,43691,43693,43695,43697,43699],{"class":43682,"line":253},[86,10151],[84,43684,299],{"class":90},[84,43686,740],{"class":94},[84,43688,13525],{"class":98},[84,43690,184],{"class":90},[84,43692,43550],{"class":118},[84,43694,5092],{"class":98},[84,43696,184],{"class":90},[84,43698,30719],{"class":118},[84,43700,102],{"class":90},[84,43702,43704],{"class":43703,"line":266},[86,10151],[84,43705,43564],{"class":90},[84,43707,43709,43711,43713],{"class":43708,"line":271},[86,10151],[84,43710,324],{"class":90},[84,43712,740],{"class":94},[84,43714,102],{"class":90},[84,43716,43717,43719,43721],{"class":86,"line":281},[84,43718,274],{"class":90},[84,43720,291],{"class":94},[84,43722,102],{"class":90},[15,43724,43725,11716,43727,43730],{},[22,43726,2580],{},[958,43728,43729],{},"no es opcional",". Nunca lo fue.\nEs esencial para que Vue pueda optimizar correctamente el renderizado.",[34,43732,43733],{"id":18692},[22,43734,18692],{},[15,43736,43737],{},"Vincula dinámicamente atributos HTML o props de componentes.",[15,43739,8591,43740,43742],{},[22,43741,18692],{}," como:",[823,43744,43745],{},[15,43746,43747],{},"“Este atributo depende del estado”",[74,43749,43752],{"className":76,"code":43750,"filename":873,"highlights":43751,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst imageUrl = ref('https:\u002F\u002Fexample.com\u002Fimage.jpg')\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cimg v-bind:src=\"imageUrl\" alt=\"Imagen dinámica\" \u002F>\n\u003C\u002Ftemplate>\n",[190],[22,43753,43754,43764,43774,43778,43796,43804,43808,43816,43841],{"__ignoreMap":80},[84,43755,43756,43758,43760,43762],{"class":86,"line":87},[84,43757,91],{"class":90},[84,43759,95],{"class":94},[84,43761,99],{"class":98},[84,43763,102],{"class":90},[84,43765,43766,43768,43770,43772],{"class":86,"line":105},[84,43767,109],{"class":108},[84,43769,112],{"class":90},[84,43771,115],{"class":108},[84,43773,119],{"class":118},[84,43775,43776],{"class":86,"line":122},[84,43777,126],{"emptyLinePlaceholder":125},[84,43779,43780,43782,43785,43787,43789,43791,43794],{"class":86,"line":129},[84,43781,132],{"class":108},[84,43783,43784],{"class":135}," imageUrl",[84,43786,139],{"class":108},[84,43788,142],{"class":98},[84,43790,145],{"class":90},[84,43792,43793],{"class":118},"'https:\u002F\u002Fexample.com\u002Fimage.jpg'",[84,43795,151],{"class":90},[84,43797,43798,43800,43802],{"class":86,"line":154},[84,43799,274],{"class":90},[84,43801,95],{"class":94},[84,43803,102],{"class":90},[84,43805,43806],{"class":86,"line":159},[84,43807,126],{"emptyLinePlaceholder":125},[84,43809,43810,43812,43814],{"class":86,"line":178},[84,43811,91],{"class":90},[84,43813,291],{"class":94},[84,43815,102],{"class":90},[84,43817,43819,43821,43823,43826,43828,43831,43834,43836,43839],{"class":43818,"line":190},[86,10151],[84,43820,299],{"class":90},[84,43822,34893],{"class":94},[84,43824,43825],{"class":98}," v-bind:src",[84,43827,184],{"class":90},[84,43829,43830],{"class":118},"\"imageUrl\"",[84,43832,43833],{"class":98}," alt",[84,43835,184],{"class":90},[84,43837,43838],{"class":118},"\"Imagen dinámica\"",[84,43840,5100],{"class":90},[84,43842,43843,43845,43847],{"class":86,"line":196},[84,43844,274],{"class":90},[84,43846,291],{"class":94},[84,43848,102],{"class":90},[74,43850,43853],{"className":76,"code":43851,"filename":1782,"highlights":43852,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      imageUrl: '\u002Flogo.png',\n      description: 'Logo'\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cimg :src=\"imageUrl\" :alt=\"description\" \u002F>\n\u003C\u002Ftemplate>\n",[232],[22,43854,43855,43863,43871,43877,43883,43893,43901,43905,43909,43913,43921,43925,43933,43957],{"__ignoreMap":80},[84,43856,43857,43859,43861],{"class":86,"line":87},[84,43858,91],{"class":90},[84,43860,95],{"class":94},[84,43862,102],{"class":90},[84,43864,43865,43867,43869],{"class":86,"line":105},[84,43866,418],{"class":108},[84,43868,1870],{"class":108},[84,43870,175],{"class":90},[84,43872,43873,43875],{"class":86,"line":122},[84,43874,1896],{"class":98},[84,43876,1307],{"class":90},[84,43878,43879,43881],{"class":86,"line":129},[84,43880,1903],{"class":108},[84,43882,175],{"class":90},[84,43884,43885,43888,43891],{"class":86,"line":154},[84,43886,43887],{"class":90},"      imageUrl: ",[84,43889,43890],{"class":118},"'\u002Flogo.png'",[84,43892,1887],{"class":90},[84,43894,43895,43898],{"class":86,"line":159},[84,43896,43897],{"class":90},"      description: ",[84,43899,43900],{"class":118},"'Logo'\n",[84,43902,43903],{"class":86,"line":178},[84,43904,1936],{"class":90},[84,43906,43907],{"class":86,"line":190},[84,43908,485],{"class":90},[84,43910,43911],{"class":86,"line":196},[84,43912,193],{"class":90},[84,43914,43915,43917,43919],{"class":86,"line":201},[84,43916,274],{"class":90},[84,43918,95],{"class":94},[84,43920,102],{"class":90},[84,43922,43923],{"class":86,"line":217},[84,43924,126],{"emptyLinePlaceholder":125},[84,43926,43927,43929,43931],{"class":86,"line":227},[84,43928,91],{"class":90},[84,43930,291],{"class":94},[84,43932,102],{"class":90},[84,43934,43936,43938,43940,43943,43945,43947,43950,43952,43955],{"class":43935,"line":232},[86,10151],[84,43937,299],{"class":90},[84,43939,34893],{"class":94},[84,43941,43942],{"class":98}," :src",[84,43944,184],{"class":90},[84,43946,43830],{"class":118},[84,43948,43949],{"class":98}," :alt",[84,43951,184],{"class":90},[84,43953,43954],{"class":118},"\"description\"",[84,43956,5100],{"class":90},[84,43958,43959,43961,43963],{"class":86,"line":237},[84,43960,274],{"class":90},[84,43962,291],{"class":94},[84,43964,102],{"class":90},[34,43966,43967],{"id":18689},[22,43968,18689],{},[15,43970,43971,43972,43975],{},"Crea una ",[958,43973,43974],{},"sincronización bidireccional"," entre el estado y un input o componente.",[15,43977,43978],{},"Es ideal para:",[737,43980,43981,43983,43986],{},[740,43982,31627],{},[740,43984,43985],{},"Inputs controlados",[740,43987,43988],{},"Componentes reutilizables",[74,43990,43993],{"className":76,"code":43991,"filename":873,"highlights":43992,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst username = ref('')\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cinput v-model=\"username\" placeholder=\"Ingresa tu nombre de usuario\" \u002F>\n  \u003Cp>Hola, {{ username }}!\u003C\u002Fp>\n\u003C\u002Ftemplate>\n",[190],[22,43994,43995,44005,44015,44019,44036,44044,44048,44056,44079,44092],{"__ignoreMap":80},[84,43996,43997,43999,44001,44003],{"class":86,"line":87},[84,43998,91],{"class":90},[84,44000,95],{"class":94},[84,44002,99],{"class":98},[84,44004,102],{"class":90},[84,44006,44007,44009,44011,44013],{"class":86,"line":105},[84,44008,109],{"class":108},[84,44010,112],{"class":90},[84,44012,115],{"class":108},[84,44014,119],{"class":118},[84,44016,44017],{"class":86,"line":122},[84,44018,126],{"emptyLinePlaceholder":125},[84,44020,44021,44023,44026,44028,44030,44032,44034],{"class":86,"line":129},[84,44022,132],{"class":108},[84,44024,44025],{"class":135}," username",[84,44027,139],{"class":108},[84,44029,142],{"class":98},[84,44031,145],{"class":90},[84,44033,1288],{"class":118},[84,44035,151],{"class":90},[84,44037,44038,44040,44042],{"class":86,"line":154},[84,44039,274],{"class":90},[84,44041,95],{"class":94},[84,44043,102],{"class":90},[84,44045,44046],{"class":86,"line":159},[84,44047,126],{"emptyLinePlaceholder":125},[84,44049,44050,44052,44054],{"class":86,"line":178},[84,44051,91],{"class":90},[84,44053,291],{"class":94},[84,44055,102],{"class":90},[84,44057,44059,44061,44063,44065,44067,44070,44072,44074,44077],{"class":44058,"line":190},[86,10151],[84,44060,299],{"class":90},[84,44062,18759],{"class":94},[84,44064,24454],{"class":98},[84,44066,184],{"class":90},[84,44068,44069],{"class":118},"\"username\"",[84,44071,32599],{"class":98},[84,44073,184],{"class":90},[84,44075,44076],{"class":118},"\"Ingresa tu nombre de usuario\"",[84,44078,5100],{"class":90},[84,44080,44081,44083,44085,44088,44090],{"class":86,"line":196},[84,44082,299],{"class":90},[84,44084,15],{"class":94},[84,44086,44087],{"class":90},">Hola, {{ username }}!\u003C\u002F",[84,44089,15],{"class":94},[84,44091,102],{"class":90},[84,44093,44094,44096,44098],{"class":86,"line":201},[84,44095,274],{"class":90},[84,44097,291],{"class":94},[84,44099,102],{"class":90},[74,44101,44104],{"className":76,"code":44102,"filename":1782,"highlights":44103,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      username: ''\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cinput v-model=\"username\" placeholder=\"Ingresa tu nombre de usuario\" \u002F>\n  \u003Cp>Hola, {{ username }}!\u003C\u002Fp>\n\u003C\u002Ftemplate>\n",[227],[22,44105,44106,44114,44122,44128,44134,44141,44145,44149,44153,44161,44165,44173,44194,44206],{"__ignoreMap":80},[84,44107,44108,44110,44112],{"class":86,"line":87},[84,44109,91],{"class":90},[84,44111,95],{"class":94},[84,44113,102],{"class":90},[84,44115,44116,44118,44120],{"class":86,"line":105},[84,44117,418],{"class":108},[84,44119,1870],{"class":108},[84,44121,175],{"class":90},[84,44123,44124,44126],{"class":86,"line":122},[84,44125,1896],{"class":98},[84,44127,1307],{"class":90},[84,44129,44130,44132],{"class":86,"line":129},[84,44131,1903],{"class":108},[84,44133,175],{"class":90},[84,44135,44136,44139],{"class":86,"line":154},[84,44137,44138],{"class":90},"      username: ",[84,44140,1931],{"class":118},[84,44142,44143],{"class":86,"line":159},[84,44144,1936],{"class":90},[84,44146,44147],{"class":86,"line":178},[84,44148,485],{"class":90},[84,44150,44151],{"class":86,"line":190},[84,44152,193],{"class":90},[84,44154,44155,44157,44159],{"class":86,"line":196},[84,44156,274],{"class":90},[84,44158,95],{"class":94},[84,44160,102],{"class":90},[84,44162,44163],{"class":86,"line":201},[84,44164,126],{"emptyLinePlaceholder":125},[84,44166,44167,44169,44171],{"class":86,"line":217},[84,44168,91],{"class":90},[84,44170,291],{"class":94},[84,44172,102],{"class":90},[84,44174,44176,44178,44180,44182,44184,44186,44188,44190,44192],{"class":44175,"line":227},[86,10151],[84,44177,299],{"class":90},[84,44179,18759],{"class":94},[84,44181,24454],{"class":98},[84,44183,184],{"class":90},[84,44185,44069],{"class":118},[84,44187,32599],{"class":98},[84,44189,184],{"class":90},[84,44191,44076],{"class":118},[84,44193,5100],{"class":90},[84,44195,44196,44198,44200,44202,44204],{"class":86,"line":232},[84,44197,299],{"class":90},[84,44199,15],{"class":94},[84,44201,44087],{"class":90},[84,44203,15],{"class":94},[84,44205,102],{"class":90},[84,44207,44208,44210,44212],{"class":86,"line":237},[84,44209,274],{"class":90},[84,44211,291],{"class":94},[84,44213,102],{"class":90},[15,44215,44216,44217,28840,44219,44221],{},"Internamente, combina props y eventos (",[22,44218,28916],{},[22,44220,28922],{},").\nNo es magia, pero se le parece bastante.",[34,44223,44224],{"id":18695},[22,44225,18695],{},[15,44227,44228],{},"Escucha eventos del DOM y ejecuta lógica reactiva.",[74,44230,44233],{"className":76,"code":44231,"filename":873,"highlights":44232,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst count = ref(0)\nconst increment = () => {\n  count.value++\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton v-on:click=\"increment\">Has hecho clic {{ count }} veces\u003C\u002Fbutton>\n\u003C\u002Ftemplate>\n",[217],[22,44234,44235,44245,44255,44259,44275,44290,44296,44300,44308,44312,44320,44342],{"__ignoreMap":80},[84,44236,44237,44239,44241,44243],{"class":86,"line":87},[84,44238,91],{"class":90},[84,44240,95],{"class":94},[84,44242,99],{"class":98},[84,44244,102],{"class":90},[84,44246,44247,44249,44251,44253],{"class":86,"line":105},[84,44248,109],{"class":108},[84,44250,112],{"class":90},[84,44252,115],{"class":108},[84,44254,119],{"class":118},[84,44256,44257],{"class":86,"line":122},[84,44258,126],{"emptyLinePlaceholder":125},[84,44260,44261,44263,44265,44267,44269,44271,44273],{"class":86,"line":129},[84,44262,132],{"class":108},[84,44264,10133],{"class":135},[84,44266,139],{"class":108},[84,44268,142],{"class":98},[84,44270,145],{"class":90},[84,44272,4320],{"class":135},[84,44274,151],{"class":90},[84,44276,44277,44279,44282,44284,44286,44288],{"class":86,"line":154},[84,44278,132],{"class":108},[84,44280,44281],{"class":98}," increment",[84,44283,139],{"class":108},[84,44285,169],{"class":90},[84,44287,172],{"class":108},[84,44289,175],{"class":90},[84,44291,44292,44294],{"class":86,"line":159},[84,44293,10165],{"class":90},[84,44295,10168],{"class":108},[84,44297,44298],{"class":86,"line":178},[84,44299,193],{"class":90},[84,44301,44302,44304,44306],{"class":86,"line":190},[84,44303,274],{"class":90},[84,44305,95],{"class":94},[84,44307,102],{"class":90},[84,44309,44310],{"class":86,"line":196},[84,44311,126],{"emptyLinePlaceholder":125},[84,44313,44314,44316,44318],{"class":86,"line":201},[84,44315,91],{"class":90},[84,44317,291],{"class":94},[84,44319,102],{"class":90},[84,44321,44323,44325,44327,44330,44332,44335,44338,44340],{"class":44322,"line":217},[86,10151],[84,44324,299],{"class":90},[84,44326,302],{"class":94},[84,44328,44329],{"class":98}," v-on:click",[84,44331,184],{"class":90},[84,44333,44334],{"class":118},"\"increment\"",[84,44336,44337],{"class":90},">Has hecho clic {{ count }} veces\u003C\u002F",[84,44339,302],{"class":94},[84,44341,102],{"class":90},[84,44343,44344,44346,44348],{"class":86,"line":227},[84,44345,274],{"class":90},[84,44347,291],{"class":94},[84,44349,102],{"class":90},[74,44351,44354],{"className":76,"code":44352,"filename":1782,"highlights":44353,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      count: 0\n    }\n  },\n  methods: {\n    increment() {\n      this.count++\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton v-on:click=\"increment\">Clickeame\u003C\u002Fbutton>\n  \u003Cp>Has clickeado {{ count }} veces.\u003C\u002Fp>\n\u003C\u002Ftemplate>\n",[271],[22,44355,44356,44364,44372,44378,44384,44390,44394,44398,44402,44409,44418,44422,44426,44430,44438,44442,44450,44470,44483],{"__ignoreMap":80},[84,44357,44358,44360,44362],{"class":86,"line":87},[84,44359,91],{"class":90},[84,44361,95],{"class":94},[84,44363,102],{"class":90},[84,44365,44366,44368,44370],{"class":86,"line":105},[84,44367,418],{"class":108},[84,44369,1870],{"class":108},[84,44371,175],{"class":90},[84,44373,44374,44376],{"class":86,"line":122},[84,44375,1896],{"class":98},[84,44377,1307],{"class":90},[84,44379,44380,44382],{"class":86,"line":129},[84,44381,1903],{"class":108},[84,44383,175],{"class":90},[84,44385,44386,44388],{"class":86,"line":154},[84,44387,32365],{"class":90},[84,44389,5467],{"class":135},[84,44391,44392],{"class":86,"line":159},[84,44393,1936],{"class":90},[84,44395,44396],{"class":86,"line":178},[84,44397,1941],{"class":90},[84,44399,44400],{"class":86,"line":190},[84,44401,1950],{"class":90},[84,44403,44404,44407],{"class":86,"line":196},[84,44405,44406],{"class":98},"    increment",[84,44408,1307],{"class":90},[84,44410,44411,44413,44416],{"class":86,"line":201},[84,44412,2022],{"class":135},[84,44414,44415],{"class":90},".count",[84,44417,10168],{"class":108},[84,44419,44420],{"class":86,"line":217},[84,44421,1936],{"class":90},[84,44423,44424],{"class":86,"line":227},[84,44425,485],{"class":90},[84,44427,44428],{"class":86,"line":232},[84,44429,193],{"class":90},[84,44431,44432,44434,44436],{"class":86,"line":237},[84,44433,274],{"class":90},[84,44435,95],{"class":94},[84,44437,102],{"class":90},[84,44439,44440],{"class":86,"line":253},[84,44441,126],{"emptyLinePlaceholder":125},[84,44443,44444,44446,44448],{"class":86,"line":266},[84,44445,91],{"class":90},[84,44447,291],{"class":94},[84,44449,102],{"class":90},[84,44451,44453,44455,44457,44459,44461,44463,44466,44468],{"class":44452,"line":271},[86,10151],[84,44454,299],{"class":90},[84,44456,302],{"class":94},[84,44458,44329],{"class":98},[84,44460,184],{"class":90},[84,44462,44334],{"class":118},[84,44464,44465],{"class":90},">Clickeame\u003C\u002F",[84,44467,302],{"class":94},[84,44469,102],{"class":90},[84,44471,44472,44474,44476,44479,44481],{"class":86,"line":281},[84,44473,299],{"class":90},[84,44475,15],{"class":94},[84,44477,44478],{"class":90},">Has clickeado {{ count }} veces.\u003C\u002F",[84,44480,15],{"class":94},[84,44482,102],{"class":90},[84,44484,44485,44487,44489],{"class":86,"line":286},[84,44486,274],{"class":90},[84,44488,291],{"class":94},[84,44490,102],{"class":90},[15,44492,44493,44494,1341,44497,754,44499,754,44501,44503],{},"Soporta ",[958,44495,44496],{},"modificadores",[22,44498,31788],{},[22,44500,31785],{},[22,44502,31791],{},", etc.) que evitan código innecesario.",[34,44505,44506],{"id":25284},[22,44507,25284],{},[15,44509,44510],{},"Inserta texto plano en un elemento, reemplazando su contenido.",[74,44512,44515],{"className":76,"code":44513,"filename":873,"highlights":44514,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst message = ref('Hola Mundo')\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cdiv v-text=\"message\">\u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n",[190],[22,44516,44517,44527,44537,44541,44558,44566,44570,44578,44598],{"__ignoreMap":80},[84,44518,44519,44521,44523,44525],{"class":86,"line":87},[84,44520,91],{"class":90},[84,44522,95],{"class":94},[84,44524,99],{"class":98},[84,44526,102],{"class":90},[84,44528,44529,44531,44533,44535],{"class":86,"line":105},[84,44530,109],{"class":108},[84,44532,112],{"class":90},[84,44534,115],{"class":108},[84,44536,119],{"class":118},[84,44538,44539],{"class":86,"line":122},[84,44540,126],{"emptyLinePlaceholder":125},[84,44542,44543,44545,44547,44549,44551,44553,44556],{"class":86,"line":129},[84,44544,132],{"class":108},[84,44546,23857],{"class":135},[84,44548,139],{"class":108},[84,44550,142],{"class":98},[84,44552,145],{"class":90},[84,44554,44555],{"class":118},"'Hola Mundo'",[84,44557,151],{"class":90},[84,44559,44560,44562,44564],{"class":86,"line":154},[84,44561,274],{"class":90},[84,44563,95],{"class":94},[84,44565,102],{"class":90},[84,44567,44568],{"class":86,"line":159},[84,44569,126],{"emptyLinePlaceholder":125},[84,44571,44572,44574,44576],{"class":86,"line":178},[84,44573,91],{"class":90},[84,44575,291],{"class":94},[84,44577,102],{"class":90},[84,44579,44581,44583,44585,44587,44589,44592,44594,44596],{"class":44580,"line":190},[86,10151],[84,44582,299],{"class":90},[84,44584,4978],{"class":94},[84,44586,25375],{"class":98},[84,44588,184],{"class":90},[84,44590,44591],{"class":118},"\"message\"",[84,44593,25387],{"class":90},[84,44595,4978],{"class":94},[84,44597,102],{"class":90},[84,44599,44600,44602,44604],{"class":86,"line":196},[84,44601,274],{"class":90},[84,44603,291],{"class":94},[84,44605,102],{"class":90},[74,44607,44610],{"className":76,"code":44608,"filename":1782,"highlights":44609,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      message: 'Hola Vue'\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cdiv v-text=\"message\">\u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n",[227],[22,44611,44612,44620,44628,44634,44640,44647,44651,44655,44659,44667,44671,44679,44698],{"__ignoreMap":80},[84,44613,44614,44616,44618],{"class":86,"line":87},[84,44615,91],{"class":90},[84,44617,95],{"class":94},[84,44619,102],{"class":90},[84,44621,44622,44624,44626],{"class":86,"line":105},[84,44623,418],{"class":108},[84,44625,1870],{"class":108},[84,44627,175],{"class":90},[84,44629,44630,44632],{"class":86,"line":122},[84,44631,1896],{"class":98},[84,44633,1307],{"class":90},[84,44635,44636,44638],{"class":86,"line":129},[84,44637,1903],{"class":108},[84,44639,175],{"class":90},[84,44641,44642,44644],{"class":86,"line":154},[84,44643,23971],{"class":90},[84,44645,44646],{"class":118},"'Hola Vue'\n",[84,44648,44649],{"class":86,"line":159},[84,44650,1936],{"class":90},[84,44652,44653],{"class":86,"line":178},[84,44654,485],{"class":90},[84,44656,44657],{"class":86,"line":190},[84,44658,193],{"class":90},[84,44660,44661,44663,44665],{"class":86,"line":196},[84,44662,274],{"class":90},[84,44664,95],{"class":94},[84,44666,102],{"class":90},[84,44668,44669],{"class":86,"line":201},[84,44670,126],{"emptyLinePlaceholder":125},[84,44672,44673,44675,44677],{"class":86,"line":217},[84,44674,91],{"class":90},[84,44676,291],{"class":94},[84,44678,102],{"class":90},[84,44680,44682,44684,44686,44688,44690,44692,44694,44696],{"class":44681,"line":227},[86,10151],[84,44683,299],{"class":90},[84,44685,4978],{"class":94},[84,44687,25375],{"class":98},[84,44689,184],{"class":90},[84,44691,44591],{"class":118},[84,44693,25387],{"class":90},[84,44695,4978],{"class":94},[84,44697,102],{"class":90},[84,44699,44700,44702,44704],{"class":86,"line":232},[84,44701,274],{"class":90},[84,44703,291],{"class":94},[84,44705,102],{"class":90},[15,44707,44708],{},"No se usa mucho, pero existe para casos muy específicos donde no quieres interpolaciones.",[34,44710,44711],{"id":25287},[22,44712,25287],{},[15,44714,44715],{},"Inserta HTML sin escapar.",[74,44717,44720],{"className":76,"code":44718,"filename":873,"highlights":44719,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst rawHtml = ref('\u003Cstrong>Texto en negrita\u003C\u002Fstrong>')\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cdiv v-html=\"rawHtml\">\u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n",[190],[22,44721,44722,44732,44742,44746,44764,44772,44776,44784,44804],{"__ignoreMap":80},[84,44723,44724,44726,44728,44730],{"class":86,"line":87},[84,44725,91],{"class":90},[84,44727,95],{"class":94},[84,44729,99],{"class":98},[84,44731,102],{"class":90},[84,44733,44734,44736,44738,44740],{"class":86,"line":105},[84,44735,109],{"class":108},[84,44737,112],{"class":90},[84,44739,115],{"class":108},[84,44741,119],{"class":118},[84,44743,44744],{"class":86,"line":122},[84,44745,126],{"emptyLinePlaceholder":125},[84,44747,44748,44750,44753,44755,44757,44759,44762],{"class":86,"line":129},[84,44749,132],{"class":108},[84,44751,44752],{"class":135}," rawHtml",[84,44754,139],{"class":108},[84,44756,142],{"class":98},[84,44758,145],{"class":90},[84,44760,44761],{"class":118},"'\u003Cstrong>Texto en negrita\u003C\u002Fstrong>'",[84,44763,151],{"class":90},[84,44765,44766,44768,44770],{"class":86,"line":154},[84,44767,274],{"class":90},[84,44769,95],{"class":94},[84,44771,102],{"class":90},[84,44773,44774],{"class":86,"line":159},[84,44775,126],{"emptyLinePlaceholder":125},[84,44777,44778,44780,44782],{"class":86,"line":178},[84,44779,91],{"class":90},[84,44781,291],{"class":94},[84,44783,102],{"class":90},[84,44785,44787,44789,44791,44793,44795,44798,44800,44802],{"class":44786,"line":190},[86,10151],[84,44788,299],{"class":90},[84,44790,4978],{"class":94},[84,44792,25445],{"class":98},[84,44794,184],{"class":90},[84,44796,44797],{"class":118},"\"rawHtml\"",[84,44799,25387],{"class":90},[84,44801,4978],{"class":94},[84,44803,102],{"class":90},[84,44805,44806,44808,44810],{"class":86,"line":196},[84,44807,274],{"class":90},[84,44809,291],{"class":94},[84,44811,102],{"class":90},[74,44813,44816],{"className":76,"code":44814,"filename":1782,"highlights":44815,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      rawHtml: '\u003Cstrong>HTML dinámico\u003C\u002Fstrong>'\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cdiv v-html=\"rawHtml\">\u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n",[227],[22,44817,44818,44826,44834,44840,44846,44854,44858,44862,44866,44874,44878,44886,44905],{"__ignoreMap":80},[84,44819,44820,44822,44824],{"class":86,"line":87},[84,44821,91],{"class":90},[84,44823,95],{"class":94},[84,44825,102],{"class":90},[84,44827,44828,44830,44832],{"class":86,"line":105},[84,44829,418],{"class":108},[84,44831,1870],{"class":108},[84,44833,175],{"class":90},[84,44835,44836,44838],{"class":86,"line":122},[84,44837,1896],{"class":98},[84,44839,1307],{"class":90},[84,44841,44842,44844],{"class":86,"line":129},[84,44843,1903],{"class":108},[84,44845,175],{"class":90},[84,44847,44848,44851],{"class":86,"line":154},[84,44849,44850],{"class":90},"      rawHtml: ",[84,44852,44853],{"class":118},"'\u003Cstrong>HTML dinámico\u003C\u002Fstrong>'\n",[84,44855,44856],{"class":86,"line":159},[84,44857,1936],{"class":90},[84,44859,44860],{"class":86,"line":178},[84,44861,485],{"class":90},[84,44863,44864],{"class":86,"line":190},[84,44865,193],{"class":90},[84,44867,44868,44870,44872],{"class":86,"line":196},[84,44869,274],{"class":90},[84,44871,95],{"class":94},[84,44873,102],{"class":90},[84,44875,44876],{"class":86,"line":201},[84,44877,126],{"emptyLinePlaceholder":125},[84,44879,44880,44882,44884],{"class":86,"line":217},[84,44881,91],{"class":90},[84,44883,291],{"class":94},[84,44885,102],{"class":90},[84,44887,44889,44891,44893,44895,44897,44899,44901,44903],{"class":44888,"line":227},[86,10151],[84,44890,299],{"class":90},[84,44892,4978],{"class":94},[84,44894,25445],{"class":98},[84,44896,184],{"class":90},[84,44898,44797],{"class":118},[84,44900,25387],{"class":90},[84,44902,4978],{"class":94},[84,44904,102],{"class":90},[84,44906,44907,44909,44911],{"class":86,"line":232},[84,44908,274],{"class":90},[84,44910,291],{"class":94},[84,44912,102],{"class":90},[823,44914,44915],{},[15,44916,44917,44918,44921],{},"⚠️ ",[958,44919,44920],{},"Nunca lo uses con contenido no confiable",".\nEs una puerta directa a XSS si no sabes exactamente lo que estás renderizando.",[34,44923,44924],{"id":26560},[22,44925,26560],{},[15,44927,44928],{},"Permite definir contenido dinámico dentro de componentes mediante slots.",[74,44930,44933],{"className":76,"code":44931,"filename":873,"highlights":44932,"language":79,"meta":80,"style":80},"\u003Cscript setup>\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003CMyCard>\n    \u003Ctemplate v-slot:header>\n      \u003Ch1>Encabezado Personalizado\u003C\u002Fh1>\n    \u003C\u002Ftemplate>\n    \u003Cp>Contenido del cuerpo de la tarjeta.\u003C\u002Fp>\n    \u003Ctemplate v-slot:footer>\n      \u003Cbutton>Acción\u003C\u002Fbutton>\n    \u003C\u002Ftemplate>\n  \u003C\u002FMyCard>\n\u003C\u002Ftemplate>\n",[159,201],[22,44934,44935,44945,44953,44957,44965,44974,44989,45002,45010,45023,45038,45051,45059,45067],{"__ignoreMap":80},[84,44936,44937,44939,44941,44943],{"class":86,"line":87},[84,44938,91],{"class":90},[84,44940,95],{"class":94},[84,44942,99],{"class":98},[84,44944,102],{"class":90},[84,44946,44947,44949,44951],{"class":86,"line":105},[84,44948,274],{"class":90},[84,44950,95],{"class":94},[84,44952,102],{"class":90},[84,44954,44955],{"class":86,"line":122},[84,44956,126],{"emptyLinePlaceholder":125},[84,44958,44959,44961,44963],{"class":86,"line":129},[84,44960,91],{"class":90},[84,44962,291],{"class":94},[84,44964,102],{"class":90},[84,44966,44967,44969,44972],{"class":86,"line":154},[84,44968,299],{"class":90},[84,44970,44971],{"class":94},"MyCard",[84,44973,102],{"class":90},[84,44975,44977,44979,44981,44983,44985,44987],{"class":44976,"line":159},[86,10151],[84,44978,1642],{"class":90},[84,44980,291],{"class":94},[84,44982,26882],{"class":98},[84,44984,1203],{"class":90},[84,44986,4915],{"class":98},[84,44988,102],{"class":90},[84,44990,44991,44993,44995,44998,45000],{"class":86,"line":178},[84,44992,1691],{"class":90},[84,44994,11],{"class":94},[84,44996,44997],{"class":90},">Encabezado Personalizado\u003C\u002F",[84,44999,11],{"class":94},[84,45001,102],{"class":90},[84,45003,45004,45006,45008],{"class":86,"line":190},[84,45005,1734],{"class":90},[84,45007,291],{"class":94},[84,45009,102],{"class":90},[84,45011,45012,45014,45016,45019,45021],{"class":86,"line":196},[84,45013,1642],{"class":90},[84,45015,15],{"class":94},[84,45017,45018],{"class":90},">Contenido del cuerpo de la tarjeta.\u003C\u002F",[84,45020,15],{"class":94},[84,45022,102],{"class":90},[84,45024,45026,45028,45030,45032,45034,45036],{"class":45025,"line":201},[86,10151],[84,45027,1642],{"class":90},[84,45029,291],{"class":94},[84,45031,26882],{"class":98},[84,45033,1203],{"class":90},[84,45035,27272],{"class":98},[84,45037,102],{"class":90},[84,45039,45040,45042,45044,45047,45049],{"class":86,"line":217},[84,45041,1691],{"class":90},[84,45043,302],{"class":94},[84,45045,45046],{"class":90},">Acción\u003C\u002F",[84,45048,302],{"class":94},[84,45050,102],{"class":90},[84,45052,45053,45055,45057],{"class":86,"line":227},[84,45054,1734],{"class":90},[84,45056,291],{"class":94},[84,45058,102],{"class":90},[84,45060,45061,45063,45065],{"class":86,"line":232},[84,45062,324],{"class":90},[84,45064,44971],{"class":94},[84,45066,102],{"class":90},[84,45068,45069,45071,45073],{"class":86,"line":237},[84,45070,274],{"class":90},[84,45072,291],{"class":94},[84,45074,102],{"class":90},[74,45076,45079],{"className":76,"code":45077,"filename":1782,"highlights":45078,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  components: { MyCard }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003CMyCard>\n    \u003Ctemplate v-slot:header>\n      \u003Ch1>Encabezado Personalizado\u003C\u002Fh1>\n    \u003C\u002Ftemplate>\n    \u003Cp>Contenido del cuerpo de la tarjeta.\u003C\u002Fp>\n    \u003Ctemplate v-slot:footer>\n      \u003Cbutton>Acción\u003C\u002Fbutton>\n    \u003C\u002Ftemplate>\n  \u003C\u002FMyCard>\n\u003C\u002Ftemplate>\n",[196,232],[22,45080,45081,45089,45097,45102,45106,45114,45118,45126,45134,45149,45161,45169,45181,45196,45208,45216,45224],{"__ignoreMap":80},[84,45082,45083,45085,45087],{"class":86,"line":87},[84,45084,91],{"class":90},[84,45086,95],{"class":94},[84,45088,102],{"class":90},[84,45090,45091,45093,45095],{"class":86,"line":105},[84,45092,418],{"class":108},[84,45094,1870],{"class":108},[84,45096,175],{"class":90},[84,45098,45099],{"class":86,"line":122},[84,45100,45101],{"class":90},"  components: { MyCard }\n",[84,45103,45104],{"class":86,"line":129},[84,45105,193],{"class":90},[84,45107,45108,45110,45112],{"class":86,"line":154},[84,45109,274],{"class":90},[84,45111,95],{"class":94},[84,45113,102],{"class":90},[84,45115,45116],{"class":86,"line":159},[84,45117,126],{"emptyLinePlaceholder":125},[84,45119,45120,45122,45124],{"class":86,"line":178},[84,45121,91],{"class":90},[84,45123,291],{"class":94},[84,45125,102],{"class":90},[84,45127,45128,45130,45132],{"class":86,"line":190},[84,45129,299],{"class":90},[84,45131,44971],{"class":94},[84,45133,102],{"class":90},[84,45135,45137,45139,45141,45143,45145,45147],{"class":45136,"line":196},[86,10151],[84,45138,1642],{"class":90},[84,45140,291],{"class":94},[84,45142,26882],{"class":98},[84,45144,1203],{"class":90},[84,45146,4915],{"class":98},[84,45148,102],{"class":90},[84,45150,45151,45153,45155,45157,45159],{"class":86,"line":201},[84,45152,1691],{"class":90},[84,45154,11],{"class":94},[84,45156,44997],{"class":90},[84,45158,11],{"class":94},[84,45160,102],{"class":90},[84,45162,45163,45165,45167],{"class":86,"line":217},[84,45164,1734],{"class":90},[84,45166,291],{"class":94},[84,45168,102],{"class":90},[84,45170,45171,45173,45175,45177,45179],{"class":86,"line":227},[84,45172,1642],{"class":90},[84,45174,15],{"class":94},[84,45176,45018],{"class":90},[84,45178,15],{"class":94},[84,45180,102],{"class":90},[84,45182,45184,45186,45188,45190,45192,45194],{"class":45183,"line":232},[86,10151],[84,45185,1642],{"class":90},[84,45187,291],{"class":94},[84,45189,26882],{"class":98},[84,45191,1203],{"class":90},[84,45193,27272],{"class":98},[84,45195,102],{"class":90},[84,45197,45198,45200,45202,45204,45206],{"class":86,"line":237},[84,45199,1691],{"class":90},[84,45201,302],{"class":94},[84,45203,45046],{"class":90},[84,45205,302],{"class":94},[84,45207,102],{"class":90},[84,45209,45210,45212,45214],{"class":86,"line":253},[84,45211,1734],{"class":90},[84,45213,291],{"class":94},[84,45215,102],{"class":90},[84,45217,45218,45220,45222],{"class":86,"line":266},[84,45219,324],{"class":90},[84,45221,44971],{"class":94},[84,45223,102],{"class":90},[84,45225,45226,45228,45230],{"class":86,"line":271},[84,45227,274],{"class":90},[84,45229,291],{"class":94},[84,45231,102],{"class":90},[15,45233,45234,45235,764],{},"Es clave para crear componentes ",[958,45236,45237],{},"flexibles, composables y reutilizables",[34,45239,45240],{"id":22609},[22,45241,22609],{},[15,45243,45244,45245,45248],{},"Renderiza el contenido ",[958,45246,45247],{},"una sola vez"," y lo excluye del sistema reactivo.",[74,45250,45253],{"className":76,"code":45251,"filename":873,"highlights":45252,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n  \nconst count = ref(0)\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cp v-once>Este texto no cambiará: {{ count }}\u003C\u002Fp>\n  \u003Cbutton @click=\"count++\">Incrementar\u003C\u002Fbutton>\n\u003C\u002Ftemplate>\n",[190],[22,45254,45255,45265,45275,45279,45295,45303,45307,45315,45331,45350],{"__ignoreMap":80},[84,45256,45257,45259,45261,45263],{"class":86,"line":87},[84,45258,91],{"class":90},[84,45260,95],{"class":94},[84,45262,99],{"class":98},[84,45264,102],{"class":90},[84,45266,45267,45269,45271,45273],{"class":86,"line":105},[84,45268,109],{"class":108},[84,45270,112],{"class":90},[84,45272,115],{"class":108},[84,45274,119],{"class":118},[84,45276,45277],{"class":86,"line":122},[84,45278,43259],{"class":90},[84,45280,45281,45283,45285,45287,45289,45291,45293],{"class":86,"line":129},[84,45282,132],{"class":108},[84,45284,10133],{"class":135},[84,45286,139],{"class":108},[84,45288,142],{"class":98},[84,45290,145],{"class":90},[84,45292,4320],{"class":135},[84,45294,151],{"class":90},[84,45296,45297,45299,45301],{"class":86,"line":154},[84,45298,274],{"class":90},[84,45300,95],{"class":94},[84,45302,102],{"class":90},[84,45304,45305],{"class":86,"line":159},[84,45306,126],{"emptyLinePlaceholder":125},[84,45308,45309,45311,45313],{"class":86,"line":178},[84,45310,91],{"class":90},[84,45312,291],{"class":94},[84,45314,102],{"class":90},[84,45316,45318,45320,45322,45324,45327,45329],{"class":45317,"line":190},[86,10151],[84,45319,299],{"class":90},[84,45321,15],{"class":94},[84,45323,23017],{"class":98},[84,45325,45326],{"class":90},">Este texto no cambiará: {{ count }}\u003C\u002F",[84,45328,15],{"class":94},[84,45330,102],{"class":90},[84,45332,45333,45335,45337,45339,45341,45343,45346,45348],{"class":86,"line":196},[84,45334,299],{"class":90},[84,45336,302],{"class":94},[84,45338,305],{"class":98},[84,45340,184],{"class":90},[84,45342,13204],{"class":118},[84,45344,45345],{"class":90},">Incrementar\u003C\u002F",[84,45347,302],{"class":94},[84,45349,102],{"class":90},[84,45351,45352,45354,45356],{"class":86,"line":201},[84,45353,274],{"class":90},[84,45355,291],{"class":94},[84,45357,102],{"class":90},[74,45359,45362],{"className":76,"code":45360,"filename":1782,"highlights":45361,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      count: 0\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cp v-once>Este texto no cambiará: {{ count }}\u003C\u002Fp>\n  \u003Cbutton @click=\"count++\">Incrementar\u003C\u002Fbutton>\n\u003C\u002Ftemplate>\n",[227],[22,45363,45364,45372,45380,45386,45392,45398,45402,45406,45410,45418,45422,45430,45445,45463],{"__ignoreMap":80},[84,45365,45366,45368,45370],{"class":86,"line":87},[84,45367,91],{"class":90},[84,45369,95],{"class":94},[84,45371,102],{"class":90},[84,45373,45374,45376,45378],{"class":86,"line":105},[84,45375,418],{"class":108},[84,45377,1870],{"class":108},[84,45379,175],{"class":90},[84,45381,45382,45384],{"class":86,"line":122},[84,45383,1896],{"class":98},[84,45385,1307],{"class":90},[84,45387,45388,45390],{"class":86,"line":129},[84,45389,1903],{"class":108},[84,45391,175],{"class":90},[84,45393,45394,45396],{"class":86,"line":154},[84,45395,32365],{"class":90},[84,45397,5467],{"class":135},[84,45399,45400],{"class":86,"line":159},[84,45401,1936],{"class":90},[84,45403,45404],{"class":86,"line":178},[84,45405,485],{"class":90},[84,45407,45408],{"class":86,"line":190},[84,45409,193],{"class":90},[84,45411,45412,45414,45416],{"class":86,"line":196},[84,45413,274],{"class":90},[84,45415,95],{"class":94},[84,45417,102],{"class":90},[84,45419,45420],{"class":86,"line":201},[84,45421,126],{"emptyLinePlaceholder":125},[84,45423,45424,45426,45428],{"class":86,"line":217},[84,45425,91],{"class":90},[84,45427,291],{"class":94},[84,45429,102],{"class":90},[84,45431,45433,45435,45437,45439,45441,45443],{"class":45432,"line":227},[86,10151],[84,45434,299],{"class":90},[84,45436,15],{"class":94},[84,45438,23017],{"class":98},[84,45440,45326],{"class":90},[84,45442,15],{"class":94},[84,45444,102],{"class":90},[84,45446,45447,45449,45451,45453,45455,45457,45459,45461],{"class":86,"line":232},[84,45448,299],{"class":90},[84,45450,302],{"class":94},[84,45452,305],{"class":98},[84,45454,184],{"class":90},[84,45456,13204],{"class":118},[84,45458,45345],{"class":90},[84,45460,302],{"class":94},[84,45462,102],{"class":90},[84,45464,45465,45467,45469],{"class":86,"line":237},[84,45466,274],{"class":90},[84,45468,291],{"class":94},[84,45470,102],{"class":90},[15,45472,45473],{},"Útil cuando el contenido no debe actualizarse jamás, incluso si el estado cambia.",[34,45475,45476],{"id":22612},[22,45477,22612],{},[15,45479,45480],{},"Evita renderizados innecesarios cuando las dependencias no cambian.",[74,45482,45485],{"className":76,"code":45483,"filename":873,"highlights":45484,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst count = ref(0)\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cdiv v-memo=\"[count]\">\n    \u003Cp>Este bloque solo se re-renderiza si 'count' cambia: {{ count }}\u003C\u002Fp>\n  \u003C\u002Fdiv>\n  \u003Cbutton @click=\"count++\">Incrementar\u003C\u002Fbutton>\n\u003C\u002Ftemplate>\n",[190],[22,45486,45487,45497,45507,45511,45527,45535,45539,45547,45564,45577,45585,45603],{"__ignoreMap":80},[84,45488,45489,45491,45493,45495],{"class":86,"line":87},[84,45490,91],{"class":90},[84,45492,95],{"class":94},[84,45494,99],{"class":98},[84,45496,102],{"class":90},[84,45498,45499,45501,45503,45505],{"class":86,"line":105},[84,45500,109],{"class":108},[84,45502,112],{"class":90},[84,45504,115],{"class":108},[84,45506,119],{"class":118},[84,45508,45509],{"class":86,"line":122},[84,45510,126],{"emptyLinePlaceholder":125},[84,45512,45513,45515,45517,45519,45521,45523,45525],{"class":86,"line":129},[84,45514,132],{"class":108},[84,45516,10133],{"class":135},[84,45518,139],{"class":108},[84,45520,142],{"class":98},[84,45522,145],{"class":90},[84,45524,4320],{"class":135},[84,45526,151],{"class":90},[84,45528,45529,45531,45533],{"class":86,"line":154},[84,45530,274],{"class":90},[84,45532,95],{"class":94},[84,45534,102],{"class":90},[84,45536,45537],{"class":86,"line":159},[84,45538,126],{"emptyLinePlaceholder":125},[84,45540,45541,45543,45545],{"class":86,"line":178},[84,45542,91],{"class":90},[84,45544,291],{"class":94},[84,45546,102],{"class":90},[84,45548,45550,45552,45554,45557,45559,45562],{"class":45549,"line":190},[86,10151],[84,45551,299],{"class":90},[84,45553,4978],{"class":94},[84,45555,45556],{"class":98}," v-memo",[84,45558,184],{"class":90},[84,45560,45561],{"class":118},"\"[count]\"",[84,45563,102],{"class":90},[84,45565,45566,45568,45570,45573,45575],{"class":86,"line":196},[84,45567,1642],{"class":90},[84,45569,15],{"class":94},[84,45571,45572],{"class":90},">Este bloque solo se re-renderiza si 'count' cambia: {{ count }}\u003C\u002F",[84,45574,15],{"class":94},[84,45576,102],{"class":90},[84,45578,45579,45581,45583],{"class":86,"line":201},[84,45580,324],{"class":90},[84,45582,4978],{"class":94},[84,45584,102],{"class":90},[84,45586,45587,45589,45591,45593,45595,45597,45599,45601],{"class":86,"line":217},[84,45588,299],{"class":90},[84,45590,302],{"class":94},[84,45592,305],{"class":98},[84,45594,184],{"class":90},[84,45596,13204],{"class":118},[84,45598,45345],{"class":90},[84,45600,302],{"class":94},[84,45602,102],{"class":90},[84,45604,45605,45607,45609],{"class":86,"line":227},[84,45606,274],{"class":90},[84,45608,291],{"class":94},[84,45610,102],{"class":90},[74,45612,45615],{"className":76,"code":45613,"filename":1782,"highlights":45614,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      value: 10\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cdiv v-memo=\"[value]\">\n    \u003Cp>El valor es: {{ value }}\u003C\u002Fp>\n  \u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n",[227],[22,45616,45617,45625,45633,45639,45645,45653,45657,45661,45665,45673,45677,45685,45701,45714,45722],{"__ignoreMap":80},[84,45618,45619,45621,45623],{"class":86,"line":87},[84,45620,91],{"class":90},[84,45622,95],{"class":94},[84,45624,102],{"class":90},[84,45626,45627,45629,45631],{"class":86,"line":105},[84,45628,418],{"class":108},[84,45630,1870],{"class":108},[84,45632,175],{"class":90},[84,45634,45635,45637],{"class":86,"line":122},[84,45636,1896],{"class":98},[84,45638,1307],{"class":90},[84,45640,45641,45643],{"class":86,"line":129},[84,45642,1903],{"class":108},[84,45644,175],{"class":90},[84,45646,45647,45650],{"class":86,"line":154},[84,45648,45649],{"class":90},"      value: ",[84,45651,45652],{"class":135},"10\n",[84,45654,45655],{"class":86,"line":159},[84,45656,1936],{"class":90},[84,45658,45659],{"class":86,"line":178},[84,45660,485],{"class":90},[84,45662,45663],{"class":86,"line":190},[84,45664,193],{"class":90},[84,45666,45667,45669,45671],{"class":86,"line":196},[84,45668,274],{"class":90},[84,45670,95],{"class":94},[84,45672,102],{"class":90},[84,45674,45675],{"class":86,"line":201},[84,45676,126],{"emptyLinePlaceholder":125},[84,45678,45679,45681,45683],{"class":86,"line":217},[84,45680,91],{"class":90},[84,45682,291],{"class":94},[84,45684,102],{"class":90},[84,45686,45688,45690,45692,45694,45696,45699],{"class":45687,"line":227},[86,10151],[84,45689,299],{"class":90},[84,45691,4978],{"class":94},[84,45693,45556],{"class":98},[84,45695,184],{"class":90},[84,45697,45698],{"class":118},"\"[value]\"",[84,45700,102],{"class":90},[84,45702,45703,45705,45707,45710,45712],{"class":86,"line":232},[84,45704,1642],{"class":90},[84,45706,15],{"class":94},[84,45708,45709],{"class":90},">El valor es: {{ value }}\u003C\u002F",[84,45711,15],{"class":94},[84,45713,102],{"class":90},[84,45715,45716,45718,45720],{"class":86,"line":237},[84,45717,324],{"class":90},[84,45719,4978],{"class":94},[84,45721,102],{"class":90},[84,45723,45724,45726,45728],{"class":86,"line":253},[84,45725,274],{"class":90},[84,45727,291],{"class":94},[84,45729,102],{"class":90},[15,45731,45732,45733,45736],{},"Es una ",[958,45734,45735],{},"optimización avanzada",".\nNo está pensada para usarse “porque sí”, sino en cuellos de botella reales.",[34,45738,45739],{"id":22615},[22,45740,22615],{},[15,45742,45743],{},"Evita que Vue compile el contenido del nodo.",[74,45745,45748],{"className":76,"code":45746,"filename":873,"highlights":45747,"language":79,"meta":80,"style":80},"\u003Cscript setup>\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cdiv v-pre>\n    {{ esto_no_se_evaluará }}\n  \u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n",[154],[22,45749,45750,45760,45768,45772,45780,45791,45796,45804],{"__ignoreMap":80},[84,45751,45752,45754,45756,45758],{"class":86,"line":87},[84,45753,91],{"class":90},[84,45755,95],{"class":94},[84,45757,99],{"class":98},[84,45759,102],{"class":90},[84,45761,45762,45764,45766],{"class":86,"line":105},[84,45763,274],{"class":90},[84,45765,95],{"class":94},[84,45767,102],{"class":90},[84,45769,45770],{"class":86,"line":122},[84,45771,126],{"emptyLinePlaceholder":125},[84,45773,45774,45776,45778],{"class":86,"line":129},[84,45775,91],{"class":90},[84,45777,291],{"class":94},[84,45779,102],{"class":90},[84,45781,45783,45785,45787,45789],{"class":45782,"line":154},[86,10151],[84,45784,299],{"class":90},[84,45786,4978],{"class":94},[84,45788,23911],{"class":98},[84,45790,102],{"class":90},[84,45792,45793],{"class":86,"line":159},[84,45794,45795],{"class":90},"    {{ esto_no_se_evaluará }}\n",[84,45797,45798,45800,45802],{"class":86,"line":178},[84,45799,324],{"class":90},[84,45801,4978],{"class":94},[84,45803,102],{"class":90},[84,45805,45806,45808,45810],{"class":86,"line":190},[84,45807,274],{"class":90},[84,45809,291],{"class":94},[84,45811,102],{"class":90},[74,45813,45816],{"className":76,"code":45814,"filename":1782,"highlights":45815,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cdiv v-pre>\n    {{ esto_no_se_evaluará }}\n  \u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n",[159],[22,45817,45818,45826,45835,45843,45847,45855,45866,45870,45878],{"__ignoreMap":80},[84,45819,45820,45822,45824],{"class":86,"line":87},[84,45821,91],{"class":90},[84,45823,95],{"class":94},[84,45825,102],{"class":90},[84,45827,45828,45830,45832],{"class":86,"line":105},[84,45829,418],{"class":108},[84,45831,1870],{"class":108},[84,45833,45834],{"class":90}," {}\n",[84,45836,45837,45839,45841],{"class":86,"line":122},[84,45838,274],{"class":90},[84,45840,95],{"class":94},[84,45842,102],{"class":90},[84,45844,45845],{"class":86,"line":129},[84,45846,126],{"emptyLinePlaceholder":125},[84,45848,45849,45851,45853],{"class":86,"line":154},[84,45850,91],{"class":90},[84,45852,291],{"class":94},[84,45854,102],{"class":90},[84,45856,45858,45860,45862,45864],{"class":45857,"line":159},[86,10151],[84,45859,299],{"class":90},[84,45861,4978],{"class":94},[84,45863,23911],{"class":98},[84,45865,102],{"class":90},[84,45867,45868],{"class":86,"line":178},[84,45869,45795],{"class":90},[84,45871,45872,45874,45876],{"class":86,"line":190},[84,45873,324],{"class":90},[84,45875,4978],{"class":94},[84,45877,102],{"class":90},[84,45879,45880,45882,45884],{"class":86,"line":196},[84,45881,274],{"class":90},[84,45883,291],{"class":94},[84,45885,102],{"class":90},[15,45887,45888],{},"Perfecta para mostrar snippets, ejemplos literales o templates de demostración.",[34,45890,45891],{"id":21317},[22,45892,21317],{},[15,45894,45895],{},"Oculta el template hasta que Vue termine de montar la aplicación.",[74,45897,45900],{"className":76,"code":45898,"filename":873,"highlights":45899,"language":79,"meta":80,"style":80},"\u003Cscript setup>\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cdiv v-cloak>\n    {{ mensaje }}\n  \u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n",[154],[22,45901,45902,45912,45920,45924,45932,45943,45948,45956],{"__ignoreMap":80},[84,45903,45904,45906,45908,45910],{"class":86,"line":87},[84,45905,91],{"class":90},[84,45907,95],{"class":94},[84,45909,99],{"class":98},[84,45911,102],{"class":90},[84,45913,45914,45916,45918],{"class":86,"line":105},[84,45915,274],{"class":90},[84,45917,95],{"class":94},[84,45919,102],{"class":90},[84,45921,45922],{"class":86,"line":122},[84,45923,126],{"emptyLinePlaceholder":125},[84,45925,45926,45928,45930],{"class":86,"line":129},[84,45927,91],{"class":90},[84,45929,291],{"class":94},[84,45931,102],{"class":90},[84,45933,45935,45937,45939,45941],{"class":45934,"line":154},[86,10151],[84,45936,299],{"class":90},[84,45938,4978],{"class":94},[84,45940,21708],{"class":98},[84,45942,102],{"class":90},[84,45944,45945],{"class":86,"line":159},[84,45946,45947],{"class":90},"    {{ mensaje }}\n",[84,45949,45950,45952,45954],{"class":86,"line":178},[84,45951,324],{"class":90},[84,45953,4978],{"class":94},[84,45955,102],{"class":90},[84,45957,45958,45960,45962],{"class":86,"line":190},[84,45959,274],{"class":90},[84,45961,291],{"class":94},[84,45963,102],{"class":90},[74,45965,45968],{"className":76,"code":45966,"filename":1782,"highlights":45967,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cdiv v-cloak>\n    {{ mensaje }}\n  \u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n",[159],[22,45969,45970,45978,45986,45994,45998,46006,46017,46021,46029],{"__ignoreMap":80},[84,45971,45972,45974,45976],{"class":86,"line":87},[84,45973,91],{"class":90},[84,45975,95],{"class":94},[84,45977,102],{"class":90},[84,45979,45980,45982,45984],{"class":86,"line":105},[84,45981,418],{"class":108},[84,45983,1870],{"class":108},[84,45985,45834],{"class":90},[84,45987,45988,45990,45992],{"class":86,"line":122},[84,45989,274],{"class":90},[84,45991,95],{"class":94},[84,45993,102],{"class":90},[84,45995,45996],{"class":86,"line":129},[84,45997,126],{"emptyLinePlaceholder":125},[84,45999,46000,46002,46004],{"class":86,"line":154},[84,46001,91],{"class":90},[84,46003,291],{"class":94},[84,46005,102],{"class":90},[84,46007,46009,46011,46013,46015],{"class":46008,"line":159},[86,10151],[84,46010,299],{"class":90},[84,46012,4978],{"class":94},[84,46014,21708],{"class":98},[84,46016,102],{"class":90},[84,46018,46019],{"class":86,"line":178},[84,46020,45947],{"class":90},[84,46022,46023,46025,46027],{"class":86,"line":190},[84,46024,324],{"class":90},[84,46026,4978],{"class":94},[84,46028,102],{"class":90},[84,46030,46031,46033,46035],{"class":86,"line":196},[84,46032,274],{"class":90},[84,46034,291],{"class":94},[84,46036,102],{"class":90},[15,46038,46039],{},"Evita el parpadeo inicial en aplicaciones renderizadas del lado del cliente.",[34,46041,4019],{"id":46042},"directivas-personalizadas",[15,46044,46045],{},"Permiten extender Vue para manipular directamente el DOM cuando no hay otra opción más declarativa.",[74,46047,46050],{"className":394,"code":46048,"filename":20153,"highlights":46049,"language":397,"meta":80,"style":80},"import { createApp } from 'vue'\nimport App from '.\u002FApp.vue'\nconst app = createApp(App)\napp.directive('focus', {\n  mounted(el) {\n    el.focus()\n  }\n})\n",[129,154,159,178,190],[22,46051,46052,46063,46075,46090,46106,46117,46127,46132],{"__ignoreMap":80},[84,46053,46054,46056,46059,46061],{"class":86,"line":87},[84,46055,109],{"class":108},[84,46057,46058],{"class":90}," { createApp } ",[84,46060,115],{"class":108},[84,46062,119],{"class":118},[84,46064,46065,46067,46070,46072],{"class":86,"line":105},[84,46066,109],{"class":108},[84,46068,46069],{"class":90}," App ",[84,46071,115],{"class":108},[84,46073,46074],{"class":118}," '.\u002FApp.vue'\n",[84,46076,46077,46079,46082,46084,46087],{"class":86,"line":122},[84,46078,132],{"class":108},[84,46080,46081],{"class":135}," app",[84,46083,139],{"class":108},[84,46085,46086],{"class":98}," createApp",[84,46088,46089],{"class":90},"(App)\n",[84,46091,46093,46096,46099,46101,46104],{"class":46092,"line":129},[86,10151],[84,46094,46095],{"class":90},"app.",[84,46097,46098],{"class":98},"directive",[84,46100,145],{"class":90},[84,46102,46103],{"class":118},"'focus'",[84,46105,3146],{"class":90},[84,46107,46109,46111,46113,46115],{"class":46108,"line":154},[86,10151],[84,46110,7551],{"class":98},[84,46112,145],{"class":90},[84,46114,19036],{"class":429},[84,46116,438],{"class":90},[84,46118,46120,46123,46125],{"class":46119,"line":159},[86,10151],[84,46121,46122],{"class":90},"    el.",[84,46124,12222],{"class":98},[84,46126,635],{"class":90},[84,46128,46130],{"class":46129,"line":178},[86,10151],[84,46131,485],{"class":90},[84,46133,46135],{"class":46134,"line":190},[86,10151],[84,46136,1492],{"class":90},[74,46138,46141],{"className":76,"code":46139,"filename":10092,"highlights":46140,"language":79,"meta":80,"style":80},"\u003Ctemplate>\n  \u003Cinput v-focus \u002F>\n\u003C\u002Ftemplate>\n",[105],[22,46142,46143,46151,46163],{"__ignoreMap":80},[84,46144,46145,46147,46149],{"class":86,"line":87},[84,46146,91],{"class":90},[84,46148,291],{"class":94},[84,46150,102],{"class":90},[84,46152,46154,46156,46158,46161],{"class":46153,"line":105},[86,10151],[84,46155,299],{"class":90},[84,46157,18759],{"class":94},[84,46159,46160],{"class":98}," v-focus",[84,46162,5100],{"class":90},[84,46164,46165,46167,46169],{"class":86,"line":122},[84,46166,274],{"class":90},[84,46168,291],{"class":94},[84,46170,102],{"class":90},[15,46172,46173],{},"Son poderosas, pero deben usarse con cuidado:\nsi abusas de ellas, probablemente estás rompiendo el modelo mental de Vue.",[34,46175,18395],{"id":18394},[15,46177,46178,46179,764],{},"Las directivas no son solo sintaxis bonita.\nSon ",[958,46180,46181],{},"contratos claros entre el estado y el DOM",[15,46183,46184],{},"Este artículo es el punto de partida.\nCada directiva tendrá su entrada individual, con:",[737,46186,46187,46190,46192],{},[740,46188,46189],{},"Casos reales",[740,46191,784],{},[740,46193,46194],{},"Buenas y malas prácticas",[15,46196,46197,46198,46201],{},"Este mapa ya te permite ",[958,46199,46200],{},"leer código Vue con criterio",".\nLo demás es profundidad, no confusión.",[835,46203,837],{},{"title":80,"searchDepth":105,"depth":105,"links":46205},[46206,46207,46209,46210,46211,46212,46213,46214,46215,46216,46217,46218,46219,46220,46221,46222],{"id":13901,"depth":105,"text":13902},{"id":42949,"depth":105,"text":46208},"v-if, v-else-if, v-else",{"id":8462,"depth":105,"text":8462},{"id":25577,"depth":105,"text":25577},{"id":18692,"depth":105,"text":18692},{"id":18689,"depth":105,"text":18689},{"id":18695,"depth":105,"text":18695},{"id":25284,"depth":105,"text":25284},{"id":25287,"depth":105,"text":25287},{"id":26560,"depth":105,"text":26560},{"id":22609,"depth":105,"text":22609},{"id":22612,"depth":105,"text":22612},{"id":22615,"depth":105,"text":22615},{"id":21317,"depth":105,"text":21317},{"id":46042,"depth":105,"text":4019},{"id":18394,"depth":105,"text":18395},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1770161262\u002Fvue-directives-overview_qyrngz.png","2026-02-04","Explora las directivas esenciales de Vue.js, su sintaxis y casos de uso comunes.",{"updatedAt":28785,"readingTime":159,"coverCaption":46227,"author":868,"keywords":46228},"Imagen destacada que representa las directivas en Vue.js.",[870,21297,46229,891],"Desarrollo Frontend","\u002Fblog\u002Fvue-directives-overview.es",[46232],{"headline":42857,"author":46233,"datePublished":46234,"@type":880},{"name":868,"@type":879},"2026-02-03T20:00:00-05:00",{"title":42857,"description":46225},"blog\u002Fvue-directives-overview.es",[46238,46239,46240,46241,46242,46243],{"tag":21297,"color":21298},{"tag":22594,"color":22595},{"tag":42850,"color":42851},{"tag":40984,"color":3946},{"tag":3945,"color":3946},{"tag":894,"color":895},"JwLOQaBKN45DaJoFg7X918rNjFPTm8MZd7iOm0BuH68",{"id":46246,"title":46247,"body":46248,"cover":47008,"coverAlt":46247,"date":47009,"description":47010,"draft":852,"extension":853,"lab":882,"locale":864,"meta":47011,"navigation":125,"path":47017,"schemaOrg":47018,"seo":47022,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":47023,"tags":47024,"__hash__":47032},"blog\u002Fblog\u002Fmastering-renderless-components-vue-3.es.md","Patrones Avanzados en Vue 3: El Poder de los Renderless Components",{"type":8,"value":46249,"toc":46997},[46250,46254,46265,46269,46276,46283,46287,46301,46305,46308,46458,46611,46617,46729,46736,46756,46847,46850,46854,46863,46942,46954,46958,46981,46985,46994],[11,46251,46253],{"id":46252},"el-patrón-renderless-en-vue-3-arquitectura-y-separación-de-responsabilidades","El Patrón Renderless en Vue 3: Arquitectura y Separación de Responsabilidades",[15,46255,46256,46257,46260,46261,46264],{},"En el ecosistema de Vue 3, la reutilización de código ha evolucionado significativamente gracias a la Composition API. Sin embargo, persiste un desafío recurrente: ",[958,46258,46259],{},"¿Cómo compartir una lógica de interfaz compleja sin imponer un diseño o una estructura HTML específicos?"," Aquí es donde el patrón de ",[958,46262,46263],{},"Renderless Components"," se consolida como una herramienta indispensable para la arquitectura de software.",[34,46266,46268],{"id":46267},"qué-es-un-renderless-component","¿Qué es un Renderless Component?",[15,46270,46271,46272,46275],{},"Un componente ",[4070,46273,46274],{},"renderless"," (sin renderizado) es aquel que no genera ningún marcado propio ni estilos CSS. Su única responsabilidad es encapsular el estado y la lógica de comportamiento para exponer estos datos al componente padre. El padre, a su vez, decide exactamente qué elementos del DOM utilizar y cómo estilizarlos.",[15,46277,46278,46279,46282],{},"Este patrón es la columna vertebral de las ",[958,46280,46281],{},"bibliotecas \"Headless UI\"",", permitiendo que la lógica de un componente —como la gestión de un modal, un desplegable o un formulario— sea universal, mientras que el diseño permanece 100% personalizable.",[34,46284,46286],{"id":46285},"el-motor-scoped-slots","El Motor: Scoped Slots",[15,46288,46289,46290,46293,46294,46296,46297,46300],{},"La implementación de este patrón se apoya en los ",[958,46291,46292],{},"Scoped Slots",". A diferencia de un ",[4070,46295,26638],{}," convencional, un ",[4070,46298,46299],{},"scoped slot"," permite al componente hijo enviar datos \"hacia arriba\" a la plantilla del padre en el momento de la ejecución.",[1074,46302,46304],{"id":46303},"ejemplo-práctico-un-controlador-de-visibilidad","Ejemplo Práctico: Un Controlador de Visibilidad",[15,46306,46307],{},"Imagina un componente que gestiona el estado de \"abierto\u002Fcerrado\", algo esencial en menús y modales.",[74,46309,46313],{"className":76,"code":46310,"filename":46311,"highlights":46312,"language":79,"meta":80,"style":80},"\u003Cscript setup>\n  import { ref } from 'vue';\n\n  const isOpen = ref(false);\n  const toggle = () => {\n    isOpen.value = !isOpen.value;\n  };\n\n  \u002F\u002F Exponemos el estado y el método al slot\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cslot :isOpen=\"isOpen\" :toggle=\"toggle\">\u003C\u002Fslot>\n\u003C\u002Ftemplate>\n","LogicToggle.vue - Composition API",[129,154,159,178,232],[22,46314,46315,46325,46339,46343,46360,46375,46388,46394,46398,46403,46411,46415,46423,46450],{"__ignoreMap":80},[84,46316,46317,46319,46321,46323],{"class":86,"line":87},[84,46318,91],{"class":90},[84,46320,95],{"class":94},[84,46322,99],{"class":98},[84,46324,102],{"class":90},[84,46326,46327,46330,46332,46334,46337],{"class":86,"line":105},[84,46328,46329],{"class":108},"  import",[84,46331,112],{"class":90},[84,46333,115],{"class":108},[84,46335,46336],{"class":118}," 'vue'",[84,46338,18869],{"class":90},[84,46340,46341],{"class":86,"line":122},[84,46342,126],{"emptyLinePlaceholder":125},[84,46344,46346,46348,46350,46352,46354,46356,46358],{"class":46345,"line":129},[86,10151],[84,46347,443],{"class":108},[84,46349,136],{"class":135},[84,46351,139],{"class":108},[84,46353,142],{"class":98},[84,46355,145],{"class":90},[84,46357,148],{"class":135},[84,46359,18994],{"class":90},[84,46361,46363,46365,46367,46369,46371,46373],{"class":46362,"line":154},[86,10151],[84,46364,443],{"class":108},[84,46366,242],{"class":98},[84,46368,139],{"class":108},[84,46370,169],{"class":90},[84,46372,172],{"class":108},[84,46374,175],{"class":90},[84,46376,46378,46381,46383,46385],{"class":46377,"line":159},[86,10151],[84,46379,46380],{"class":90},"    isOpen.value ",[84,46382,184],{"class":108},[84,46384,260],{"class":108},[84,46386,46387],{"class":90},"isOpen.value;\n",[84,46389,46391],{"class":46390,"line":178},[86,10151],[84,46392,46393],{"class":90},"  };\n",[84,46395,46396],{"class":86,"line":190},[84,46397,126],{"emptyLinePlaceholder":125},[84,46399,46400],{"class":86,"line":196},[84,46401,46402],{"class":13481},"  \u002F\u002F Exponemos el estado y el método al slot\n",[84,46404,46405,46407,46409],{"class":86,"line":201},[84,46406,274],{"class":90},[84,46408,95],{"class":94},[84,46410,102],{"class":90},[84,46412,46413],{"class":86,"line":217},[84,46414,126],{"emptyLinePlaceholder":125},[84,46416,46417,46419,46421],{"class":86,"line":227},[84,46418,91],{"class":90},[84,46420,291],{"class":94},[84,46422,102],{"class":90},[84,46424,46426,46428,46430,46433,46435,46437,46440,46442,46444,46446,46448],{"class":46425,"line":232},[86,10151],[84,46427,299],{"class":90},[84,46429,26638],{"class":94},[84,46431,46432],{"class":98}," :isOpen",[84,46434,184],{"class":90},[84,46436,349],{"class":118},[84,46438,46439],{"class":98}," :toggle",[84,46441,184],{"class":90},[84,46443,310],{"class":118},[84,46445,25387],{"class":90},[84,46447,26638],{"class":94},[84,46449,102],{"class":90},[84,46451,46452,46454,46456],{"class":86,"line":237},[84,46453,274],{"class":90},[84,46455,291],{"class":94},[84,46457,102],{"class":90},[74,46459,46463],{"className":76,"code":46460,"filename":46461,"highlights":46462,"language":79,"meta":80,"style":80},"\u003Cscript>\n  export default {\n    data() {\n      return {\n        isOpen: false\n      };\n    },\n    methods: {\n      toggle() {\n        this.isOpen = !this.isOpen;\n      }\n    }\n  };\n  \u002F\u002F Exponemos el estado y el método al slot\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cslot :isOpen=\"isOpen\" :toggle=\"toggle\">\u003C\u002Fslot>\n\u003C\u002Ftemplate>\n","LogicToggle.vue - Options API",[154,196,201,217,281],[22,46464,46465,46473,46482,46489,46495,46503,46507,46511,46516,46524,46541,46546,46550,46554,46558,46566,46570,46578,46603],{"__ignoreMap":80},[84,46466,46467,46469,46471],{"class":86,"line":87},[84,46468,91],{"class":90},[84,46470,95],{"class":94},[84,46472,102],{"class":90},[84,46474,46475,46478,46480],{"class":86,"line":105},[84,46476,46477],{"class":108},"  export",[84,46479,1870],{"class":108},[84,46481,175],{"class":90},[84,46483,46484,46487],{"class":86,"line":122},[84,46485,46486],{"class":98},"    data",[84,46488,1307],{"class":90},[84,46490,46491,46493],{"class":86,"line":129},[84,46492,3539],{"class":108},[84,46494,175],{"class":90},[84,46496,46498,46501],{"class":46497,"line":154},[86,10151],[84,46499,46500],{"class":90},"        isOpen: ",[84,46502,2833],{"class":135},[84,46504,46505],{"class":86,"line":159},[84,46506,37238],{"class":90},[84,46508,46509],{"class":86,"line":178},[84,46510,7783],{"class":90},[84,46512,46513],{"class":86,"line":190},[84,46514,46515],{"class":90},"    methods: {\n",[84,46517,46519,46522],{"class":46518,"line":196},[86,10151],[84,46520,46521],{"class":98},"      toggle",[84,46523,1307],{"class":90},[84,46525,46527,46529,46532,46534,46536,46538],{"class":46526,"line":201},[86,10151],[84,46528,9580],{"class":135},[84,46530,46531],{"class":90},".isOpen ",[84,46533,184],{"class":108},[84,46535,260],{"class":108},[84,46537,2151],{"class":135},[84,46539,46540],{"class":90},".isOpen;\n",[84,46542,46544],{"class":46543,"line":217},[86,10151],[84,46545,2013],{"class":90},[84,46547,46548],{"class":86,"line":227},[84,46549,1936],{"class":90},[84,46551,46552],{"class":86,"line":232},[84,46553,46393],{"class":90},[84,46555,46556],{"class":86,"line":237},[84,46557,46402],{"class":13481},[84,46559,46560,46562,46564],{"class":86,"line":253},[84,46561,274],{"class":90},[84,46563,95],{"class":94},[84,46565,102],{"class":90},[84,46567,46568],{"class":86,"line":266},[84,46569,126],{"emptyLinePlaceholder":125},[84,46571,46572,46574,46576],{"class":86,"line":271},[84,46573,91],{"class":90},[84,46575,291],{"class":94},[84,46577,102],{"class":90},[84,46579,46581,46583,46585,46587,46589,46591,46593,46595,46597,46599,46601],{"class":46580,"line":281},[86,10151],[84,46582,299],{"class":90},[84,46584,26638],{"class":94},[84,46586,46432],{"class":98},[84,46588,184],{"class":90},[84,46590,349],{"class":118},[84,46592,46439],{"class":98},[84,46594,184],{"class":90},[84,46596,310],{"class":118},[84,46598,25387],{"class":90},[84,46600,26638],{"class":94},[84,46602,102],{"class":90},[84,46604,46605,46607,46609],{"class":86,"line":286},[84,46606,274],{"class":90},[84,46608,291],{"class":94},[84,46610,102],{"class":90},[15,46612,46613,46616],{},[958,46614,46615],{},"Implementación en el Padre","\nAl consumir este componente, gozas de total libertad creativa:",[74,46618,46622],{"className":76,"code":46619,"filename":46620,"highlights":46621,"language":79,"meta":80,"style":80},"\u003Ctemplate>\n  \u003CLogicToggle v-slot=\"{ isOpen, toggle }\">\n    \u003Cbutton @click=\"toggle\">\n      {{ isOpen ? 'Cerrar Menú' : 'Abrir Menú' }}\n    \u003C\u002Fbutton>\n    \u003Cdiv v-if=\"isOpen\" class=\"custom-dropdown\">\n      Contenido dinámico aquí\n    \u003C\u002Fdiv>\n  \u003C\u002FLogicToggle>\n\u003C\u002Ftemplate>\n","ParentComponent.vue",[105,122,129,159],[22,46623,46624,46632,46649,46664,46670,46678,46700,46705,46713,46721],{"__ignoreMap":80},[84,46625,46626,46628,46630],{"class":86,"line":87},[84,46627,91],{"class":90},[84,46629,291],{"class":94},[84,46631,102],{"class":90},[84,46633,46635,46637,46640,46642,46644,46647],{"class":46634,"line":105},[86,10151],[84,46636,299],{"class":90},[84,46638,46639],{"class":94},"LogicToggle",[84,46641,26882],{"class":98},[84,46643,184],{"class":90},[84,46645,46646],{"class":118},"\"{ isOpen, toggle }\"",[84,46648,102],{"class":90},[84,46650,46652,46654,46656,46658,46660,46662],{"class":46651,"line":122},[86,10151],[84,46653,1642],{"class":90},[84,46655,302],{"class":94},[84,46657,305],{"class":98},[84,46659,184],{"class":90},[84,46661,310],{"class":118},[84,46663,102],{"class":90},[84,46665,46667],{"class":46666,"line":129},[86,10151],[84,46668,46669],{"class":90},"      {{ isOpen ? 'Cerrar Menú' : 'Abrir Menú' }}\n",[84,46671,46672,46674,46676],{"class":86,"line":154},[84,46673,1734],{"class":90},[84,46675,302],{"class":94},[84,46677,102],{"class":90},[84,46679,46681,46683,46685,46687,46689,46691,46693,46695,46698],{"class":46680,"line":159},[86,10151],[84,46682,1642],{"class":90},[84,46684,4978],{"class":94},[84,46686,344],{"class":98},[84,46688,184],{"class":90},[84,46690,349],{"class":118},[84,46692,1629],{"class":98},[84,46694,184],{"class":90},[84,46696,46697],{"class":118},"\"custom-dropdown\"",[84,46699,102],{"class":90},[84,46701,46702],{"class":86,"line":178},[84,46703,46704],{"class":90},"      Contenido dinámico aquí\n",[84,46706,46707,46709,46711],{"class":86,"line":190},[84,46708,1734],{"class":90},[84,46710,4978],{"class":94},[84,46712,102],{"class":90},[84,46714,46715,46717,46719],{"class":86,"line":196},[84,46716,324],{"class":90},[84,46718,46639],{"class":94},[84,46720,102],{"class":90},[84,46722,46723,46725,46727],{"class":86,"line":201},[84,46724,274],{"class":90},[84,46726,291],{"class":94},[84,46728,102],{"class":90},[34,46730,46732,46733,909],{"id":46731},"optimización-senior-render-functions-h","Optimización Senior: Render Functions (",[22,46734,46735],{},"h",[15,46737,46738,46739,46741,46742,46745,46746,1341,46748,46751,46752,46755],{},"Para alcanzar un nivel de producción profesional, especialmente en bibliotecas distribuidas vía NPM, es recomendable prescindir del bloque ",[22,46740,26850],{},". Al utilizar la función ",[22,46743,46744],{},"render"," y el método ",[22,46747,46735],{},[4070,46749,46750],{},"hyperscript","), eliminamos la ",[958,46753,46754],{},"sobrecarga"," de la compilación de plantillas y evitamos la creación de nodos adicionales innecesarios en el DOM.",[74,46757,46763],{"className":46758,"code":46759,"filename":46760,"highlights":46761,"language":46762,"meta":80,"style":80},"language-javascript shiki shiki-themes github-light github-dark","import { ref, h } from 'vue';\n\nexport default {\n  setup(props, { slots }) {\n    const isOpen = ref(false);\n    const toggle = () => (isOpen.value = !isOpen.value);\n\n    return () => {\n      \u002F\u002F Retornamos el slot por defecto pasando el estado\n      return slots.default ? slots.default({\n        isOpen: isOpen.value,\n        toggle\n      }) : null;\n    };\n  }\n};\n","LogicToggle.js",[129,154,159,201,217,227,232],"javascript",[22,46764,46765,46770,46774,46779,46785,46791,46797,46801,46806,46811,46817,46823,46829,46835,46839,46843],{"__ignoreMap":80},[84,46766,46767],{"class":86,"line":87},[84,46768,46769],{},"import { ref, h } from 'vue';\n",[84,46771,46772],{"class":86,"line":105},[84,46773,126],{"emptyLinePlaceholder":125},[84,46775,46776],{"class":86,"line":122},[84,46777,46778],{},"export default {\n",[84,46780,46782],{"class":46781,"line":129},[86,10151],[84,46783,46784],{},"  setup(props, { slots }) {\n",[84,46786,46788],{"class":46787,"line":154},[86,10151],[84,46789,46790],{},"    const isOpen = ref(false);\n",[84,46792,46794],{"class":46793,"line":159},[86,10151],[84,46795,46796],{},"    const toggle = () => (isOpen.value = !isOpen.value);\n",[84,46798,46799],{"class":86,"line":178},[84,46800,126],{"emptyLinePlaceholder":125},[84,46802,46803],{"class":86,"line":190},[84,46804,46805],{},"    return () => {\n",[84,46807,46808],{"class":86,"line":196},[84,46809,46810],{},"      \u002F\u002F Retornamos el slot por defecto pasando el estado\n",[84,46812,46814],{"class":46813,"line":201},[86,10151],[84,46815,46816],{},"      return slots.default ? slots.default({\n",[84,46818,46820],{"class":46819,"line":217},[86,10151],[84,46821,46822],{},"        isOpen: isOpen.value,\n",[84,46824,46826],{"class":46825,"line":227},[86,10151],[84,46827,46828],{},"        toggle\n",[84,46830,46832],{"class":46831,"line":232},[86,10151],[84,46833,46834],{},"      }) : null;\n",[84,46836,46837],{"class":86,"line":237},[84,46838,19195],{},[84,46840,46841],{"class":86,"line":253},[84,46842,485],{},[84,46844,46845],{"class":86,"line":266},[84,46846,18973],{},[15,46848,46849],{},"Esta aproximación permite que el componente actúe como un \"pasamanos\" puro de datos, manteniendo el Virtual DOM limpio y eficiente.",[34,46851,46853],{"id":46852},"renderless-components-vs-composables","Renderless Components vs. Composables",[15,46855,46856,46857,1341,46860,46862],{},"Una duda frecuente es por qué no utilizar simplemente un ",[4070,46858,46859],{},"Composable",[22,46861,388],{},"). La elección depende del contexto:",[6160,46864,46865,46876],{},[6163,46866,46867],{},[6166,46868,46869,46872,46874],{},[6169,46870,46871],{},"Característica",[6169,46873,872],{},[6169,46875,46263],{},[6182,46877,46878,46891,46904,46917,46929],{},[6166,46879,46880,46885,46888],{},[6187,46881,46882],{},[958,46883,46884],{},"Encapsulación",[6187,46886,46887],{},"Lógica pura de JavaScript.",[6187,46889,46890],{},"Lógica ligada al ciclo de vida del componente.",[6166,46892,46893,46898,46901],{},[6187,46894,46895],{},[958,46896,46897],{},"Plantilla",[6187,46899,46900],{},"Se importa en el script.",[6187,46902,46903],{},"Se define de forma declarativa en la plantilla.",[6166,46905,46906,46911,46914],{},[6187,46907,46908],{},[958,46909,46910],{},"Ámbito",[6187,46912,46913],{},"Ideal para lógica global o de negocio.",[6187,46915,46916],{},"Ideal para patrones de UI (accesibilidad, eventos).",[6166,46918,46919,46923,46926],{},[6187,46920,46921],{},[958,46922,27031],{},[6187,46924,46925],{},"No tiene acceso a slots.",[6187,46927,46928],{},"Puede orquestar múltiples subcomponentes.",[6166,46930,46931,46936,46939],{},[6187,46932,46933],{},[958,46934,46935],{},"Curva de aprendizaje",[6187,46937,46938],{},"Requiere entender reactividad pura.",[6187,46940,46941],{},"Más intuitivo para desarrolladores de plantillas.",[15,46943,46944,46945,46947,46948,46950,46951,2686],{},"Los ",[4070,46946,46263],{}," brillan cuando la lógica requiere interactuar con el ciclo de vida (como ",[22,46949,1503],{},") o cuando deseas crear una jerarquía de componentes que compartan un estado implícito (",[4070,46952,46953],{},"Compound Components",[34,46955,46957],{"id":46956},"ventajas-competitivas-del-patrón","Ventajas Competitivas del Patrón",[10842,46959,46960,46969,46975],{},[740,46961,46962,46965,46966,46968],{},[958,46963,46964],{},"Mantenibilidad:"," Si la lógica de validación cambia, solo modificas el componente ",[4070,46967,46274],{},". La interfaz permanece intacta.",[740,46970,46971,46974],{},[958,46972,46973],{},"Testabilidad:"," Facilita las pruebas unitarias sobre la lógica de estado sin lidiar con selectores de CSS o colisiones de estilos.",[740,46976,46977,46980],{},[958,46978,46979],{},"Extensibilidad:"," Permite crear múltiples versiones visuales de una misma funcionalidad sin duplicar código lógico.",[34,46982,46984],{"id":46983},"consideraciones-finales","Consideraciones Finales",[15,46986,46987,46988,46990,46991,46993],{},"Si bien este patrón ofrece una flexibilidad inigualable, debe usarse con criterio. En plantillas muy extensas, el uso excesivo de ",[22,46989,26560],{}," puede dificultar la lectura del código. Sin embargo, para el desarrollo de sistemas de diseño y bibliotecas de componentes, los ",[958,46992,46263],{}," representan el estándar de oro en la arquitectura de Vue 3.",[835,46995,46996],{},"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 .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}",{"title":80,"searchDepth":105,"depth":105,"links":46998},[46999,47000,47003,47005,47006,47007],{"id":46267,"depth":105,"text":46268},{"id":46285,"depth":105,"text":46286,"children":47001},[47002],{"id":46303,"depth":122,"text":46304},{"id":46731,"depth":105,"text":47004},"Optimización Senior: Render Functions (h)",{"id":46852,"depth":105,"text":46853},{"id":46956,"depth":105,"text":46957},{"id":46983,"depth":105,"text":46984},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1769789805\u002Fmastering-renderless-components-vue-3_f5mqbs.png","2026-01-30","Explora cómo los Renderless Components en Vue 3 pueden mejorar la reutilización de código y la separación de lógica y presentación en tus aplicaciones.",{"updatedAt":47012,"coverCaption":47013,"author":868,"keywords":47014},"2026-02-11T00:00:00-05:00","Imagen destacada que representa el concepto de Renderless Components en Vue 3.",[871,46263,47015,47016,46229],"Reutilización de Código","Patrones de Diseño","\u002Fblog\u002Fmastering-renderless-components-vue-3.es",[47019],{"headline":46247,"author":47020,"datePublished":47021,"@type":880},{"name":868,"@type":879},"2026-01-30T17:00:00-05:00",{"title":46247,"description":47010},"blog\u002Fmastering-renderless-components-vue-3.es",[47025,47026,47028,47029,47030,47031],{"tag":2458,"color":2459},{"tag":47016,"color":47027},"#9C27B0",{"tag":888,"color":889},{"tag":3945,"color":3946},{"tag":2462,"color":2463},{"tag":891,"color":892},"a_WGc5ZiKCCKMfNqNWcLEnmC9vGBd9ANrFgOlARIchw",{"id":47034,"title":47035,"body":47036,"cover":48957,"coverAlt":47035,"date":48958,"description":48959,"draft":852,"extension":853,"lab":882,"locale":864,"meta":48960,"navigation":125,"path":48963,"schemaOrg":48964,"seo":48968,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":48969,"tags":48970,"__hash__":48981},"blog\u002Fblog\u002Fvue-provide-inject-avoid-prop-drilling.es.md","Provide e Inject en Vue 3: Guía definitiva para eliminar el Prop Drilling",{"type":8,"value":47037,"toc":48942},[47038,47042,47049,47059,47063,47090,47097,47100,47114,47118,47121,47127,47249,47329,47335,47431,47508,47512,47525,47546,47556,47574,47581,47586,47718,47909,47914,48048,48277,48281,48288,48330,48334,48337,48348,48354,48516,48522,48728,48732,48743,48754,48758,48769,48791,48794,48798,48872,48876,48896,48898,48908,48936,48939],[11,47039,47041],{"id":47040},"provide-e-inject-cómo-evitar-el-prop-drilling-en-vuejs","Provide e Inject: Cómo evitar el Prop Drilling en Vue.js",[15,47043,47044,47045,47048],{},"Imagina que en tu proyecto tienes un componente \"Abuelo\" que debe enviar un dato a un componente \"Nieto\". Tradicionalmente, tendrías que pasar ese dato a través del componente \"Padre\", aunque este último no lo utilice para nada. A este fenómeno se le conoce como ",[958,47046,47047],{},"Prop Drilling",", y es una de las principales causas de que el código se vuelva complejo y difícil de mantener.",[15,47050,47051,47054,47055,47058],{},[22,47052,47053],{},"Provide"," e ",[22,47056,47057],{},"Inject"," permiten que un componente ancestro exponga un dato para que cualquier descendiente lo \"atrape\" directamente, sin necesidad de pasarlo manualmente por cada nivel de la jerarquía.",[34,47060,47062],{"id":47061},"problemas-comunes-del-prop-drilling","Problemas comunes del Prop Drilling",[10842,47064,47065,47075,47081],{},[740,47066,47067,47070,47071,47074],{},[958,47068,47069],{},"Mantenimiento costoso:"," Si decides renombrar una ",[22,47072,47073],{},"prop"," o modificar su estructura, debes actualizar cada componente intermedio, incluso si no consumen el dato.",[740,47076,47077,47080],{},[958,47078,47079],{},"Fragilidad:"," Al depender de múltiples niveles de anidamiento, es más fácil romper la cadena de datos por un error en un componente intermedio.",[740,47082,47083,47086,47087,47089],{},[958,47084,47085],{},"Baja Reutilización:"," Los componentes intermedios pierden versatilidad, ya que quedan obligados a recibir y transmitir ",[22,47088,2673],{}," que no pertenecen a su lógica interna.",[34,47091,47093,47094],{"id":47092},"la-solución-nativa-provide-e-inject","La solución nativa: ",[958,47095,47096],{},"Provide e Inject",[15,47098,47099],{},"Vue nos ofrece una solución integrada sin necesidad de recurrir a librerías externas de gestión de estado (como Pinia):",[737,47101,47102,47108],{},[740,47103,47104,47107],{},[958,47105,47106],{},"Provide:"," El componente ancestro define y \"provee\" el dato al árbol de componentes.",[740,47109,47110,47113],{},[958,47111,47112],{},"Inject:"," Cualquier componente descendiente, sin importar su profundidad, \"inyecta\" y consume ese dato.",[34,47115,47117],{"id":47116},"implementación-en-vue-3-composition-api-y-options-api","Implementación en Vue 3 (Composition API y Options API)",[15,47119,47120],{},"Para implementar esta comunicación, seguimos una estructura de clave y valor.",[24627,47122,47124],{"id":47123},"componente-emisor-abuelo",[958,47125,47126],{},"Componente Emisor (Abuelo):",[74,47128,47131],{"className":76,"code":47129,"filename":873,"highlights":47130,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref, provide } from 'vue'\nimport Hijo from '.\u002FHijo.vue'\n\nconst nombreApp = ref('TODOvue')\n\n\u002F\u002F Provee el dato usando una \"clave\" única\nprovide('app-name-key', nombreApp)\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003CHijo \u002F>\n\u003C\u002Ftemplate>\n",[105,190],[22,47132,47133,47143,47155,47167,47171,47189,47193,47198,47212,47220,47224,47232,47241],{"__ignoreMap":80},[84,47134,47135,47137,47139,47141],{"class":86,"line":87},[84,47136,91],{"class":90},[84,47138,95],{"class":94},[84,47140,99],{"class":98},[84,47142,102],{"class":90},[84,47144,47146,47148,47151,47153],{"class":47145,"line":105},[86,10151],[84,47147,109],{"class":108},[84,47149,47150],{"class":90}," { ref, provide } ",[84,47152,115],{"class":108},[84,47154,119],{"class":118},[84,47156,47157,47159,47162,47164],{"class":86,"line":122},[84,47158,109],{"class":108},[84,47160,47161],{"class":90}," Hijo ",[84,47163,115],{"class":108},[84,47165,47166],{"class":118}," '.\u002FHijo.vue'\n",[84,47168,47169],{"class":86,"line":129},[84,47170,126],{"emptyLinePlaceholder":125},[84,47172,47173,47175,47178,47180,47182,47184,47187],{"class":86,"line":154},[84,47174,132],{"class":108},[84,47176,47177],{"class":135}," nombreApp",[84,47179,139],{"class":108},[84,47181,142],{"class":98},[84,47183,145],{"class":90},[84,47185,47186],{"class":118},"'TODOvue'",[84,47188,151],{"class":90},[84,47190,47191],{"class":86,"line":159},[84,47192,126],{"emptyLinePlaceholder":125},[84,47194,47195],{"class":86,"line":178},[84,47196,47197],{"class":13481},"\u002F\u002F Provee el dato usando una \"clave\" única\n",[84,47199,47201,47204,47206,47209],{"class":47200,"line":190},[86,10151],[84,47202,47203],{"class":98},"provide",[84,47205,145],{"class":90},[84,47207,47208],{"class":118},"'app-name-key'",[84,47210,47211],{"class":90},", nombreApp)\n",[84,47213,47214,47216,47218],{"class":86,"line":196},[84,47215,274],{"class":90},[84,47217,95],{"class":94},[84,47219,102],{"class":90},[84,47221,47222],{"class":86,"line":201},[84,47223,126],{"emptyLinePlaceholder":125},[84,47225,47226,47228,47230],{"class":86,"line":217},[84,47227,91],{"class":90},[84,47229,291],{"class":94},[84,47231,102],{"class":90},[84,47233,47234,47236,47239],{"class":86,"line":227},[84,47235,299],{"class":90},[84,47237,47238],{"class":94},"Hijo",[84,47240,5100],{"class":90},[84,47242,47243,47245,47247],{"class":86,"line":232},[84,47244,274],{"class":90},[84,47246,291],{"class":94},[84,47248,102],{"class":90},[74,47250,47253],{"className":76,"code":47251,"filename":1782,"highlights":47252,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  provide: {\n    nombreApp : 'TODOvue'\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003CHijo \u002F>\n\u003C\u002Ftemplate>\n",[122],[22,47254,47255,47263,47271,47277,47285,47289,47293,47301,47305,47313,47321],{"__ignoreMap":80},[84,47256,47257,47259,47261],{"class":86,"line":87},[84,47258,91],{"class":90},[84,47260,95],{"class":94},[84,47262,102],{"class":90},[84,47264,47265,47267,47269],{"class":86,"line":105},[84,47266,418],{"class":108},[84,47268,1870],{"class":108},[84,47270,175],{"class":90},[84,47272,47274],{"class":47273,"line":122},[86,10151],[84,47275,47276],{"class":90},"  provide: {\n",[84,47278,47279,47282],{"class":86,"line":129},[84,47280,47281],{"class":90},"    nombreApp : ",[84,47283,47284],{"class":118},"'TODOvue'\n",[84,47286,47287],{"class":86,"line":154},[84,47288,485],{"class":90},[84,47290,47291],{"class":86,"line":159},[84,47292,193],{"class":90},[84,47294,47295,47297,47299],{"class":86,"line":178},[84,47296,274],{"class":90},[84,47298,95],{"class":94},[84,47300,102],{"class":90},[84,47302,47303],{"class":86,"line":190},[84,47304,126],{"emptyLinePlaceholder":125},[84,47306,47307,47309,47311],{"class":86,"line":196},[84,47308,91],{"class":90},[84,47310,291],{"class":94},[84,47312,102],{"class":90},[84,47314,47315,47317,47319],{"class":86,"line":201},[84,47316,299],{"class":90},[84,47318,47238],{"class":94},[84,47320,5100],{"class":90},[84,47322,47323,47325,47327],{"class":86,"line":217},[84,47324,274],{"class":90},[84,47326,291],{"class":94},[84,47328,102],{"class":90},[24627,47330,47332],{"id":47331},"componente-receptor-nieto",[958,47333,47334],{},"Componente Receptor (Nieto):",[74,47336,47339],{"className":76,"code":47337,"filename":873,"highlights":47338,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { inject } from 'vue'\n\n\u002F\u002F \"Atrapa\" el dato usando la misma clave definida en el ancestro\nconst nombreApp = inject('app-name-key')\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Ch1>{{ nombreApp }}\u003C\u002Fh1>\n\u003C\u002Ftemplate>\n",[105,154],[22,47340,47341,47351,47363,47367,47372,47390,47398,47402,47410,47423],{"__ignoreMap":80},[84,47342,47343,47345,47347,47349],{"class":86,"line":87},[84,47344,91],{"class":90},[84,47346,95],{"class":94},[84,47348,99],{"class":98},[84,47350,102],{"class":90},[84,47352,47354,47356,47359,47361],{"class":47353,"line":105},[86,10151],[84,47355,109],{"class":108},[84,47357,47358],{"class":90}," { inject } ",[84,47360,115],{"class":108},[84,47362,119],{"class":118},[84,47364,47365],{"class":86,"line":122},[84,47366,126],{"emptyLinePlaceholder":125},[84,47368,47369],{"class":86,"line":129},[84,47370,47371],{"class":13481},"\u002F\u002F \"Atrapa\" el dato usando la misma clave definida en el ancestro\n",[84,47373,47375,47377,47379,47381,47384,47386,47388],{"class":47374,"line":154},[86,10151],[84,47376,132],{"class":108},[84,47378,47177],{"class":135},[84,47380,139],{"class":108},[84,47382,47383],{"class":98}," inject",[84,47385,145],{"class":90},[84,47387,47208],{"class":118},[84,47389,151],{"class":90},[84,47391,47392,47394,47396],{"class":86,"line":159},[84,47393,274],{"class":90},[84,47395,95],{"class":94},[84,47397,102],{"class":90},[84,47399,47400],{"class":86,"line":178},[84,47401,126],{"emptyLinePlaceholder":125},[84,47403,47404,47406,47408],{"class":86,"line":190},[84,47405,91],{"class":90},[84,47407,291],{"class":94},[84,47409,102],{"class":90},[84,47411,47412,47414,47416,47419,47421],{"class":86,"line":196},[84,47413,299],{"class":90},[84,47415,11],{"class":94},[84,47417,47418],{"class":90},">{{ nombreApp }}\u003C\u002F",[84,47420,11],{"class":94},[84,47422,102],{"class":90},[84,47424,47425,47427,47429],{"class":86,"line":201},[84,47426,274],{"class":90},[84,47428,291],{"class":94},[84,47430,102],{"class":90},[74,47432,47435],{"className":76,"code":47433,"filename":1782,"highlights":47434,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  inject: ['nombreApp'],\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Ch1>{{ nombreApp }}\u003C\u002Fh1>\n\u003C\u002Ftemplate>\n",[122],[22,47436,47437,47445,47453,47464,47468,47476,47480,47488,47500],{"__ignoreMap":80},[84,47438,47439,47441,47443],{"class":86,"line":87},[84,47440,91],{"class":90},[84,47442,95],{"class":94},[84,47444,102],{"class":90},[84,47446,47447,47449,47451],{"class":86,"line":105},[84,47448,418],{"class":108},[84,47450,1870],{"class":108},[84,47452,175],{"class":90},[84,47454,47456,47459,47462],{"class":47455,"line":122},[86,10151],[84,47457,47458],{"class":90},"  inject: [",[84,47460,47461],{"class":118},"'nombreApp'",[84,47463,30865],{"class":90},[84,47465,47466],{"class":86,"line":129},[84,47467,193],{"class":90},[84,47469,47470,47472,47474],{"class":86,"line":154},[84,47471,274],{"class":90},[84,47473,95],{"class":94},[84,47475,102],{"class":90},[84,47477,47478],{"class":86,"line":159},[84,47479,126],{"emptyLinePlaceholder":125},[84,47481,47482,47484,47486],{"class":86,"line":178},[84,47483,91],{"class":90},[84,47485,291],{"class":94},[84,47487,102],{"class":90},[84,47489,47490,47492,47494,47496,47498],{"class":86,"line":190},[84,47491,299],{"class":90},[84,47493,11],{"class":94},[84,47495,47418],{"class":90},[84,47497,11],{"class":94},[84,47499,102],{"class":90},[84,47501,47502,47504,47506],{"class":86,"line":196},[84,47503,274],{"class":90},[84,47505,291],{"class":94},[84,47507,102],{"class":90},[34,47509,47511],{"id":47510},"el-reto-de-la-reactividad-y-la-seguridad","El reto de la reactividad y la seguridad",[15,47513,47514,47515,9931,47517,47519,47520,47524],{},"Para que los cambios en el dato fluyan correctamente, debemos pasar un ",[22,47516,24],{},[22,47518,13059],{},". Si quieres profundizar más sobre cómo funciona la reactividad en Vue 3, puedes consultar nuestra entrada ",[13911,47521,47523],{"href":47522},"\u002Fblog\u002Fvue-reactivity-explained.es\u002F","¿Qué es la reactividad? La magia detrás de Vue.js explicada con claridad",". Sin embargo, esto introduce un riesgo: un componente hijo podría intentar modificar el valor directamente.",[74,47526,47529],{"className":46758,"code":47527,"filename":47528,"language":46762,"meta":80,"style":80},"\u002F\u002F ¡Peligro! Modificar el estado desde un hijo dificulta la depuración\nidioma.value = 'en'\n","inject-example.js",[22,47530,47531,47536],{"__ignoreMap":80},[84,47532,47533],{"class":86,"line":87},[84,47534,47535],{"class":13481},"\u002F\u002F ¡Peligro! Modificar el estado desde un hijo dificulta la depuración\n",[84,47537,47538,47541,47543],{"class":86,"line":105},[84,47539,47540],{"class":90},"idioma.value ",[84,47542,184],{"class":108},[84,47544,47545],{"class":118}," 'en'\n",[15,47547,47548,47549,47552,47553,1203],{},"Si cualquier componente puede alterar el estado inyectado, perdemos el rastro de ",[958,47550,47551],{},"quién, cuándo y por qué"," cambió el dato. Para solucionar esto, aplicamos el patrón de ",[958,47554,47555],{},"Inyección de Solo Lectura",[10842,47557,47558,47568],{},[740,47559,47560,47563,47564,47567],{},[958,47561,47562],{},"El dato:"," Se protege con ",[22,47565,47566],{},"readonly()"," para evitar modificaciones accidentales.",[740,47569,47570,47573],{},[958,47571,47572],{},"La función:"," Se provee una función específica para realizar el cambio, centralizando la lógica en el ancestro.",[34,47575,47577,47578],{"id":47576},"ejemplo-de-uso-correcto-con-readonly","Ejemplo de uso correcto con ",[22,47579,47580],{},"readonly",[24627,47582,47584],{"id":47583},"componente-emisor-abuelo-1",[958,47585,47126],{},[74,47587,47590],{"className":76,"code":47588,"filename":873,"highlights":47589,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref, provide, readonly } from 'vue'\n\nconst idioma = ref('es')\nconst cambiarIdioma = (nuevo) => {\n  idioma.value = nuevo\n}\n\nprovide('config-idioma', {\n  idioma: readonly(idioma), \u002F\u002F Protegemos el estado\n  cambiarIdioma             \u002F\u002F Exponemos la vía de modificación\n})\n\u003C\u002Fscript>\n",[201],[22,47591,47592,47602,47613,47617,47635,47655,47665,47669,47673,47684,47698,47706,47710],{"__ignoreMap":80},[84,47593,47594,47596,47598,47600],{"class":86,"line":87},[84,47595,91],{"class":90},[84,47597,95],{"class":94},[84,47599,99],{"class":98},[84,47601,102],{"class":90},[84,47603,47604,47606,47609,47611],{"class":86,"line":105},[84,47605,109],{"class":108},[84,47607,47608],{"class":90}," { ref, provide, readonly } ",[84,47610,115],{"class":108},[84,47612,119],{"class":118},[84,47614,47615],{"class":86,"line":122},[84,47616,126],{"emptyLinePlaceholder":125},[84,47618,47619,47621,47624,47626,47628,47630,47633],{"class":86,"line":129},[84,47620,132],{"class":108},[84,47622,47623],{"class":135}," idioma",[84,47625,139],{"class":108},[84,47627,142],{"class":98},[84,47629,145],{"class":90},[84,47631,47632],{"class":118},"'es'",[84,47634,151],{"class":90},[84,47636,47637,47639,47642,47644,47646,47649,47651,47653],{"class":86,"line":154},[84,47638,132],{"class":108},[84,47640,47641],{"class":98}," cambiarIdioma",[84,47643,139],{"class":108},[84,47645,1341],{"class":90},[84,47647,47648],{"class":429},"nuevo",[84,47650,3126],{"class":90},[84,47652,172],{"class":108},[84,47654,175],{"class":90},[84,47656,47657,47660,47662],{"class":86,"line":159},[84,47658,47659],{"class":90},"  idioma.value ",[84,47661,184],{"class":108},[84,47663,47664],{"class":90}," nuevo\n",[84,47666,47667],{"class":86,"line":178},[84,47668,193],{"class":90},[84,47670,47671],{"class":86,"line":190},[84,47672,126],{"emptyLinePlaceholder":125},[84,47674,47675,47677,47679,47682],{"class":86,"line":196},[84,47676,47203],{"class":98},[84,47678,145],{"class":90},[84,47680,47681],{"class":118},"'config-idioma'",[84,47683,3146],{"class":90},[84,47685,47687,47690,47692,47695],{"class":47686,"line":201},[86,10151],[84,47688,47689],{"class":90},"  idioma: ",[84,47691,47580],{"class":98},[84,47693,47694],{"class":90},"(idioma), ",[84,47696,47697],{"class":13481},"\u002F\u002F Protegemos el estado\n",[84,47699,47700,47703],{"class":86,"line":217},[84,47701,47702],{"class":90},"  cambiarIdioma             ",[84,47704,47705],{"class":13481},"\u002F\u002F Exponemos la vía de modificación\n",[84,47707,47708],{"class":86,"line":227},[84,47709,1492],{"class":90},[84,47711,47712,47714,47716],{"class":86,"line":232},[84,47713,274],{"class":90},[84,47715,95],{"class":94},[84,47717,102],{"class":90},[74,47719,47722],{"className":76,"code":47720,"filename":1782,"highlights":47721,"language":79,"meta":80,"style":80},"\u003Cscript>\nimport { computed } from 'vue'\n\nexport default {\n  data() {\n    return {\n      idioma: 'es'\n    }\n  },\n    methods: {\n      cambiarIdioma(nuevo) {\n        this.idioma = nuevo\n      }\n  },\n  provide() {\n    return {\n      \u002F\u002F IMPORTANTE: En Options API, 'provide' se evalúa una sola vez.\n      \u002F\u002F Para mantener reactividad, envolvemos el valor con computed()\n      \u002F\u002F que crea una función getter que Vue reevalúa automáticamente\n      'config-idioma': {\n        \u002F\u002F Usamos computed para que el hijo vea los cambios de this.idioma\n        idioma: computed(() => this.idioma),\n        cambiarIdioma: this.cambiarIdioma\n      }\n    }\n  }\n}\n\u003C\u002Fscript>\n",[331],[22,47723,47724,47732,47743,47747,47755,47761,47767,47775,47779,47783,47787,47798,47809,47813,47817,47824,47830,47835,47840,47845,47853,47858,47874,47885,47889,47893,47897,47901],{"__ignoreMap":80},[84,47725,47726,47728,47730],{"class":86,"line":87},[84,47727,91],{"class":90},[84,47729,95],{"class":94},[84,47731,102],{"class":90},[84,47733,47734,47736,47739,47741],{"class":86,"line":105},[84,47735,109],{"class":108},[84,47737,47738],{"class":90}," { computed } ",[84,47740,115],{"class":108},[84,47742,119],{"class":118},[84,47744,47745],{"class":86,"line":122},[84,47746,126],{"emptyLinePlaceholder":125},[84,47748,47749,47751,47753],{"class":86,"line":129},[84,47750,418],{"class":108},[84,47752,1870],{"class":108},[84,47754,175],{"class":90},[84,47756,47757,47759],{"class":86,"line":154},[84,47758,1896],{"class":98},[84,47760,1307],{"class":90},[84,47762,47763,47765],{"class":86,"line":159},[84,47764,1903],{"class":108},[84,47766,175],{"class":90},[84,47768,47769,47772],{"class":86,"line":178},[84,47770,47771],{"class":90},"      idioma: ",[84,47773,47774],{"class":118},"'es'\n",[84,47776,47777],{"class":86,"line":190},[84,47778,1936],{"class":90},[84,47780,47781],{"class":86,"line":196},[84,47782,1941],{"class":90},[84,47784,47785],{"class":86,"line":201},[84,47786,46515],{"class":90},[84,47788,47789,47792,47794,47796],{"class":86,"line":217},[84,47790,47791],{"class":98},"      cambiarIdioma",[84,47793,145],{"class":90},[84,47795,47648],{"class":429},[84,47797,438],{"class":90},[84,47799,47800,47802,47805,47807],{"class":86,"line":227},[84,47801,9580],{"class":135},[84,47803,47804],{"class":90},".idioma ",[84,47806,184],{"class":108},[84,47808,47664],{"class":90},[84,47810,47811],{"class":86,"line":232},[84,47812,2013],{"class":90},[84,47814,47815],{"class":86,"line":237},[84,47816,1941],{"class":90},[84,47818,47819,47822],{"class":86,"line":253},[84,47820,47821],{"class":98},"  provide",[84,47823,1307],{"class":90},[84,47825,47826,47828],{"class":86,"line":266},[84,47827,1903],{"class":108},[84,47829,175],{"class":90},[84,47831,47832],{"class":86,"line":271},[84,47833,47834],{"class":13481},"      \u002F\u002F IMPORTANTE: En Options API, 'provide' se evalúa una sola vez.\n",[84,47836,47837],{"class":86,"line":281},[84,47838,47839],{"class":13481},"      \u002F\u002F Para mantener reactividad, envolvemos el valor con computed()\n",[84,47841,47842],{"class":86,"line":286},[84,47843,47844],{"class":13481},"      \u002F\u002F que crea una función getter que Vue reevalúa automáticamente\n",[84,47846,47847,47850],{"class":86,"line":296},[84,47848,47849],{"class":118},"      'config-idioma'",[84,47851,47852],{"class":90},": {\n",[84,47854,47855],{"class":86,"line":315},[84,47856,47857],{"class":13481},"        \u002F\u002F Usamos computed para que el hijo vea los cambios de this.idioma\n",[84,47859,47860,47863,47865,47867,47869,47871],{"class":86,"line":321},[84,47861,47862],{"class":90},"        idioma: ",[84,47864,2523],{"class":98},[84,47866,2992],{"class":90},[84,47868,172],{"class":108},[84,47870,2078],{"class":135},[84,47872,47873],{"class":90},".idioma),\n",[84,47875,47877,47880,47882],{"class":47876,"line":331},[86,10151],[84,47878,47879],{"class":90},"        cambiarIdioma: ",[84,47881,2151],{"class":135},[84,47883,47884],{"class":90},".cambiarIdioma\n",[84,47886,47887],{"class":86,"line":336},[84,47888,2013],{"class":90},[84,47890,47891],{"class":86,"line":354},[84,47892,1936],{"class":90},[84,47894,47895],{"class":86,"line":360},[84,47896,485],{"class":90},[84,47898,47899],{"class":86,"line":369},[84,47900,193],{"class":90},[84,47902,47903,47905,47907],{"class":86,"line":1453},[84,47904,274],{"class":90},[84,47906,95],{"class":94},[84,47908,102],{"class":90},[24627,47910,47912],{"id":47911},"componente-receptor-nieto-1",[958,47913,47334],{},[74,47915,47918],{"className":76,"code":47916,"filename":873,"highlights":47917,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { inject } from 'vue'\n\nconst { idioma, cambiarIdioma } = inject('config-idioma')\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cdiv>\n    \u003Cp>Idioma actual: {{ idioma }}\u003C\u002Fp>\n    \u003Cbutton @click=\"cambiarIdioma('en')\">Cambiar a Inglés\u003C\u002Fbutton>\n  \u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n",[129],[22,47919,47920,47930,47940,47944,47971,47979,47983,47991,47999,48012,48032,48040],{"__ignoreMap":80},[84,47921,47922,47924,47926,47928],{"class":86,"line":87},[84,47923,91],{"class":90},[84,47925,95],{"class":94},[84,47927,99],{"class":98},[84,47929,102],{"class":90},[84,47931,47932,47934,47936,47938],{"class":86,"line":105},[84,47933,109],{"class":108},[84,47935,47358],{"class":90},[84,47937,115],{"class":108},[84,47939,119],{"class":118},[84,47941,47942],{"class":86,"line":122},[84,47943,126],{"emptyLinePlaceholder":125},[84,47945,47947,47949,47951,47954,47956,47959,47961,47963,47965,47967,47969],{"class":47946,"line":129},[86,10151],[84,47948,132],{"class":108},[84,47950,6763],{"class":90},[84,47952,47953],{"class":135},"idioma",[84,47955,754],{"class":90},[84,47957,47958],{"class":135},"cambiarIdioma",[84,47960,18230],{"class":90},[84,47962,184],{"class":108},[84,47964,47383],{"class":98},[84,47966,145],{"class":90},[84,47968,47681],{"class":118},[84,47970,151],{"class":90},[84,47972,47973,47975,47977],{"class":86,"line":154},[84,47974,274],{"class":90},[84,47976,95],{"class":94},[84,47978,102],{"class":90},[84,47980,47981],{"class":86,"line":159},[84,47982,126],{"emptyLinePlaceholder":125},[84,47984,47985,47987,47989],{"class":86,"line":178},[84,47986,91],{"class":90},[84,47988,291],{"class":94},[84,47990,102],{"class":90},[84,47992,47993,47995,47997],{"class":86,"line":190},[84,47994,299],{"class":90},[84,47996,4978],{"class":94},[84,47998,102],{"class":90},[84,48000,48001,48003,48005,48008,48010],{"class":86,"line":196},[84,48002,1642],{"class":90},[84,48004,15],{"class":94},[84,48006,48007],{"class":90},">Idioma actual: {{ idioma }}\u003C\u002F",[84,48009,15],{"class":94},[84,48011,102],{"class":90},[84,48013,48014,48016,48018,48020,48022,48025,48028,48030],{"class":86,"line":201},[84,48015,1642],{"class":90},[84,48017,302],{"class":94},[84,48019,305],{"class":98},[84,48021,184],{"class":90},[84,48023,48024],{"class":118},"\"cambiarIdioma('en')\"",[84,48026,48027],{"class":90},">Cambiar a Inglés\u003C\u002F",[84,48029,302],{"class":94},[84,48031,102],{"class":90},[84,48033,48034,48036,48038],{"class":86,"line":217},[84,48035,324],{"class":90},[84,48037,4978],{"class":94},[84,48039,102],{"class":90},[84,48041,48042,48044,48046],{"class":86,"line":227},[84,48043,274],{"class":90},[84,48045,291],{"class":94},[84,48047,102],{"class":90},[74,48049,48052],{"className":76,"code":48050,"filename":1782,"highlights":48051,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  inject: {\n    configIdioma: {\n      from: 'config-idioma',\n      default: () => ({\n        idioma: { value: 'es' },\n        cambiarIdioma: () => {}\n      })\n    }\n  },\n  computed: {\n    idiomaActual() {\n      return this.configIdioma.idioma.value\n    }\n  },\n  methods: {\n    cambiarAIngles() {\n      this.configIdioma.cambiarIdioma('en')\n    }\n  }\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cdiv>\n    \u003Cp>Idioma actual: {{ idiomaActual }}\u003C\u002Fp>\n    \u003Cbutton @click=\"cambiarAIngles\">Cambiar a Inglés\u003C\u002Fbutton>\n  \u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n",[178,237],[22,48053,48054,48062,48070,48075,48080,48089,48100,48110,48121,48125,48129,48133,48137,48144,48154,48158,48162,48166,48173,48189,48193,48197,48201,48209,48213,48221,48229,48242,48261,48269],{"__ignoreMap":80},[84,48055,48056,48058,48060],{"class":86,"line":87},[84,48057,91],{"class":90},[84,48059,95],{"class":94},[84,48061,102],{"class":90},[84,48063,48064,48066,48068],{"class":86,"line":105},[84,48065,418],{"class":108},[84,48067,1870],{"class":108},[84,48069,175],{"class":90},[84,48071,48072],{"class":86,"line":122},[84,48073,48074],{"class":90},"  inject: {\n",[84,48076,48077],{"class":86,"line":129},[84,48078,48079],{"class":90},"    configIdioma: {\n",[84,48081,48082,48085,48087],{"class":86,"line":154},[84,48083,48084],{"class":90},"      from: ",[84,48086,47681],{"class":118},[84,48088,1887],{"class":90},[84,48090,48091,48094,48096,48098],{"class":86,"line":159},[84,48092,48093],{"class":98},"      default",[84,48095,4568],{"class":90},[84,48097,172],{"class":108},[84,48099,36798],{"class":90},[84,48101,48103,48106,48108],{"class":48102,"line":178},[86,10151],[84,48104,48105],{"class":90},"        idioma: { value: ",[84,48107,47632],{"class":118},[84,48109,2921],{"class":90},[84,48111,48112,48115,48117,48119],{"class":86,"line":190},[84,48113,48114],{"class":98},"        cambiarIdioma",[84,48116,4568],{"class":90},[84,48118,172],{"class":108},[84,48120,45834],{"class":90},[84,48122,48123],{"class":86,"line":196},[84,48124,3638],{"class":90},[84,48126,48127],{"class":86,"line":201},[84,48128,1936],{"class":90},[84,48130,48131],{"class":86,"line":217},[84,48132,1941],{"class":90},[84,48134,48135],{"class":86,"line":227},[84,48136,3527],{"class":90},[84,48138,48139,48142],{"class":86,"line":232},[84,48140,48141],{"class":98},"    idiomaActual",[84,48143,1307],{"class":90},[84,48145,48147,48149,48151],{"class":48146,"line":237},[86,10151],[84,48148,3539],{"class":108},[84,48150,2078],{"class":135},[84,48152,48153],{"class":90},".configIdioma.idioma.value\n",[84,48155,48156],{"class":86,"line":253},[84,48157,1936],{"class":90},[84,48159,48160],{"class":86,"line":266},[84,48161,1941],{"class":90},[84,48163,48164],{"class":86,"line":271},[84,48165,1950],{"class":90},[84,48167,48168,48171],{"class":86,"line":281},[84,48169,48170],{"class":98},"    cambiarAIngles",[84,48172,1307],{"class":90},[84,48174,48175,48177,48180,48182,48184,48187],{"class":86,"line":286},[84,48176,2022],{"class":135},[84,48178,48179],{"class":90},".configIdioma.",[84,48181,47958],{"class":98},[84,48183,145],{"class":90},[84,48185,48186],{"class":118},"'en'",[84,48188,151],{"class":90},[84,48190,48191],{"class":86,"line":296},[84,48192,1936],{"class":90},[84,48194,48195],{"class":86,"line":315},[84,48196,485],{"class":90},[84,48198,48199],{"class":86,"line":321},[84,48200,193],{"class":90},[84,48202,48203,48205,48207],{"class":86,"line":331},[84,48204,274],{"class":90},[84,48206,95],{"class":94},[84,48208,102],{"class":90},[84,48210,48211],{"class":86,"line":336},[84,48212,126],{"emptyLinePlaceholder":125},[84,48214,48215,48217,48219],{"class":86,"line":354},[84,48216,91],{"class":90},[84,48218,291],{"class":94},[84,48220,102],{"class":90},[84,48222,48223,48225,48227],{"class":86,"line":360},[84,48224,299],{"class":90},[84,48226,4978],{"class":94},[84,48228,102],{"class":90},[84,48230,48231,48233,48235,48238,48240],{"class":86,"line":369},[84,48232,1642],{"class":90},[84,48234,15],{"class":94},[84,48236,48237],{"class":90},">Idioma actual: {{ idiomaActual }}\u003C\u002F",[84,48239,15],{"class":94},[84,48241,102],{"class":90},[84,48243,48244,48246,48248,48250,48252,48255,48257,48259],{"class":86,"line":1453},[84,48245,1642],{"class":90},[84,48247,302],{"class":94},[84,48249,305],{"class":98},[84,48251,184],{"class":90},[84,48253,48254],{"class":118},"\"cambiarAIngles\"",[84,48256,48027],{"class":90},[84,48258,302],{"class":94},[84,48260,102],{"class":90},[84,48262,48263,48265,48267],{"class":86,"line":1462},[84,48264,324],{"class":90},[84,48266,4978],{"class":94},[84,48268,102],{"class":90},[84,48270,48271,48273,48275],{"class":86,"line":1484},[84,48272,274],{"class":90},[84,48274,291],{"class":94},[84,48276,102],{"class":90},[34,48278,48280],{"id":48279},"manejo-de-valores-por-defecto","Manejo de valores por defecto",[15,48282,48283,48284,48287],{},"Para hacer tus componentes más robustos, puedes definir un valor por defecto en el ",[22,48285,48286],{},"inject",". Si el componente se usa fuera de un árbol que provea la clave, evitarás errores de ejecución:",[74,48289,48293],{"className":46758,"code":48290,"filename":48291,"highlights":48292,"language":46762,"meta":80,"style":80},"\u002F\u002F Si no encuentra 'user-data', usará el objeto por defecto\nconst usuario = inject('user-data', { nombre: 'Invitado', premium: false })\n","inject-default.js",[105],[22,48294,48295,48300],{"__ignoreMap":80},[84,48296,48297],{"class":86,"line":87},[84,48298,48299],{"class":13481},"\u002F\u002F Si no encuentra 'user-data', usará el objeto por defecto\n",[84,48301,48303,48305,48308,48310,48312,48314,48317,48320,48323,48326,48328],{"class":48302,"line":105},[86,10151],[84,48304,132],{"class":108},[84,48306,48307],{"class":135}," usuario",[84,48309,139],{"class":108},[84,48311,47383],{"class":98},[84,48313,145],{"class":90},[84,48315,48316],{"class":118},"'user-data'",[84,48318,48319],{"class":90},", { nombre: ",[84,48321,48322],{"class":118},"'Invitado'",[84,48324,48325],{"class":90},", premium: ",[84,48327,148],{"class":135},[84,48329,17610],{"class":90},[34,48331,48333],{"id":48332},"provideinject-a-nivel-de-aplicación","Provide\u002FInject a nivel de aplicación",[15,48335,48336],{},"Además de usarlo entre componentes, puedes definir valores globales directamente en la instancia de la aplicación. Esto es útil para:",[737,48338,48339,48342,48345],{},[740,48340,48341],{},"Configuración de la aplicación (URL de API, claves de servicios)",[740,48343,48344],{},"Temas o preferencias globales",[740,48346,48347],{},"Plugins o utilidades compartidas",[24627,48349,48351],{"id":48350},"implementación",[958,48352,48353],{},"Implementación:",[74,48355,48358],{"className":46758,"code":48356,"filename":20153,"highlights":48357,"language":46762,"meta":80,"style":80},"import { createApp } from 'vue'\nimport App from '.\u002FApp.vue'\n\nconst app = createApp(App)\n\n\u002F\u002F Provee valores globales disponibles en toda la aplicación\napp.provide('api-url', 'https:\u002F\u002Fapi.ejemplo.com')\napp.provide('theme', 'dark')\napp.provide('analytics', {\n  trackEvent: (eventName) => {\n    console.log(`Evento: ${eventName}`)\n  }\n})\n\napp.mount('#app')\n",[178,190],[22,48359,48360,48370,48380,48384,48396,48400,48405,48424,48443,48456,48473,48490,48494,48498,48502],{"__ignoreMap":80},[84,48361,48362,48364,48366,48368],{"class":86,"line":87},[84,48363,109],{"class":108},[84,48365,46058],{"class":90},[84,48367,115],{"class":108},[84,48369,119],{"class":118},[84,48371,48372,48374,48376,48378],{"class":86,"line":105},[84,48373,109],{"class":108},[84,48375,46069],{"class":90},[84,48377,115],{"class":108},[84,48379,46074],{"class":118},[84,48381,48382],{"class":86,"line":122},[84,48383,126],{"emptyLinePlaceholder":125},[84,48385,48386,48388,48390,48392,48394],{"class":86,"line":129},[84,48387,132],{"class":108},[84,48389,46081],{"class":135},[84,48391,139],{"class":108},[84,48393,46086],{"class":98},[84,48395,46089],{"class":90},[84,48397,48398],{"class":86,"line":154},[84,48399,126],{"emptyLinePlaceholder":125},[84,48401,48402],{"class":86,"line":159},[84,48403,48404],{"class":13481},"\u002F\u002F Provee valores globales disponibles en toda la aplicación\n",[84,48406,48408,48410,48412,48414,48417,48419,48422],{"class":48407,"line":178},[86,10151],[84,48409,46095],{"class":90},[84,48411,47203],{"class":98},[84,48413,145],{"class":90},[84,48415,48416],{"class":118},"'api-url'",[84,48418,754],{"class":90},[84,48420,48421],{"class":118},"'https:\u002F\u002Fapi.ejemplo.com'",[84,48423,151],{"class":90},[84,48425,48427,48429,48431,48433,48436,48438,48441],{"class":48426,"line":190},[86,10151],[84,48428,46095],{"class":90},[84,48430,47203],{"class":98},[84,48432,145],{"class":90},[84,48434,48435],{"class":118},"'theme'",[84,48437,754],{"class":90},[84,48439,48440],{"class":118},"'dark'",[84,48442,151],{"class":90},[84,48444,48445,48447,48449,48451,48454],{"class":86,"line":196},[84,48446,46095],{"class":90},[84,48448,47203],{"class":98},[84,48450,145],{"class":90},[84,48452,48453],{"class":118},"'analytics'",[84,48455,3146],{"class":90},[84,48457,48458,48461,48464,48467,48469,48471],{"class":86,"line":201},[84,48459,48460],{"class":98},"  trackEvent",[84,48462,48463],{"class":90},": (",[84,48465,48466],{"class":429},"eventName",[84,48468,3126],{"class":90},[84,48470,172],{"class":108},[84,48472,175],{"class":90},[84,48474,48475,48477,48479,48481,48484,48486,48488],{"class":86,"line":217},[84,48476,3666],{"class":90},[84,48478,3138],{"class":98},[84,48480,145],{"class":90},[84,48482,48483],{"class":118},"`Evento: ${",[84,48485,48466],{"class":90},[84,48487,4666],{"class":118},[84,48489,151],{"class":90},[84,48491,48492],{"class":86,"line":227},[84,48493,485],{"class":90},[84,48495,48496],{"class":86,"line":232},[84,48497,1492],{"class":90},[84,48499,48500],{"class":86,"line":237},[84,48501,126],{"emptyLinePlaceholder":125},[84,48503,48504,48506,48509,48511,48514],{"class":86,"line":253},[84,48505,46095],{"class":90},[84,48507,48508],{"class":98},"mount",[84,48510,145],{"class":90},[84,48512,48513],{"class":118},"'#app'",[84,48515,151],{"class":90},[24627,48517,48519],{"id":48518},"consumiendo-en-cualquier-componente",[958,48520,48521],{},"Consumiendo en cualquier componente:",[74,48523,48527],{"className":76,"code":48524,"filename":48525,"highlights":48526,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { inject } from 'vue'\n\nconst apiUrl = inject('api-url')\nconst theme = inject('theme')\nconst analytics = inject('analytics')\n\nconst handleClick = () => {\n  analytics.trackEvent('button-click')\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cdiv :class=\"`theme-${theme}`\">\n    \u003Cp>API Base: {{ apiUrl }}\u003C\u002Fp>\n    \u003Cbutton @click=\"handleClick\">Hacer clic\u003C\u002Fbutton>\n  \u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n","SomeComponent.vue",[129,154],[22,48528,48529,48539,48549,48553,48571,48589,48606,48610,48625,48640,48644,48652,48656,48664,48679,48692,48712,48720],{"__ignoreMap":80},[84,48530,48531,48533,48535,48537],{"class":86,"line":87},[84,48532,91],{"class":90},[84,48534,95],{"class":94},[84,48536,99],{"class":98},[84,48538,102],{"class":90},[84,48540,48541,48543,48545,48547],{"class":86,"line":105},[84,48542,109],{"class":108},[84,48544,47358],{"class":90},[84,48546,115],{"class":108},[84,48548,119],{"class":118},[84,48550,48551],{"class":86,"line":122},[84,48552,126],{"emptyLinePlaceholder":125},[84,48554,48556,48558,48561,48563,48565,48567,48569],{"class":48555,"line":129},[86,10151],[84,48557,132],{"class":108},[84,48559,48560],{"class":135}," apiUrl",[84,48562,139],{"class":108},[84,48564,47383],{"class":98},[84,48566,145],{"class":90},[84,48568,48416],{"class":118},[84,48570,151],{"class":90},[84,48572,48574,48576,48579,48581,48583,48585,48587],{"class":48573,"line":154},[86,10151],[84,48575,132],{"class":108},[84,48577,48578],{"class":135}," theme",[84,48580,139],{"class":108},[84,48582,47383],{"class":98},[84,48584,145],{"class":90},[84,48586,48435],{"class":118},[84,48588,151],{"class":90},[84,48590,48591,48593,48596,48598,48600,48602,48604],{"class":86,"line":159},[84,48592,132],{"class":108},[84,48594,48595],{"class":135}," analytics",[84,48597,139],{"class":108},[84,48599,47383],{"class":98},[84,48601,145],{"class":90},[84,48603,48453],{"class":118},[84,48605,151],{"class":90},[84,48607,48608],{"class":86,"line":178},[84,48609,126],{"emptyLinePlaceholder":125},[84,48611,48612,48614,48617,48619,48621,48623],{"class":86,"line":190},[84,48613,132],{"class":108},[84,48615,48616],{"class":98}," handleClick",[84,48618,139],{"class":108},[84,48620,169],{"class":90},[84,48622,172],{"class":108},[84,48624,175],{"class":90},[84,48626,48627,48630,48633,48635,48638],{"class":86,"line":196},[84,48628,48629],{"class":90},"  analytics.",[84,48631,48632],{"class":98},"trackEvent",[84,48634,145],{"class":90},[84,48636,48637],{"class":118},"'button-click'",[84,48639,151],{"class":90},[84,48641,48642],{"class":86,"line":201},[84,48643,193],{"class":90},[84,48645,48646,48648,48650],{"class":86,"line":217},[84,48647,274],{"class":90},[84,48649,95],{"class":94},[84,48651,102],{"class":90},[84,48653,48654],{"class":86,"line":227},[84,48655,126],{"emptyLinePlaceholder":125},[84,48657,48658,48660,48662],{"class":86,"line":232},[84,48659,91],{"class":90},[84,48661,291],{"class":94},[84,48663,102],{"class":90},[84,48665,48666,48668,48670,48672,48674,48677],{"class":86,"line":237},[84,48667,299],{"class":90},[84,48669,4978],{"class":94},[84,48671,37024],{"class":98},[84,48673,184],{"class":90},[84,48675,48676],{"class":118},"\"`theme-${theme}`\"",[84,48678,102],{"class":90},[84,48680,48681,48683,48685,48688,48690],{"class":86,"line":253},[84,48682,1642],{"class":90},[84,48684,15],{"class":94},[84,48686,48687],{"class":90},">API Base: {{ apiUrl }}\u003C\u002F",[84,48689,15],{"class":94},[84,48691,102],{"class":90},[84,48693,48694,48696,48698,48700,48702,48705,48708,48710],{"class":86,"line":266},[84,48695,1642],{"class":90},[84,48697,302],{"class":94},[84,48699,305],{"class":98},[84,48701,184],{"class":90},[84,48703,48704],{"class":118},"\"handleClick\"",[84,48706,48707],{"class":90},">Hacer clic\u003C\u002F",[84,48709,302],{"class":94},[84,48711,102],{"class":90},[84,48713,48714,48716,48718],{"class":86,"line":271},[84,48715,324],{"class":90},[84,48717,4978],{"class":94},[84,48719,102],{"class":90},[84,48721,48722,48724,48726],{"class":86,"line":281},[84,48723,274],{"class":90},[84,48725,291],{"class":94},[84,48727,102],{"class":90},[24627,48729,48731],{"id":48730},"ventajas","Ventajas",[737,48733,48734,48737,48740],{},[740,48735,48736],{},"No necesitas crear un componente raíz solo para proveer valores",[740,48738,48739],{},"Ideal para configuraciones que no cambian durante la vida de la aplicación",[740,48741,48742],{},"Simplifica el testing al poder sobrescribir estos valores fácilmente",[823,48744,48745],{},[15,48746,48747,48750,48751,764],{},[958,48748,48749],{},"Nota:"," Para valores reactivos a nivel de aplicación que cambien frecuentemente, considera usar Pinia en lugar de ",[22,48752,48753],{},"app.provide()",[34,48755,48757],{"id":48756},"bajo-el-capó-cómo-funciona","Bajo el capó: ¿Cómo funciona?",[15,48759,48760,48761,48764,48765,48768],{},"La eficiencia de ",[22,48762,48763],{},"provide\u002Finject"," radica en que utiliza la ",[958,48766,48767],{},"cadena de prototipos"," de JavaScript.",[10842,48770,48771,48786],{},[740,48772,48773,48775,48776,48779,48780,48782,48783,764],{},[958,48774,47106],{}," Cuando un componente provee algo, Vue crea un nuevo objeto ",[22,48777,48778],{},"provides"," para ese componente que hereda del objeto ",[22,48781,48778],{}," de su padre mediante ",[22,48784,48785],{},"Object.create()",[740,48787,48788,48790],{},[958,48789,47112],{}," Vue simplemente busca la clave en el objeto. Si no está en el padre inmediato, el motor de JavaScript sube por la cadena de prototipos hasta encontrarlo o llegar al final.",[15,48792,48793],{},"Esta arquitectura permite que un hijo \"sobrescriba\" un valor para sus propios descendientes sin afectar a sus hermanos o ancestros, garantizando un aislamiento total.",[34,48795,48797],{"id":48796},"resumen-de-capacidades","Resumen de capacidades",[6160,48799,48800,48812],{},[6163,48801,48802],{},[6166,48803,48804,48806,48809],{},[6169,48805,46871],{},[6169,48807,48808],{},"Nivel Básico",[6169,48810,48811],{},"Nivel Profesional",[6182,48813,48814,48827,48843,48856],{},[6166,48815,48816,48821,48824],{},[6187,48817,48818],{},[958,48819,48820],{},"Flujo",[6187,48822,48823],{},"Pasar datos de A a B",[6187,48825,48826],{},"Arquitectura de estado jerárquico",[6166,48828,48829,48834,48837],{},[6187,48830,48831],{},[958,48832,48833],{},"Seguridad",[6187,48835,48836],{},"Datos mutables (riesgoso)",[6187,48838,48839,48840,48842],{},"Uso de ",[22,48841,47566],{}," para proteger el estado",[6166,48844,48845,48850,48853],{},[6187,48846,48847],{},[958,48848,48849],{},"Robustez",[6187,48851,48852],{},"Puede fallar si falta la clave",[6187,48854,48855],{},"Uso de valores por defecto",[6166,48857,48858,48863,48866],{},[6187,48859,48860],{},[958,48861,48862],{},"Alcance",[6187,48864,48865],{},"Entre componentes locales",[6187,48867,48868,48869],{},"Configuración global a nivel de ",[22,48870,48871],{},"app",[34,48873,48875],{"id":48874},"cuándo-no-usar-provideinject","Cuándo NO usar Provide\u002FInject",[737,48877,48878,48884,48890],{},[740,48879,48880,48883],{},[958,48881,48882],{},"Para estado global complejo:"," Usa Pinia o Vuex",[740,48885,48886,48889],{},[958,48887,48888],{},"Para comunicación entre hermanos:"," Usa composables o el patrón Event Bus",[740,48891,48892,48895],{},[958,48893,48894],{},"Para estado simple de 2 niveles:"," Las props son más explícitas y fáciles de seguir",[34,48897,18395],{"id":18394},[15,48899,48900,47054,48902,48904,48905,48907],{},[22,48901,47053],{},[22,48903,48286],{}," son herramientas poderosas que, usadas correctamente, eliminan el ",[958,48906,47047],{}," sin comprometer la mantenibilidad del código. La clave está en:",[10842,48909,48910,48918,48924,48930],{},[740,48911,48912,48915,48916],{},[958,48913,48914],{},"Proteger el estado"," con ",[22,48917,47566],{},[740,48919,48920,48923],{},[958,48921,48922],{},"Proveer funciones"," para modificarlo de forma controlada",[740,48925,48926,48929],{},[958,48927,48928],{},"Definir valores por defecto"," para mayor robustez",[740,48931,48932,48935],{},[958,48933,48934],{},"Usarlo en el nivel adecuado:"," componentes para estado jerárquico, Pinia para estado global complejo",[15,48937,48938],{},"Dominar este patrón te permitirá construir aplicaciones Vue más escalables y fáciles de mantener.",[835,48940,48941],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}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 .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":80,"searchDepth":105,"depth":105,"links":48943},[48944,48945,48947,48948,48949,48951,48952,48953,48954,48955,48956],{"id":47061,"depth":105,"text":47062},{"id":47092,"depth":105,"text":48946},"La solución nativa: Provide e Inject",{"id":47116,"depth":105,"text":47117},{"id":47510,"depth":105,"text":47511},{"id":47576,"depth":105,"text":48950},"Ejemplo de uso correcto con readonly",{"id":48279,"depth":105,"text":48280},{"id":48332,"depth":105,"text":48333},{"id":48756,"depth":105,"text":48757},{"id":48796,"depth":105,"text":48797},{"id":48874,"depth":105,"text":48875},{"id":18394,"depth":105,"text":18395},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1769126104\u002Fvue-provide-inject-avoid-prop-drilling_pkd9s1.png","2026-01-23","Aprende a usar provide e inject en Vue.js para eliminar el Prop Drilling, gestionar la reactividad de forma segura con readonly y mejorar la arquitectura de tus componentes.",{"updatedAt":47012,"coverCaption":48961,"author":868,"keywords":48962},"Provide e Inject en Vue 3 por TODOvue",[870,47053,47057,47047,873,18479],"\u002Fblog\u002Fvue-provide-inject-avoid-prop-drilling.es",[48965],{"headline":47035,"author":48966,"datePublished":48967,"@type":880},{"name":868,"@type":879},"2026-01-22T23:30:00-05:00",{"title":47035,"description":48959},"blog\u002Fvue-provide-inject-avoid-prop-drilling.es",[48971,48974,48977,48978,48979,48980],{"tag":48972,"color":48973},"Inyección de Dependencias","#2E86DE",{"tag":48975,"color":48976},"Gestión de Estado","#FF9800",{"tag":2458,"color":2459},{"tag":47016,"color":47027},{"tag":888,"color":889},{"tag":891,"color":892},"A1u4zDgaHmVxz0Ez45AaQr00Z5ZYw963AApX3oEj18I",{"id":48983,"title":47523,"body":48984,"cover":49620,"coverAlt":49621,"date":49622,"description":49623,"draft":852,"extension":853,"lab":49624,"locale":864,"meta":49634,"navigation":125,"path":49637,"schemaOrg":49638,"seo":49643,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":49644,"tags":49645,"__hash__":49651},"blog\u002Fblog\u002Fvue-reactivity-explained.es.md",{"type":8,"value":48985,"toc":49606},[48986,48989,48992,48995,48999,49002,49023,49026,49034,49038,49041,49048,49060,49075,49081,49087,49090,49098,49106,49109,49172,49180,49184,49187,49207,49210,49214,49217,49235,49260,49263,49321,49325,49462,49600,49603],[11,48987,47523],{"id":48988},"qué-es-la-reactividad-la-magia-detrás-de-vuejs-explicada-con-claridad",[15,48990,48991],{},"La reactividad es el corazón de Vue.js. Es lo que hace que la interfaz no sea un adorno bonito, sino un sistema vivo que responde a los cambios de estado sin que tú tengas que perseguir el DOM como si fuera 2012.",[15,48993,48994],{},"En este artículo vamos a desmontar el concepto sin misticismo innecesario: primero con una analogía simple, luego con lo que realmente ocurre a nivel técnico, y finalmente con buenas prácticas que te ahorrarán bugs y problemas de rendimiento.",[34,48996,48998],{"id":48997},"la-analogía-el-efecto-excel","La analogía: el efecto Excel",[15,49000,49001],{},"No necesitas un doctorado en ciencias de la computación para entender la reactividad. Basta con haber usado Excel sin romper nada.",[15,49003,49004,49005,49008,49009,49012,49013,49015,49016,50,49019,49022],{},"Si en una celda ",[958,49006,49007],{},"C1"," escribes la fórmula ",[22,49010,49011],{},"=A1 + B1",", el valor de ",[958,49014,49007],{}," se actualiza automáticamente cuando cambian ",[958,49017,49018],{},"A1",[958,49020,49021],{},"B1",". No haces clic en “refrescar”, no vuelves a escribir la fórmula. Simplemente ocurre.",[15,49024,49025],{},"Eso es reactividad: una relación automática entre datos y resultados.",[823,49027,49028],{},[15,49029,49030,49033],{},[958,49031,49032],{},"Analogía del mundo real:"," imagina una cafetera inteligente. En el momento en que detecta que hay una taza colocada, el botón de iniciar se activa. No porque alguien lo programe cada vez, sino porque el sistema está atento al estado.",[34,49035,49037],{"id":49036},"la-evolución-técnica-de-vue-2-a-vue-3","La evolución técnica: de Vue 2 a Vue 3",[15,49039,49040],{},"Vue no siempre tuvo el sistema de reactividad elegante que conocemos hoy. Entender su evolución ayuda a escribir mejor código y a no pelearse con el framework.",[1074,49042,49044,49045],{"id":49043},"vue-2-objectdefineproperty","Vue 2: ",[22,49046,49047],{},"Object.defineProperty",[15,49049,49050,49051,2488,49054,49057,49058,764],{},"En Vue 2, cada propiedad reactiva se convertía en un par de ",[4070,49052,49053],{},"getters",[4070,49055,49056],{},"setters"," usando ",[22,49059,49047],{},[737,49061,49062],{},[740,49063,49064,49067,49068,49071,49072,764],{},[958,49065,49066],{},"La limitación:"," Vue tenía que recorrer el objeto completo al inicializarlo. Si añadías una propiedad nueva o modificabas un índice de un array directamente (",[22,49069,49070],{},"arr[0] = x","), Vue no se enteraba. Por eso existían soluciones como ",[22,49073,49074],{},"Vue.set()",[1074,49076,49078,49079],{"id":49077},"vue-3-el-poder-de-proxy","Vue 3: el poder de ",[22,49080,17701],{},[15,49082,49083,49084,48768],{},"Vue 3 cambió completamente el enfoque usando ",[958,49085,49086],{},"Proxies",[15,49088,49089],{},"Un Proxy envuelve un objeto y puede interceptar prácticamente cualquier operación: leer, escribir, borrar o añadir propiedades.",[737,49091,49092],{},[740,49093,49094,49097],{},[958,49095,49096],{},"La ventaja:"," no importa cuándo ni cómo cambie el objeto. Vue puede detectarlo. El resultado es una reactividad más profunda, más predecible y con mejor rendimiento.",[34,49099,49101,49102,13234,49104],{"id":49100},"los-dos-pilares-ref-vs-reactive","Los dos pilares: ",[22,49103,49],{},[22,49105,53],{},[15,49107,49108],{},"Si usas la Composition API, esta duda aparece antes de que termines tu primer café.",[6160,49110,49111,49125],{},[6163,49112,49113],{},[6166,49114,49115,49117,49121],{},[6169,49116,46871],{},[6169,49118,49119],{},[22,49120,49],{},[6169,49122,49123],{},[22,49124,53],{},[6182,49126,49127,49138,49150,49161],{},[6166,49128,49129,49132,49135],{},[6187,49130,49131],{},"Tipo de dato",[6187,49133,49134],{},"Primitivos y objetos",[6187,49136,49137],{},"Solo objetos y colecciones",[6166,49139,49140,49143,49147],{},[6187,49141,49142],{},"Acceso en JS",[6187,49144,49145],{},[22,49146,17800],{},[6187,49148,49149],{},"Acceso directo",[6166,49151,49152,49156,49159],{},[6187,49153,995,49154],{},[22,49155,26850],{},[6187,49157,49158],{},"Auto-desempaquetado",[6187,49160,49149],{},[6166,49162,49163,49166,49169],{},[6187,49164,49165],{},"Uso ideal",[6187,49167,49168],{},"Estados simples y aislados",[6187,49170,49171],{},"Estados complejos o anidados",[15,49173,49174,49175,49177,49178,764],{},"Regla mental rápida: si es una sola cosa, ",[22,49176,24],{},". Si es una estructura, ",[22,49179,13059],{},[34,49181,49183],{"id":49182},"el-ciclo-interno-track-y-trigger","El ciclo interno: track y trigger",[15,49185,49186],{},"El motor de reactividad de Vue funciona con un sistema sorprendentemente elegante:",[10842,49188,49189,49195,49201],{},[740,49190,49191,49194],{},[958,49192,49193],{},"Track:"," cuando una función lee una variable reactiva, Vue registra esa relación.",[740,49196,49197,49200],{},[958,49198,49199],{},"Trigger:"," cuando el valor cambia, Vue notifica a todas las funciones que dependen de él.",[740,49202,49203,49206],{},[958,49204,49205],{},"Update:"," el componente se vuelve a renderizar. El Virtual DOM se encarga de actualizar solo lo necesario.",[15,49208,49209],{},"Tú cambias datos. Vue decide qué tocar en el DOM. Separación de responsabilidades en su máxima expresión.",[34,49211,49213],{"id":49212},"consejos-de-rendimiento-nivel-2026","Consejos de rendimiento (nivel 2026)",[15,49215,49216],{},"Si tu aplicación empieza a crecer, estas decisiones importan más de lo que parece.",[737,49218,49219,49229],{},[740,49220,49221,49228],{},[958,49222,49223,2488,49225,1203],{},[22,49224,18274],{},[22,49226,49227],{},"shallowReactive"," útiles cuando trabajas con objetos grandes que no necesitan reactividad profunda.",[740,49230,49231,49234],{},[958,49232,49233],{},"Cuidado al desestructurar:"," hacer esto rompe la reactividad:",[74,49236,49239],{"className":46758,"code":49237,"filename":49238,"language":46762,"meta":80,"style":80},"const { nombre } = estadoReactivo; \u002F\u002F mal\n","index.js",[22,49240,49241],{"__ignoreMap":80},[84,49242,49243,49245,49247,49250,49252,49254,49257],{"class":86,"line":87},[84,49244,132],{"class":108},[84,49246,6763],{"class":90},[84,49248,49249],{"class":135},"nombre",[84,49251,18230],{"class":90},[84,49253,184],{"class":108},[84,49255,49256],{"class":90}," estadoReactivo; ",[84,49258,49259],{"class":13481},"\u002F\u002F mal\n",[15,49261,49262],{},"La forma correcta es:",[74,49264,49266],{"className":46758,"code":49265,"filename":49238,"language":46762,"meta":80,"style":80},"import { reactive, toRefs } from 'vue';\n\nconst estado = reactive({ nombre: 'Vue' });\nconst { nombre } = toRefs(estado);\n",[22,49267,49268,49281,49285,49303],{"__ignoreMap":80},[84,49269,49270,49272,49275,49277,49279],{"class":86,"line":87},[84,49271,109],{"class":108},[84,49273,49274],{"class":90}," { reactive, toRefs } ",[84,49276,115],{"class":108},[84,49278,46336],{"class":118},[84,49280,18869],{"class":90},[84,49282,49283],{"class":86,"line":105},[84,49284,126],{"emptyLinePlaceholder":125},[84,49286,49287,49289,49292,49294,49296,49299,49301],{"class":86,"line":122},[84,49288,132],{"class":108},[84,49290,49291],{"class":135}," estado",[84,49293,139],{"class":108},[84,49295,2814],{"class":98},[84,49297,49298],{"class":90},"({ nombre: ",[84,49300,37815],{"class":118},[84,49302,30089],{"class":90},[84,49304,49305,49307,49309,49311,49313,49315,49318],{"class":86,"line":129},[84,49306,132],{"class":108},[84,49308,6763],{"class":90},[84,49310,49249],{"class":135},[84,49312,18230],{"class":90},[84,49314,184],{"class":108},[84,49316,49317],{"class":98}," toRefs",[84,49319,49320],{"class":90},"(estado);\n",[34,49322,49324],{"id":49323},"ejemplo-práctico-el-contador-más-honesto-del-mundo","Ejemplo práctico: el contador más honesto del mundo",[74,49326,49328],{"className":76,"code":49327,"filename":873,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue';\n\nconst tazasDeCafe = ref(0);\n\nconst incrementar = () => {\n  tazasDeCafe.value++;\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"incrementar\">\n    Tazas consumidas: {{ tazasDeCafe }}\n  \u003C\u002Fbutton>\n\u003C\u002Ftemplate>\n",[22,49329,49330,49340,49352,49356,49373,49377,49392,49402,49406,49414,49418,49426,49441,49446,49454],{"__ignoreMap":80},[84,49331,49332,49334,49336,49338],{"class":86,"line":87},[84,49333,91],{"class":90},[84,49335,95],{"class":94},[84,49337,99],{"class":98},[84,49339,102],{"class":90},[84,49341,49342,49344,49346,49348,49350],{"class":86,"line":105},[84,49343,109],{"class":108},[84,49345,112],{"class":90},[84,49347,115],{"class":108},[84,49349,46336],{"class":118},[84,49351,18869],{"class":90},[84,49353,49354],{"class":86,"line":122},[84,49355,126],{"emptyLinePlaceholder":125},[84,49357,49358,49360,49363,49365,49367,49369,49371],{"class":86,"line":129},[84,49359,132],{"class":108},[84,49361,49362],{"class":135}," tazasDeCafe",[84,49364,139],{"class":108},[84,49366,142],{"class":98},[84,49368,145],{"class":90},[84,49370,4320],{"class":135},[84,49372,18994],{"class":90},[84,49374,49375],{"class":86,"line":154},[84,49376,126],{"emptyLinePlaceholder":125},[84,49378,49379,49381,49384,49386,49388,49390],{"class":86,"line":159},[84,49380,132],{"class":108},[84,49382,49383],{"class":98}," incrementar",[84,49385,139],{"class":108},[84,49387,169],{"class":90},[84,49389,172],{"class":108},[84,49391,175],{"class":90},[84,49393,49394,49397,49400],{"class":86,"line":178},[84,49395,49396],{"class":90},"  tazasDeCafe.value",[84,49398,49399],{"class":108},"++",[84,49401,18869],{"class":90},[84,49403,49404],{"class":86,"line":190},[84,49405,18973],{"class":90},[84,49407,49408,49410,49412],{"class":86,"line":196},[84,49409,274],{"class":90},[84,49411,95],{"class":94},[84,49413,102],{"class":90},[84,49415,49416],{"class":86,"line":201},[84,49417,126],{"emptyLinePlaceholder":125},[84,49419,49420,49422,49424],{"class":86,"line":217},[84,49421,91],{"class":90},[84,49423,291],{"class":94},[84,49425,102],{"class":90},[84,49427,49428,49430,49432,49434,49436,49439],{"class":86,"line":227},[84,49429,299],{"class":90},[84,49431,302],{"class":94},[84,49433,305],{"class":98},[84,49435,184],{"class":90},[84,49437,49438],{"class":118},"\"incrementar\"",[84,49440,102],{"class":90},[84,49442,49443],{"class":86,"line":232},[84,49444,49445],{"class":90},"    Tazas consumidas: {{ tazasDeCafe }}\n",[84,49447,49448,49450,49452],{"class":86,"line":237},[84,49449,324],{"class":90},[84,49451,302],{"class":94},[84,49453,102],{"class":90},[84,49455,49456,49458,49460],{"class":86,"line":253},[84,49457,274],{"class":90},[84,49459,291],{"class":94},[84,49461,102],{"class":90},[74,49463,49465],{"className":76,"code":49464,"filename":1782,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      tazasDeCafe: 0,\n    };\n  },\n  methods: {\n    incrementar() {\n      this.tazasDeCafe++;\n    },\n  },\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"incrementar\">\n    Tazas consumidas: {{ tazasDeCafe }}\n  \u003C\u002Fbutton>\n\u003C\u002Ftemplate>\n",[22,49466,49467,49475,49483,49489,49495,49504,49508,49512,49516,49523,49534,49538,49542,49546,49554,49558,49566,49580,49584,49592],{"__ignoreMap":80},[84,49468,49469,49471,49473],{"class":86,"line":87},[84,49470,91],{"class":90},[84,49472,95],{"class":94},[84,49474,102],{"class":90},[84,49476,49477,49479,49481],{"class":86,"line":105},[84,49478,418],{"class":108},[84,49480,1870],{"class":108},[84,49482,175],{"class":90},[84,49484,49485,49487],{"class":86,"line":122},[84,49486,1896],{"class":98},[84,49488,1307],{"class":90},[84,49490,49491,49493],{"class":86,"line":129},[84,49492,1903],{"class":108},[84,49494,175],{"class":90},[84,49496,49497,49500,49502],{"class":86,"line":154},[84,49498,49499],{"class":90},"      tazasDeCafe: ",[84,49501,4320],{"class":135},[84,49503,1887],{"class":90},[84,49505,49506],{"class":86,"line":159},[84,49507,19195],{"class":90},[84,49509,49510],{"class":86,"line":178},[84,49511,1941],{"class":90},[84,49513,49514],{"class":86,"line":190},[84,49515,1950],{"class":90},[84,49517,49518,49521],{"class":86,"line":196},[84,49519,49520],{"class":98},"    incrementar",[84,49522,1307],{"class":90},[84,49524,49525,49527,49530,49532],{"class":86,"line":201},[84,49526,2022],{"class":135},[84,49528,49529],{"class":90},".tazasDeCafe",[84,49531,49399],{"class":108},[84,49533,18869],{"class":90},[84,49535,49536],{"class":86,"line":217},[84,49537,7783],{"class":90},[84,49539,49540],{"class":86,"line":227},[84,49541,1941],{"class":90},[84,49543,49544],{"class":86,"line":232},[84,49545,18973],{"class":90},[84,49547,49548,49550,49552],{"class":86,"line":237},[84,49549,274],{"class":90},[84,49551,95],{"class":94},[84,49553,102],{"class":90},[84,49555,49556],{"class":86,"line":253},[84,49557,126],{"emptyLinePlaceholder":125},[84,49559,49560,49562,49564],{"class":86,"line":266},[84,49561,91],{"class":90},[84,49563,291],{"class":94},[84,49565,102],{"class":90},[84,49567,49568,49570,49572,49574,49576,49578],{"class":86,"line":271},[84,49569,299],{"class":90},[84,49571,302],{"class":94},[84,49573,305],{"class":98},[84,49575,184],{"class":90},[84,49577,49438],{"class":118},[84,49579,102],{"class":90},[84,49581,49582],{"class":86,"line":281},[84,49583,49445],{"class":90},[84,49585,49586,49588,49590],{"class":86,"line":286},[84,49587,324],{"class":90},[84,49589,302],{"class":94},[84,49591,102],{"class":90},[84,49593,49594,49596,49598],{"class":86,"line":296},[84,49595,274],{"class":90},[84,49597,291],{"class":94},[84,49599,102],{"class":90},[15,49601,49602],{},"Cada clic actualiza el estado. Vue detecta el cambio, vuelve a renderizar lo necesario y tú no tocas el DOM en ningún momento. Eso es la reactividad bien entendida: menos código imperativo, menos errores mentales y una interfaz que hace exactamente lo que debería.",[835,49604,49605],{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}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 .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}",{"title":80,"searchDepth":105,"depth":105,"links":49607},[49608,49609,49615,49617,49618,49619],{"id":48997,"depth":105,"text":48998},{"id":49036,"depth":105,"text":49037,"children":49610},[49611,49613],{"id":49043,"depth":122,"text":49612},"Vue 2: Object.defineProperty",{"id":49077,"depth":122,"text":49614},"Vue 3: el poder de Proxy",{"id":49100,"depth":105,"text":49616},"Los dos pilares: ref() vs reactive()",{"id":49182,"depth":105,"text":49183},{"id":49212,"depth":105,"text":49213},{"id":49323,"depth":105,"text":49324},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1767664201\u002Fmagical_vue_coding_laboratory_p1incq.jpg","Ilustración de un laboratorio de codificación mágica de Vue.js","2026-01-06","Explora el sistema de reactividad de Vue.js, desde analogías simples hasta su implementación técnica con Proxies, y aprende a optimizar tus aplicaciones.",{"title":49625,"goal":49626,"tasks":49627,"starterCode":49632,"solutionHint":49633},"Construye un contador reactivo pequeno","Practica la diferencia entre estado, estado derivado y efectos creando un contador pequeno con primitivas de reactividad de Vue.",[49628,49629,49630,49631],"Crea un contador con ref() y muestra su valor actual.","Agrega un computed que duplique el contador.","Usa watch() para registrar cuando el contador llegue a 5.","Explica en una frase que lecturas se rastrean y que escrituras disparan actualizaciones.","\u003Cscript setup>\nimport { computed, ref, watch } from 'vue'\n\nconst count = ref(0)\nconst doubled = computed(() => count.value * 2)\n\nwatch(count, (value) => {\n  if (value === 5) {\n    console.log('El contador llego a 5')\n  }\n})\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"count++\">Contador: {{ count }}\u003C\u002Fbutton>\n  \u003Cp>Doble: {{ doubled }}\u003C\u002Fp>\n\u003C\u002Ftemplate>\n","El template y el getter de computed leen count, por eso Vue rastrea esas dependencias. Al hacer clic en el boton se escribe en count, asi que Vue dispara las actualizaciones dependientes.",{"updatedAt":47012,"coverCaption":49635,"author":868,"keywords":49636},"Ilustración de un laboratorio de codificación mágica de Vue.js por TODOvue",[870,3945,49086,873,24,13059],"\u002Fblog\u002Fvue-reactivity-explained.es",[49639],{"headline":49640,"author":49641,"datePublished":49642,"@type":880},"Vue 3.6 Beta: La Revolución de Vapor Mode y el Nuevo Motor de Reactividad",{"name":868,"@type":879},"2026-01-05T22:00:00-05:00",{"title":47523,"description":49623},"blog\u002Fvue-reactivity-explained.es",[49646,49647,49648],{"tag":3945,"color":3946},{"tag":894,"color":895},{"tag":49649,"color":49650},"Historia","#F27E68","aNdUKGKLcU0hgUVTWG4WlFQa2a_Y5FJ5gcfUnxVfX-o",{"id":49653,"title":49640,"body":49654,"cover":50492,"coverAlt":50493,"date":50494,"description":50495,"draft":852,"extension":853,"lab":882,"locale":864,"meta":50496,"navigation":125,"path":50499,"schemaOrg":50500,"seo":50504,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":50505,"tags":50506,"__hash__":50517},"blog\u002Fblog\u002Fvue-beta-vapor-mode-revealed.es.md",{"type":8,"value":49655,"toc":50471},[49656,49659,49670,49676,49680,49690,49694,49701,49704,49747,49755,49763,49769,49773,49782,49789,49794,49818,49823,49850,49854,49857,49861,49949,49958,49962,49975,49979,49982,50145,50151,50155,50247,50251,50254,50258,50276,50291,50305,50319,50323,50330,50412,50416,50422,50456,50458,50468],[11,49657,49640],{"id":49658},"vue-36-beta-la-revolución-de-vapor-mode-y-el-nuevo-motor-de-reactividad",[15,49660,49661,49662,49665,49666,49669],{},"El ecosistema de Vue ha alcanzado un punto de inflexión con el lanzamiento de la ",[958,49663,49664],{},"versión 3.6.0-beta.1",".\nEsta actualización no es un paso incremental; es una reingeniería profunda que prepara a Vue para un futuro donde el ",[958,49667,49668],{},"Virtual DOM (VDOM)"," deja de ser el protagonista absoluto.",[15,49671,49672,49673,764],{},"En este artículo, desglosamos los dos pilares de esta beta: la llegada de la \"Paridad Funcional\" en Vapor Mode y el nuevo motor de señales inspirado en ",[22,49674,49675],{},"alien-signals",[34,49677,49679],{"id":49678},"vapor-mode-alcanzando-la-paridad-funcional","Vapor Mode: Alcanzando la \"Paridad Funcional\"",[15,49681,49682,49683,49686,49687,764],{},"Hasta hace poco, ",[958,49684,49685],{},"Vapor Mode"," era un experimento prometedor pero limitado.\nCon la versión 3.6, el equipo core anuncia que se ha alcanzado la ",[958,49688,49689],{},"Paridad Funcional",[1074,49691,49693],{"id":49692},"qué-significa-paridad-funcional-exactamente","¿Qué significa \"Paridad Funcional\" exactamente?",[15,49695,49696,49697,49700],{},"En el desarrollo de software, este término significa que una nueva implementación (en este caso, el compilador Vapor) ya es capaz de hacer ",[958,49698,49699],{},"exactamente lo mismo"," que la implementación original (el compilador de VDOM estándar).",[15,49702,49703],{},"Para nosotros los desarrolladores, esto implica que Vapor ya no es solo para \"componentes simples\". Ahora soporta:",[737,49705,49706,49719,49734],{},[740,49707,49708,49711,49712,754,49714,49716,49717,764],{},[958,49709,49710],{},"Directivas de control total:"," Manejo complejo de ",[22,49713,8299],{},[22,49715,25577],{}," (con algoritmos de movimiento de nodos optimizados) y ",[22,49718,18689],{},[740,49720,49721,49724,49725,49727,49728,49731,49732,764],{},[958,49722,49723],{},"Arquitectura de Componentes:"," Soporte para ",[4070,49726,46292],{},", componentes dinámicos (",[22,49729,49730],{},"\u003Ccomponent :is=\"...\">",") y ",[22,49733,8249],{},[740,49735,49736,49739,49740,49743,49744,764],{},[958,49737,49738],{},"Funciones integradas:"," Soporte nativo para ",[22,49741,49742],{},"\u003CTeleport>"," y el sistema de ",[22,49745,49746],{},"\u003CTransition>",[823,49748,49749],{},[15,49750,49751,49754],{},[958,49752,49753],{},"En resumen:"," La paridad funcional permite que un componente complejo de producción pueda ser compilado en modo Vapor sin perder ninguna característica de Vue, pero ganando una velocidad de ejecución sin precedentes.",[34,49756,49758,49759,49762],{"id":49757},"refactorización-de-vuereactivity-el-efecto-alien","Refactorización de ",[22,49760,49761],{},"@vue\u002Freactivity",": El efecto \"Alien\"",[15,49764,49765,49766,49768],{},"La gran sorpresa técnica de Vue 3.6 es la integración de los conceptos de ",[958,49767,49675],{}," (una librería de señales ultrarrápida creada por Johnson Chu, miembro del core team) dentro del núcleo de Vue.",[1074,49770,49772],{"id":49771},"por-qué-cambiar-el-motor-de-señales","¿Por qué cambiar el motor de señales?",[15,49774,49775,49776,49778,49779,49781],{},"El sistema de reactividad de Vue 3 basado en ",[22,49777,17701],{}," era excelente, pero sufría en dos puntos: el uso de memoria y la limpieza de dependencias.\nLa adopción del modelo de ",[22,49780,49675],{}," resuelve esto cambiando la estructura de datos interna.",[24627,49783,49785,49786,49788],{"id":49784},"el-cambio-técnico-de-set-a-listas-enlazadas","El cambio técnico: De ",[22,49787,16550],{}," a Listas Enlazadas",[15,49790,49791,49792,764],{},"Tradicionalmente, Vue guardaba los \"suscriptores\" (los efectos que deben ejecutarse cuando un dato cambia) en objetos tipo ",[22,49793,16550],{},[737,49795,49796,49808],{},[740,49797,49798,49801,49802,49804,49805,2686],{},[958,49799,49800],{},"El Problema:"," Crear miles de ",[22,49803,16550],{}," consume mucha memoria y estresa al recolector de basura (",[4070,49806,49807],{},"Garbage Collector",[740,49809,49810,49813,49814,49817],{},[958,49811,49812],{},"La Solución:"," El nuevo motor usa una ",[958,49815,49816],{},"Lista Doblemente Enlazada",". Las suscripciones se conectan entre sí como eslabones de una cadena.",[15,49819,49820],{},[958,49821,49822],{},"Los beneficios reales son impactantes:",[10842,49824,49825,49835,49841],{},[740,49826,49827,49830,49831,49834],{},[958,49828,49829],{},"Reducción de Memoria:"," Hasta un ",[958,49832,49833],{},"14% - 20% menos de consumo"," en aplicaciones con alta densidad de estados.",[740,49836,49837,49840],{},[958,49838,49839],{},"Operaciones O(1):"," Añadir o eliminar una suscripción reactiva ahora tiene un coste constante, sin importar cuántas dependencias existan.",[740,49842,49843,49846,49847,49849],{},[958,49844,49845],{},"Computadas Inteligentes:"," Se ha refinado el algoritmo de \"limpieza\" (cleanup), evitando que las propiedades ",[22,49848,2523],{}," se recalculen innecesariamente cuando las dependencias no han cambiado realmente.",[34,49851,49853],{"id":49852},"comparativa-vnode-vs-vapor-mode","Comparativa: VNode vs. Vapor Mode",[15,49855,49856],{},"Para entender por qué esto es una revolución, comparemos qué sucede \"bajo el capó\" con un componente básico.",[1074,49858,49860],{"id":49859},"código-fuente","Código Fuente",[74,49862,49864],{"className":76,"code":49863,"filename":873,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\nconst count = ref(0)\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"count++\">Contador: {{ count }}\u003C\u002Fbutton>\n\u003C\u002Ftemplate>\n",[22,49865,49866,49876,49886,49902,49910,49914,49922,49941],{"__ignoreMap":80},[84,49867,49868,49870,49872,49874],{"class":86,"line":87},[84,49869,91],{"class":90},[84,49871,95],{"class":94},[84,49873,99],{"class":98},[84,49875,102],{"class":90},[84,49877,49878,49880,49882,49884],{"class":86,"line":105},[84,49879,109],{"class":108},[84,49881,112],{"class":90},[84,49883,115],{"class":108},[84,49885,119],{"class":118},[84,49887,49888,49890,49892,49894,49896,49898,49900],{"class":86,"line":122},[84,49889,132],{"class":108},[84,49891,10133],{"class":135},[84,49893,139],{"class":108},[84,49895,142],{"class":98},[84,49897,145],{"class":90},[84,49899,4320],{"class":135},[84,49901,151],{"class":90},[84,49903,49904,49906,49908],{"class":86,"line":129},[84,49905,274],{"class":90},[84,49907,95],{"class":94},[84,49909,102],{"class":90},[84,49911,49912],{"class":86,"line":154},[84,49913,126],{"emptyLinePlaceholder":125},[84,49915,49916,49918,49920],{"class":86,"line":159},[84,49917,91],{"class":90},[84,49919,291],{"class":94},[84,49921,102],{"class":90},[84,49923,49924,49926,49928,49930,49932,49934,49937,49939],{"class":86,"line":178},[84,49925,299],{"class":90},[84,49927,302],{"class":94},[84,49929,305],{"class":98},[84,49931,184],{"class":90},[84,49933,13204],{"class":118},[84,49935,49936],{"class":90},">Contador: {{ count }}\u003C\u002F",[84,49938,302],{"class":94},[84,49940,102],{"class":90},[84,49942,49943,49945,49947],{"class":86,"line":190},[84,49944,274],{"class":90},[84,49946,291],{"class":94},[84,49948,102],{"class":90},[74,49950,49952],{"className":76,"code":49951,"filename":1782,"language":79,"meta":80,"style":80},"\u002F\u002F Vapor Mode es exclusivo de Composition API. No hay soporte disponible para Options API.\n",[22,49953,49954],{"__ignoreMap":80},[84,49955,49956],{"class":86,"line":87},[84,49957,49951],{"class":90},[1074,49959,49961],{"id":49960},"el-enfoque-tradicional-virtual-dom","El enfoque tradicional (Virtual DOM)",[15,49963,49964,49965,49967,49968,49970,49971,49974],{},"Vue crea un objeto de JavaScript (VNode) que representa el botón. Cuando ",[22,49966,18227],{}," cambia, Vue crea un ",[958,49969,47648],{}," VNode, compara ambos (",[4070,49972,49973],{},"diffing",") y decide qué parte del DOM real actualizar. Esto ocurre en milisegundos, pero tiene un costo de CPU y memoria.",[1074,49976,49978],{"id":49977},"el-enfoque-vapor-directo-al-grano","El enfoque Vapor (Directo al grano)",[15,49980,49981],{},"El compilador de Vapor genera código que \"apunta\" directamente al nodo de texto del botón.",[74,49983,49986],{"className":46758,"code":49984,"filename":49985,"language":46762,"meta":80,"style":80},"import { delegateEvents, t, setInterpolation, renderEffect } from '@vue\u002Fruntime-vapor'\n\nconst t0 = t('\u003Cbutton>\u003C\u002Fbutton>') \u002F\u002F Plantilla estática\n\nexport function render(_ctx) {\n  const el0 = t0() \n  delegateEvents(el0, 'click', () => _ctx.count++)\n  \n  \u002F\u002F No hay comparación de árboles. Hay un \"vínculo\" directo.\n  renderEffect(() => {\n    setInterpolation(el0, () => `Contador: ${_ctx.count}`)\n  })\n  \n  return el0\n}\n","Counter.vapor.compiled.js",[22,49987,49988,50000,50004,50026,50030,50046,50060,50083,50087,50092,50103,50126,50130,50134,50141],{"__ignoreMap":80},[84,49989,49990,49992,49995,49997],{"class":86,"line":87},[84,49991,109],{"class":108},[84,49993,49994],{"class":90}," { delegateEvents, t, setInterpolation, renderEffect } ",[84,49996,115],{"class":108},[84,49998,49999],{"class":118}," '@vue\u002Fruntime-vapor'\n",[84,50001,50002],{"class":86,"line":105},[84,50003,126],{"emptyLinePlaceholder":125},[84,50005,50006,50008,50011,50013,50016,50018,50021,50023],{"class":86,"line":122},[84,50007,132],{"class":108},[84,50009,50010],{"class":135}," t0",[84,50012,139],{"class":108},[84,50014,50015],{"class":98}," t",[84,50017,145],{"class":90},[84,50019,50020],{"class":118},"'\u003Cbutton>\u003C\u002Fbutton>'",[84,50022,3126],{"class":90},[84,50024,50025],{"class":13481},"\u002F\u002F Plantilla estática\n",[84,50027,50028],{"class":86,"line":129},[84,50029,126],{"emptyLinePlaceholder":125},[84,50031,50032,50034,50036,50039,50041,50044],{"class":86,"line":154},[84,50033,418],{"class":108},[84,50035,421],{"class":108},[84,50037,50038],{"class":98}," render",[84,50040,145],{"class":90},[84,50042,50043],{"class":429},"_ctx",[84,50045,438],{"class":90},[84,50047,50048,50050,50053,50055,50057],{"class":86,"line":159},[84,50049,443],{"class":108},[84,50051,50052],{"class":135}," el0",[84,50054,139],{"class":108},[84,50056,50010],{"class":98},[84,50058,50059],{"class":90},"() \n",[84,50061,50062,50065,50068,50071,50074,50076,50079,50081],{"class":86,"line":178},[84,50063,50064],{"class":98},"  delegateEvents",[84,50066,50067],{"class":90},"(el0, ",[84,50069,50070],{"class":118},"'click'",[84,50072,50073],{"class":90},", () ",[84,50075,172],{"class":108},[84,50077,50078],{"class":90}," _ctx.count",[84,50080,49399],{"class":108},[84,50082,151],{"class":90},[84,50084,50085],{"class":86,"line":190},[84,50086,43259],{"class":90},[84,50088,50089],{"class":86,"line":196},[84,50090,50091],{"class":13481},"  \u002F\u002F No hay comparación de árboles. Hay un \"vínculo\" directo.\n",[84,50093,50094,50097,50099,50101],{"class":86,"line":201},[84,50095,50096],{"class":98},"  renderEffect",[84,50098,2992],{"class":90},[84,50100,172],{"class":108},[84,50102,175],{"class":90},[84,50104,50105,50108,50111,50113,50116,50118,50120,50122,50124],{"class":86,"line":217},[84,50106,50107],{"class":98},"    setInterpolation",[84,50109,50110],{"class":90},"(el0, () ",[84,50112,172],{"class":108},[84,50114,50115],{"class":118}," `Contador: ${",[84,50117,50043],{"class":90},[84,50119,764],{"class":118},[84,50121,18227],{"class":90},[84,50123,4666],{"class":118},[84,50125,151],{"class":90},[84,50127,50128],{"class":86,"line":227},[84,50129,3104],{"class":90},[84,50131,50132],{"class":86,"line":232},[84,50133,43259],{"class":90},[84,50135,50136,50138],{"class":86,"line":237},[84,50137,557],{"class":108},[84,50139,50140],{"class":90}," el0\n",[84,50142,50143],{"class":86,"line":253},[84,50144,193],{"class":90},[15,50146,50147,50150],{},[958,50148,50149],{},"Resultado:"," Cero Virtual DOM, cero algoritmos de comparación, solo manipulación directa del DOM con la máxima eficiencia posible.",[34,50152,50154],{"id":50153},"tabla-de-rendimiento-y-capacidades","Tabla de Rendimiento y Capacidades",[6160,50156,50157,50169],{},[6163,50158,50159],{},[6166,50160,50161,50163,50166],{},[6169,50162,46871],{},[6169,50164,50165],{},"Vue 3.5 (Standard)",[6169,50167,50168],{},"Vue 3.6 (Vapor Mode)",[6182,50170,50171,50185,50201,50216,50232],{},[6166,50172,50173,50178,50180],{},[6187,50174,50175],{},[958,50176,50177],{},"Estructura Interna",[6187,50179,49668],{},[6187,50181,50182],{},[958,50183,50184],{},"VDOM-less (Directo)",[6166,50186,50187,50192,50197],{},[6187,50188,50189],{},[958,50190,50191],{},"Motor de Señales",[6187,50193,50194,50195],{},"Basado en ",[22,50196,16550],{},[6187,50198,50199],{},[958,50200,49816],{},[6166,50202,50203,50208,50211],{},[6187,50204,50205],{},[958,50206,50207],{},"Consumo de Memoria",[6187,50209,50210],{},"Base estándar",[6187,50212,50213],{},[958,50214,50215],{},"~14% menor",[6166,50217,50218,50223,50226],{},[6187,50219,50220],{},[958,50221,50222],{},"Interoperabilidad",[6187,50224,50225],{},"Completa",[6187,50227,50228,50229,909],{},"Alta (vía ",[22,50230,50231],{},"vaporInterop",[6166,50233,50234,50239,50242],{},[6187,50235,50236],{},[958,50237,50238],{},"Recomendado para",[6187,50240,50241],{},"Apps generales, SSR masivo",[6187,50243,50244],{},[958,50245,50246],{},"Dispositivos IoT, Dashboards pesados, Web Components",[34,50248,50250],{"id":50249},"cómo-empezar-a-probarlo","¿Cómo empezar a probarlo?",[15,50252,50253],{},"Para experimentar con estas mejoras, debes usar la versión beta y configurar tu entorno de Vite para reconocer el modo Vapor.",[1074,50255,50257],{"id":50256},"paso-1-instalación","Paso 1: Instalación",[74,50259,50264],{"className":50260,"code":50261,"filename":50262,"language":50263,"meta":80,"style":80},"language-bash shiki shiki-themes github-light github-dark","npm install vue@3.6.0-beta.1\n","npm","bash",[22,50265,50266],{"__ignoreMap":80},[84,50267,50268,50270,50273],{"class":86,"line":87},[84,50269,50262],{"class":98},[84,50271,50272],{"class":118}," install",[84,50274,50275],{"class":118}," vue@3.6.0-beta.1\n",[74,50277,50280],{"className":50260,"code":50278,"filename":50279,"language":50263,"meta":80,"style":80},"pnpm add vue@3.6.0-beta.1\n","pnpm",[22,50281,50282],{"__ignoreMap":80},[84,50283,50284,50286,50289],{"class":86,"line":87},[84,50285,50279],{"class":98},[84,50287,50288],{"class":118}," add",[84,50290,50275],{"class":118},[74,50292,50295],{"className":50260,"code":50293,"filename":50294,"language":50263,"meta":80,"style":80},"yarn add vue@3.6.0-beta.1\n","yarn",[22,50296,50297],{"__ignoreMap":80},[84,50298,50299,50301,50303],{"class":86,"line":87},[84,50300,50294],{"class":98},[84,50302,50288],{"class":118},[84,50304,50275],{"class":118},[74,50306,50309],{"className":50260,"code":50307,"filename":50308,"language":50263,"meta":80,"style":80},"bun add vue@3.6.0-beta.1\n","bun",[22,50310,50311],{"__ignoreMap":80},[84,50312,50313,50315,50317],{"class":86,"line":87},[84,50314,50308],{"class":98},[84,50316,50288],{"class":118},[84,50318,50275],{"class":118},[1074,50320,50322],{"id":50321},"paso-2-configuración-de-vite","Paso 2: Configuración de Vite",[15,50324,50325,50326,50329],{},"Activa el soporte para archivos ",[22,50327,50328],{},".vapor.vue"," (la convención recomendada para diferenciar componentes):",[74,50331,50335],{"className":46758,"code":50332,"filename":50333,"highlights":50334,"language":46762,"meta":80,"style":80},"import { defineConfig } from 'vite'\nimport vue from '@vitejs\u002Fplugin-vue'\n\nexport default defineConfig({\n  plugins: [\n    vue({\n      vapor: true \u002F\u002F Activa el compilador de Vapor\n    })\n  ]\n})\n","vite.config.js",[178],[22,50336,50337,50349,50361,50365,50376,50381,50388,50399,50403,50408],{"__ignoreMap":80},[84,50338,50339,50341,50344,50346],{"class":86,"line":87},[84,50340,109],{"class":108},[84,50342,50343],{"class":90}," { defineConfig } ",[84,50345,115],{"class":108},[84,50347,50348],{"class":118}," 'vite'\n",[84,50350,50351,50353,50356,50358],{"class":86,"line":105},[84,50352,109],{"class":108},[84,50354,50355],{"class":90}," vue ",[84,50357,115],{"class":108},[84,50359,50360],{"class":118}," '@vitejs\u002Fplugin-vue'\n",[84,50362,50363],{"class":86,"line":122},[84,50364,126],{"emptyLinePlaceholder":125},[84,50366,50367,50369,50371,50374],{"class":86,"line":129},[84,50368,418],{"class":108},[84,50370,1870],{"class":108},[84,50372,50373],{"class":98}," defineConfig",[84,50375,1876],{"class":90},[84,50377,50378],{"class":86,"line":154},[84,50379,50380],{"class":90},"  plugins: [\n",[84,50382,50383,50386],{"class":86,"line":159},[84,50384,50385],{"class":98},"    vue",[84,50387,1876],{"class":90},[84,50389,50391,50394,50396],{"class":50390,"line":178},[86,10151],[84,50392,50393],{"class":90},"      vapor: ",[84,50395,2938],{"class":135},[84,50397,50398],{"class":13481}," \u002F\u002F Activa el compilador de Vapor\n",[84,50400,50401],{"class":86,"line":190},[84,50402,3698],{"class":90},[84,50404,50405],{"class":86,"line":196},[84,50406,50407],{"class":90},"  ]\n",[84,50409,50410],{"class":86,"line":201},[84,50411,1492],{"class":90},[1074,50413,50415],{"id":50414},"paso-3-uso-de-componentes","Paso 3: Uso de componentes",[15,50417,50418,50419,50421],{},"Puedes mezclar componentes estándar y Vapor. Para forzar a un componente a usar el nuevo motor, usa la extensión ",[22,50420,50328],{}," o define el bloque script:",[74,50423,50427],{"className":76,"code":50424,"filename":50425,"highlights":50426,"language":79,"meta":80,"style":80},"\u003Cscript setup vapor>\n\u002F\u002F Este componente se compilará sin Virtual DOM\n\u003C\u002Fscript>\n","Index.vue",[87],[22,50428,50429,50443,50448],{"__ignoreMap":80},[84,50430,50432,50434,50436,50438,50441],{"class":50431,"line":87},[86,10151],[84,50433,91],{"class":90},[84,50435,95],{"class":94},[84,50437,99],{"class":98},[84,50439,50440],{"class":98}," vapor",[84,50442,102],{"class":90},[84,50444,50445],{"class":86,"line":105},[84,50446,50447],{"class":13481},"\u002F\u002F Este componente se compilará sin Virtual DOM\n",[84,50449,50450,50452,50454],{"class":86,"line":122},[84,50451,274],{"class":90},[84,50453,95],{"class":94},[84,50455,102],{"class":90},[34,50457,18395],{"id":18394},[15,50459,50460,50461,50464,50465,50467],{},"Vue 3.6 no es solo una actualización; es un mensaje claro a la comunidad: ",[958,50462,50463],{},"Vue puede ser tan rápido y ligero como el que más, sin sacrificar su amada sintaxis."," Al integrar la eficiencia de ",[22,50466,49675],{}," y alcanzar la paridad funcional con Vapor, Vue se posiciona como el framework más flexible y potente para la próxima década del desarrollo web.",[835,50469,50470],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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 .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":80,"searchDepth":105,"depth":105,"links":50472},[50473,50476,50480,50485,50486,50491],{"id":49678,"depth":105,"text":49679,"children":50474},[50475],{"id":49692,"depth":122,"text":49693},{"id":49757,"depth":105,"text":50477,"children":50478},"Refactorización de @vue\u002Freactivity: El efecto \"Alien\"",[50479],{"id":49771,"depth":122,"text":49772},{"id":49852,"depth":105,"text":49853,"children":50481},[50482,50483,50484],{"id":49859,"depth":122,"text":49860},{"id":49960,"depth":122,"text":49961},{"id":49977,"depth":122,"text":49978},{"id":50153,"depth":105,"text":50154},{"id":50249,"depth":105,"text":50250,"children":50487},[50488,50489,50490],{"id":50256,"depth":122,"text":50257},{"id":50321,"depth":122,"text":50322},{"id":50414,"depth":122,"text":50415},{"id":18394,"depth":105,"text":18395},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1766870280\u002Fvue-beta-vapor-mode-revealed_snvcqg.png","Logo de Vue.js sobre un fondo de código fuente","2025-12-27","Explora las novedades de Vue 3.6 Beta, incluyendo Vapor Mode y la integración de alien-signals para una reactividad más eficiente.",{"updatedAt":47012,"coverCaption":50497,"author":868,"keywords":50498},"Descubre las innovaciones de Vue 3.6 Beta: Vapor Mode y un motor de reactividad renovado","vue 3.6, vapor mode, alien-signals, reactividad, javascript, framework, frontend, beta","\u002Fblog\u002Fvue-beta-vapor-mode-revealed.es",[50501],{"headline":49640,"author":50502,"datePublished":50503,"@type":880},{"name":868,"@type":879},"2025-12-27T00:00:00-05",{"title":49640,"description":50495},"blog\u002Fvue-beta-vapor-mode-revealed.es",[50507,50510,50512,50513,50516],{"tag":50508,"color":50509},"Beta","#42B883",{"tag":49685,"color":50511},"#41B2A6",{"tag":3945,"color":3946},{"tag":50514,"color":50515},"Ecosistema","#68D4F2",{"tag":2462,"color":2463},"OoT1wXBWbx7Nm_VxKBcOVEX_68taHaHv5lb5JWYp_3Q",{"id":50519,"title":50520,"body":50521,"cover":51479,"coverAlt":51480,"date":51481,"description":51482,"draft":852,"extension":853,"lab":882,"locale":864,"meta":51483,"navigation":125,"path":51485,"schemaOrg":51486,"seo":51490,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":51491,"tags":51492,"__hash__":51497},"blog\u002Fblog\u002Fsetting-up-vue-with-vite.es.md","¿Cómo crear tu primer proyecto con Vue usando Vite?",{"type":8,"value":50522,"toc":51467},[50523,50527,50534,50538,50541,50577,50581,50588,50601,50605,50608,50626,50642,50657,50672,50682,50686,50689,50713,50717,50720,50723,50735,50738,50750,50761,50772,50783,50790,50794,50797,50812,50823,50834,50847,50854,50858,50861,50902,50906,50912,51175,51427,51431,51464],[11,50524,50526],{"id":50525},"guía-creando-tu-primer-proyecto-con-vue-y-vite","Guía: Creando tu primer proyecto con Vue y Vite",[15,50528,50529,50530,50533],{},"En esta guía aprenderás a configurar un entorno de desarrollo moderno. ",[958,50531,50532],{},"Vite"," es una herramienta que reemplaza al antiguo Vue CLI, ofreciendo una velocidad de carga casi instantánea durante el desarrollo.",[34,50535,50537],{"id":50536},"resumen-de-la-solución","Resumen de la solución",[15,50539,50540],{},"Para completar este proyecto, seguiremos estos pasos:",[10842,50542,50543,50549,50559,50565,50571],{},[740,50544,50545,50548],{},[958,50546,50547],{},"Preparación",": Verificación de herramientas necesarias (Node.js).",[740,50550,50551,50554,50555,50558],{},[958,50552,50553],{},"Andamiaje",": Uso del comando ",[22,50556,50557],{},"npm create vite"," para generar la estructura.",[740,50560,50561,50564],{},[958,50562,50563],{},"Instalación",": Configuración de las dependencias del proyecto.",[740,50566,50567,50570],{},[958,50568,50569],{},"Ejecución",": Lanzamiento del servidor de desarrollo local.",[740,50572,50573,50576],{},[958,50574,50575],{},"Exploración",": Breve explicación de la estructura de archivos generada.",[34,50578,50580],{"id":50579},"requisitos-previos","Requisitos previos",[15,50582,50583,50584,50587],{},"Antes de empezar, asegúrate de tener instalado ",[958,50585,50586],{},"Node.js"," (versión 18 o superior). Puedes verificarlo abriendo una terminal y escribiendo:",[74,50589,50591],{"className":50260,"code":50590,"filename":50263,"language":50263,"meta":80,"style":80},"node -v\n",[22,50592,50593],{"__ignoreMap":80},[84,50594,50595,50598],{"class":86,"line":87},[84,50596,50597],{"class":98},"node",[84,50599,50600],{"class":135}," -v\n",[34,50602,50604],{"id":50603},"paso-1-inicializar-el-proyecto","Paso 1: Inicializar el proyecto",[15,50606,50607],{},"Abre tu terminal en la carpeta donde quieras guardar tu proyecto y ejecuta el siguiente comando:",[74,50609,50611],{"className":50260,"code":50610,"filename":50262,"language":50263,"meta":80,"style":80},"npm create vite@latest mi-primer-proyecto-vue\n",[22,50612,50613],{"__ignoreMap":80},[84,50614,50615,50617,50620,50623],{"class":86,"line":87},[84,50616,50262],{"class":98},[84,50618,50619],{"class":118}," create",[84,50621,50622],{"class":118}," vite@latest",[84,50624,50625],{"class":118}," mi-primer-proyecto-vue\n",[74,50627,50629],{"className":50260,"code":50628,"filename":50279,"language":50263,"meta":80,"style":80},"pnpm create vite mi-primer-proyecto-vue\n",[22,50630,50631],{"__ignoreMap":80},[84,50632,50633,50635,50637,50640],{"class":86,"line":87},[84,50634,50279],{"class":98},[84,50636,50619],{"class":118},[84,50638,50639],{"class":118}," vite",[84,50641,50625],{"class":118},[74,50643,50645],{"className":50260,"code":50644,"filename":50294,"language":50263,"meta":80,"style":80},"yarn create vite mi-primer-proyecto-vue\n",[22,50646,50647],{"__ignoreMap":80},[84,50648,50649,50651,50653,50655],{"class":86,"line":87},[84,50650,50294],{"class":98},[84,50652,50619],{"class":118},[84,50654,50639],{"class":118},[84,50656,50625],{"class":118},[74,50658,50660],{"className":50260,"code":50659,"filename":50308,"language":50263,"meta":80,"style":80},"bun create vite mi-primer-proyecto-vue\n",[22,50661,50662],{"__ignoreMap":80},[84,50663,50664,50666,50668,50670],{"class":86,"line":87},[84,50665,50308],{"class":98},[84,50667,50619],{"class":118},[84,50669,50639],{"class":118},[84,50671,50625],{"class":118},[823,50673,50674],{},[15,50675,50676,11716,50678,50681],{},[958,50677,48749],{},[22,50679,50680],{},"mi-primer-proyecto-vue"," es el nombre de la carpeta que se creará. Puedes cambiarlo por el que prefieras.",[34,50683,50685],{"id":50684},"paso-2-configuración-del-asistente","Paso 2: Configuración del asistente",[15,50687,50688],{},"Una vez ejecutado el comando, la terminal te hará unas preguntas interactivas. Sigue estas opciones para un proyecto estándar:",[10842,50690,50691,50699],{},[740,50692,50693,50696,50697,764],{},[958,50694,50695],{},"Select a framework:"," Usa las flechas del teclado para seleccionar ",[22,50698,21325],{},[740,50700,50701,50704,50705,50708,50709,50712],{},[958,50702,50703],{},"Select a variant:"," Selecciona ",[22,50706,50707],{},"JavaScript"," (o ",[22,50710,50711],{},"TypeScript"," si prefieres tipado fuerte, pero para empezar recomendamos JavaScript).",[34,50714,50716],{"id":50715},"paso-3-instalación-de-dependencias","Paso 3: Instalación de dependencias",[15,50718,50719],{},"Vite crea la estructura de archivos, pero no instala las librerías automáticamente para ahorrar tiempo. Debes entrar a la carpeta e instalarlas manualmente:",[15,50721,50722],{},"Entra a la carpeta del proyecto",[74,50724,50726],{"className":50260,"code":50725,"filename":50263,"language":50263,"meta":80,"style":80},"cd mi-primer-proyecto-vue\n",[22,50727,50728],{"__ignoreMap":80},[84,50729,50730,50733],{"class":86,"line":87},[84,50731,50732],{"class":135},"cd",[84,50734,50625],{"class":118},[15,50736,50737],{},"Instala todas las librerías necesarias",[74,50739,50741],{"className":50260,"code":50740,"filename":50262,"language":50263,"meta":80,"style":80},"npm install\n",[22,50742,50743],{"__ignoreMap":80},[84,50744,50745,50747],{"class":86,"line":87},[84,50746,50262],{"class":98},[84,50748,50749],{"class":118}," install\n",[74,50751,50753],{"className":50260,"code":50752,"filename":50279,"language":50263,"meta":80,"style":80},"pnpm install\n",[22,50754,50755],{"__ignoreMap":80},[84,50756,50757,50759],{"class":86,"line":87},[84,50758,50279],{"class":98},[84,50760,50749],{"class":118},[74,50762,50764],{"className":50260,"code":50763,"filename":50294,"language":50263,"meta":80,"style":80},"yarn install\n",[22,50765,50766],{"__ignoreMap":80},[84,50767,50768,50770],{"class":86,"line":87},[84,50769,50294],{"class":98},[84,50771,50749],{"class":118},[74,50773,50775],{"className":50260,"code":50774,"filename":50308,"language":50263,"meta":80,"style":80},"bun install\n",[22,50776,50777],{"__ignoreMap":80},[84,50778,50779,50781],{"class":86,"line":87},[84,50780,50308],{"class":98},[84,50782,50749],{"class":118},[15,50784,50785,50786,50789],{},"Este proceso creará la carpeta ",[22,50787,50788],{},"node_modules",", que contiene todo el código necesario para que Vue funcione.",[34,50791,50793],{"id":50792},"paso-4-ejecutar-el-servidor-de-desarrollo","Paso 4: Ejecutar el servidor de desarrollo",[15,50795,50796],{},"¡Ya estás listo! Ahora inicia el servidor para ver tu aplicación en el navegador:",[74,50798,50800],{"className":50260,"code":50799,"filename":50262,"language":50263,"meta":80,"style":80},"npm run dev\n",[22,50801,50802],{"__ignoreMap":80},[84,50803,50804,50806,50809],{"class":86,"line":87},[84,50805,50262],{"class":98},[84,50807,50808],{"class":118}," run",[84,50810,50811],{"class":118}," dev\n",[74,50813,50815],{"className":50260,"code":50814,"filename":50279,"language":50263,"meta":80,"style":80},"pnpm dev\n",[22,50816,50817],{"__ignoreMap":80},[84,50818,50819,50821],{"class":86,"line":87},[84,50820,50279],{"class":98},[84,50822,50811],{"class":118},[74,50824,50826],{"className":50260,"code":50825,"filename":50294,"language":50263,"meta":80,"style":80},"yarn dev\n",[22,50827,50828],{"__ignoreMap":80},[84,50829,50830,50832],{"class":86,"line":87},[84,50831,50294],{"class":98},[84,50833,50811],{"class":118},[74,50835,50837],{"className":50260,"code":50836,"filename":50308,"language":50263,"meta":80,"style":80},"bun run dev\n",[22,50838,50839],{"__ignoreMap":80},[84,50840,50841,50843,50845],{"class":86,"line":87},[84,50842,50308],{"class":98},[84,50844,50808],{"class":118},[84,50846,50811],{"class":118},[15,50848,50849,50850,50853],{},"La terminal te mostrará una URL (normalmente ",[22,50851,50852],{},"http:\u002F\u002Flocalhost:5173\u002F","). Abre ese enlace en tu navegador y verás la página de bienvenida de Vue.",[34,50855,50857],{"id":50856},"paso-5-estructura-del-proyecto","Paso 5: Estructura del proyecto",[15,50859,50860],{},"Aquí tienes una descripción de los archivos más importantes que verás en tu editor de código:",[737,50862,50863,50871,50879,50887,50895],{},[740,50864,50865,50870],{},[958,50866,50867],{},[22,50868,50869],{},"index.html",": El punto de entrada principal. Vite lo usa para montar la aplicación.",[740,50872,50873,50878],{},[958,50874,50875],{},[22,50876,50877],{},"src\u002Fmain.js",": El archivo JavaScript que inicializa la instancia de Vue y la conecta con el HTML.",[740,50880,50881,50886],{},[958,50882,50883],{},[22,50884,50885],{},"src\u002FApp.vue",": El componente raíz de tu aplicación. Todo lo que escribas aquí se verá en pantalla.",[740,50888,50889,50894],{},[958,50890,50891],{},[22,50892,50893],{},"src\u002Fcomponents\u002F",": Carpeta donde guardarás tus propios componentes reutilizables.",[740,50896,50897,50901],{},[958,50898,50899],{},[22,50900,50333],{},": Archivo de configuración de Vite.",[34,50903,50905],{"id":50904},"ejemplo-de-un-componente-básico","Ejemplo de un componente básico",[15,50907,50908,50909,50911],{},"Para empezar a programar, puedes abrir el archivo ",[22,50910,50885],{}," y reemplazar su contenido con este código sencillo para entender cómo funciona la reactividad:",[74,50913,50915],{"className":76,"code":50914,"filename":873,"language":79,"meta":80,"style":80},"\u003Ctemplate>\n  \u003Cdiv>\n    \u003Ch1>{{ mensaje }}\u003C\u002Fh1>\n    \u003Cbutton @click=\"incrementar\">Contador: {{ contador }}\u003C\u002Fbutton>\n  \u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n\n\u003Cscript setup>\nimport { ref } from 'vue';\n\n\u002F\u002F Definimos una variable reactiva\nconst mensaje = \"¡Hola desde mi app con Vite!\";\nconst contador = ref(0);\n\n\u002F\u002F Función para cambiar el estado\nconst incrementar = () => {\n  contador.value++;\n};\n\u003C\u002Fscript>\n\n\u003Cstyle scoped>\nh1 {\n  color: #42b983;\n}\nbutton {\n  padding: 10px 20px;\n  cursor: pointer;\n}\n\u003C\u002Fstyle>\n",[22,50916,50917,50925,50933,50946,50965,50973,50981,50985,50995,51007,51011,51016,51030,51047,51051,51056,51070,51079,51083,51091,51095,51106,51112,51123,51127,51133,51151,51163,51167],{"__ignoreMap":80},[84,50918,50919,50921,50923],{"class":86,"line":87},[84,50920,91],{"class":90},[84,50922,291],{"class":94},[84,50924,102],{"class":90},[84,50926,50927,50929,50931],{"class":86,"line":105},[84,50928,299],{"class":90},[84,50930,4978],{"class":94},[84,50932,102],{"class":90},[84,50934,50935,50937,50939,50942,50944],{"class":86,"line":122},[84,50936,1642],{"class":90},[84,50938,11],{"class":94},[84,50940,50941],{"class":90},">{{ mensaje }}\u003C\u002F",[84,50943,11],{"class":94},[84,50945,102],{"class":90},[84,50947,50948,50950,50952,50954,50956,50958,50961,50963],{"class":86,"line":129},[84,50949,1642],{"class":90},[84,50951,302],{"class":94},[84,50953,305],{"class":98},[84,50955,184],{"class":90},[84,50957,49438],{"class":118},[84,50959,50960],{"class":90},">Contador: {{ contador }}\u003C\u002F",[84,50962,302],{"class":94},[84,50964,102],{"class":90},[84,50966,50967,50969,50971],{"class":86,"line":154},[84,50968,324],{"class":90},[84,50970,4978],{"class":94},[84,50972,102],{"class":90},[84,50974,50975,50977,50979],{"class":86,"line":159},[84,50976,274],{"class":90},[84,50978,291],{"class":94},[84,50980,102],{"class":90},[84,50982,50983],{"class":86,"line":178},[84,50984,126],{"emptyLinePlaceholder":125},[84,50986,50987,50989,50991,50993],{"class":86,"line":190},[84,50988,91],{"class":90},[84,50990,95],{"class":94},[84,50992,99],{"class":98},[84,50994,102],{"class":90},[84,50996,50997,50999,51001,51003,51005],{"class":86,"line":196},[84,50998,109],{"class":108},[84,51000,112],{"class":90},[84,51002,115],{"class":108},[84,51004,46336],{"class":118},[84,51006,18869],{"class":90},[84,51008,51009],{"class":86,"line":201},[84,51010,126],{"emptyLinePlaceholder":125},[84,51012,51013],{"class":86,"line":217},[84,51014,51015],{"class":13481},"\u002F\u002F Definimos una variable reactiva\n",[84,51017,51018,51020,51023,51025,51028],{"class":86,"line":227},[84,51019,132],{"class":108},[84,51021,51022],{"class":135}," mensaje",[84,51024,139],{"class":108},[84,51026,51027],{"class":118}," \"¡Hola desde mi app con Vite!\"",[84,51029,18869],{"class":90},[84,51031,51032,51034,51037,51039,51041,51043,51045],{"class":86,"line":232},[84,51033,132],{"class":108},[84,51035,51036],{"class":135}," contador",[84,51038,139],{"class":108},[84,51040,142],{"class":98},[84,51042,145],{"class":90},[84,51044,4320],{"class":135},[84,51046,18994],{"class":90},[84,51048,51049],{"class":86,"line":237},[84,51050,126],{"emptyLinePlaceholder":125},[84,51052,51053],{"class":86,"line":253},[84,51054,51055],{"class":13481},"\u002F\u002F Función para cambiar el estado\n",[84,51057,51058,51060,51062,51064,51066,51068],{"class":86,"line":266},[84,51059,132],{"class":108},[84,51061,49383],{"class":98},[84,51063,139],{"class":108},[84,51065,169],{"class":90},[84,51067,172],{"class":108},[84,51069,175],{"class":90},[84,51071,51072,51075,51077],{"class":86,"line":271},[84,51073,51074],{"class":90},"  contador.value",[84,51076,49399],{"class":108},[84,51078,18869],{"class":90},[84,51080,51081],{"class":86,"line":281},[84,51082,18973],{"class":90},[84,51084,51085,51087,51089],{"class":86,"line":286},[84,51086,274],{"class":90},[84,51088,95],{"class":94},[84,51090,102],{"class":90},[84,51092,51093],{"class":86,"line":296},[84,51094,126],{"emptyLinePlaceholder":125},[84,51096,51097,51099,51101,51104],{"class":86,"line":315},[84,51098,91],{"class":90},[84,51100,835],{"class":94},[84,51102,51103],{"class":98}," scoped",[84,51105,102],{"class":90},[84,51107,51108,51110],{"class":86,"line":321},[84,51109,11],{"class":94},[84,51111,175],{"class":90},[84,51113,51114,51116,51118,51121],{"class":86,"line":331},[84,51115,21972],{"class":135},[84,51117,21408],{"class":90},[84,51119,51120],{"class":135},"#42b983",[84,51122,18869],{"class":90},[84,51124,51125],{"class":86,"line":336},[84,51126,193],{"class":90},[84,51128,51129,51131],{"class":86,"line":354},[84,51130,302],{"class":94},[84,51132,175],{"class":90},[84,51134,51135,51137,51139,51142,51144,51147,51149],{"class":86,"line":360},[84,51136,21984],{"class":135},[84,51138,21408],{"class":90},[84,51140,51141],{"class":135},"10",[84,51143,22006],{"class":108},[84,51145,51146],{"class":135}," 20",[84,51148,22006],{"class":108},[84,51150,18869],{"class":90},[84,51152,51153,51156,51158,51161],{"class":86,"line":369},[84,51154,51155],{"class":135},"  cursor",[84,51157,21408],{"class":90},[84,51159,51160],{"class":135},"pointer",[84,51162,18869],{"class":90},[84,51164,51165],{"class":86,"line":1453},[84,51166,193],{"class":90},[84,51168,51169,51171,51173],{"class":86,"line":1462},[84,51170,274],{"class":90},[84,51172,835],{"class":94},[84,51174,102],{"class":90},[74,51176,51178],{"className":76,"code":51177,"filename":1782,"language":79,"meta":80,"style":80},"\u003Ctemplate>\n  \u003Cdiv>\n    \u003Ch1>{{ mensaje }}\u003C\u002Fh1>\n    \u003Cbutton @click=\"incrementar\">Contador: {{ contador }}\u003C\u002Fbutton>\n  \u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n\n\u003Cscript>\nexport default {\n  name: 'App',\n  data() {\n    return {\n      mensaje: '¡Hola desde mi app con Vite!',\n      contador: 0\n    };\n  },\n  methods: {\n    incrementar() {\n      this.contador++;\n    }\n  }\n};\n\u003C\u002Fscript>\n\n\u003Cstyle scoped>\nh1 {\n  color: #42b983;\n}\nbutton {\n  padding: 10px 20px;\n  cursor: pointer;\n}\n\u003C\u002Fstyle>\n",[22,51179,51180,51188,51196,51208,51226,51234,51242,51246,51254,51262,51271,51277,51283,51293,51300,51304,51308,51312,51318,51329,51333,51337,51341,51349,51353,51363,51369,51379,51383,51389,51405,51415,51419],{"__ignoreMap":80},[84,51181,51182,51184,51186],{"class":86,"line":87},[84,51183,91],{"class":90},[84,51185,291],{"class":94},[84,51187,102],{"class":90},[84,51189,51190,51192,51194],{"class":86,"line":105},[84,51191,299],{"class":90},[84,51193,4978],{"class":94},[84,51195,102],{"class":90},[84,51197,51198,51200,51202,51204,51206],{"class":86,"line":122},[84,51199,1642],{"class":90},[84,51201,11],{"class":94},[84,51203,50941],{"class":90},[84,51205,11],{"class":94},[84,51207,102],{"class":90},[84,51209,51210,51212,51214,51216,51218,51220,51222,51224],{"class":86,"line":129},[84,51211,1642],{"class":90},[84,51213,302],{"class":94},[84,51215,305],{"class":98},[84,51217,184],{"class":90},[84,51219,49438],{"class":118},[84,51221,50960],{"class":90},[84,51223,302],{"class":94},[84,51225,102],{"class":90},[84,51227,51228,51230,51232],{"class":86,"line":154},[84,51229,324],{"class":90},[84,51231,4978],{"class":94},[84,51233,102],{"class":90},[84,51235,51236,51238,51240],{"class":86,"line":159},[84,51237,274],{"class":90},[84,51239,291],{"class":94},[84,51241,102],{"class":90},[84,51243,51244],{"class":86,"line":178},[84,51245,126],{"emptyLinePlaceholder":125},[84,51247,51248,51250,51252],{"class":86,"line":190},[84,51249,91],{"class":90},[84,51251,95],{"class":94},[84,51253,102],{"class":90},[84,51255,51256,51258,51260],{"class":86,"line":196},[84,51257,418],{"class":108},[84,51259,1870],{"class":108},[84,51261,175],{"class":90},[84,51263,51264,51266,51269],{"class":86,"line":201},[84,51265,1881],{"class":90},[84,51267,51268],{"class":118},"'App'",[84,51270,1887],{"class":90},[84,51272,51273,51275],{"class":86,"line":217},[84,51274,1896],{"class":98},[84,51276,1307],{"class":90},[84,51278,51279,51281],{"class":86,"line":227},[84,51280,1903],{"class":108},[84,51282,175],{"class":90},[84,51284,51285,51288,51291],{"class":86,"line":232},[84,51286,51287],{"class":90},"      mensaje: ",[84,51289,51290],{"class":118},"'¡Hola desde mi app con Vite!'",[84,51292,1887],{"class":90},[84,51294,51295,51298],{"class":86,"line":237},[84,51296,51297],{"class":90},"      contador: ",[84,51299,5467],{"class":135},[84,51301,51302],{"class":86,"line":253},[84,51303,19195],{"class":90},[84,51305,51306],{"class":86,"line":266},[84,51307,1941],{"class":90},[84,51309,51310],{"class":86,"line":271},[84,51311,1950],{"class":90},[84,51313,51314,51316],{"class":86,"line":281},[84,51315,49520],{"class":98},[84,51317,1307],{"class":90},[84,51319,51320,51322,51325,51327],{"class":86,"line":286},[84,51321,2022],{"class":135},[84,51323,51324],{"class":90},".contador",[84,51326,49399],{"class":108},[84,51328,18869],{"class":90},[84,51330,51331],{"class":86,"line":296},[84,51332,1936],{"class":90},[84,51334,51335],{"class":86,"line":315},[84,51336,485],{"class":90},[84,51338,51339],{"class":86,"line":321},[84,51340,18973],{"class":90},[84,51342,51343,51345,51347],{"class":86,"line":331},[84,51344,274],{"class":90},[84,51346,95],{"class":94},[84,51348,102],{"class":90},[84,51350,51351],{"class":86,"line":336},[84,51352,126],{"emptyLinePlaceholder":125},[84,51354,51355,51357,51359,51361],{"class":86,"line":354},[84,51356,91],{"class":90},[84,51358,835],{"class":94},[84,51360,51103],{"class":98},[84,51362,102],{"class":90},[84,51364,51365,51367],{"class":86,"line":360},[84,51366,11],{"class":94},[84,51368,175],{"class":90},[84,51370,51371,51373,51375,51377],{"class":86,"line":369},[84,51372,21972],{"class":135},[84,51374,21408],{"class":90},[84,51376,51120],{"class":135},[84,51378,18869],{"class":90},[84,51380,51381],{"class":86,"line":1453},[84,51382,193],{"class":90},[84,51384,51385,51387],{"class":86,"line":1462},[84,51386,302],{"class":94},[84,51388,175],{"class":90},[84,51390,51391,51393,51395,51397,51399,51401,51403],{"class":86,"line":1484},[84,51392,21984],{"class":135},[84,51394,21408],{"class":90},[84,51396,51141],{"class":135},[84,51398,22006],{"class":108},[84,51400,51146],{"class":135},[84,51402,22006],{"class":108},[84,51404,18869],{"class":90},[84,51406,51407,51409,51411,51413],{"class":86,"line":1489},[84,51408,51155],{"class":135},[84,51410,21408],{"class":90},[84,51412,51160],{"class":135},[84,51414,18869],{"class":90},[84,51416,51417],{"class":86,"line":1495},[84,51418,193],{"class":90},[84,51420,51421,51423,51425],{"class":86,"line":1500},[84,51422,274],{"class":90},[84,51424,835],{"class":94},[84,51426,102],{"class":90},[1074,51428,51430],{"id":51429},"explicación-del-código","Explicación del código:",[737,51432,51433,51443,51453],{},[740,51434,51435,51439,51440,51442],{},[958,51436,51437],{},[22,51438,26850],{},": Contiene el HTML. Usamos ",[22,51441,25419],{}," para mostrar variables.",[740,51444,51445,51449,51450,51452],{},[958,51446,51447],{},[22,51448,19966],{},": Es la forma moderna de escribir lógica en Vue 3. Usamos ",[22,51451,24],{}," para que Vue sepa que cuando el valor cambie, debe actualizar la pantalla.",[740,51454,51455,51459,51460,51463],{},[958,51456,51457],{},[22,51458,21547],{},": Aquí va el CSS, y el atributo ",[22,51461,51462],{},"scoped"," asegura que los estilos solo afecten a este componente.",[835,51465,51466],{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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 .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}",{"title":80,"searchDepth":105,"depth":105,"links":51468},[51469,51470,51471,51472,51473,51474,51475,51476],{"id":50536,"depth":105,"text":50537},{"id":50579,"depth":105,"text":50580},{"id":50603,"depth":105,"text":50604},{"id":50684,"depth":105,"text":50685},{"id":50715,"depth":105,"text":50716},{"id":50792,"depth":105,"text":50793},{"id":50856,"depth":105,"text":50857},{"id":50904,"depth":105,"text":50905,"children":51477},[51478],{"id":51429,"depth":122,"text":51430},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1766607505\u002Fsetting_up_vue_with_vite_crikmp.png","Logo de Vue.js con el logo de Vite de fondo","2025-12-24","Una guía paso a paso para configurar un entorno de desarrollo moderno con Vue.js y Vite.",{"updatedAt":47012,"coverCaption":51484},"Configura tu entorno de desarrollo con Vue y Vite en minutos","\u002Fblog\u002Fsetting-up-vue-with-vite.es",[51487],{"headline":50520,"author":51488,"datePublished":51489,"@type":880},{"name":868,"@type":879},"2025-12-24T00:00:00-05",{"title":50520,"description":51482},"blog\u002Fsetting-up-vue-with-vite.es",[51493,51495,51496],{"tag":50532,"color":51494},"#646CFF",{"tag":50514,"color":50515},{"tag":894,"color":895},"ID3RcMYIQmxPmT53eZ4R0DE5wAx-pz-SvPR2vkFFjRc",{"id":51499,"title":51500,"body":51501,"cover":51675,"coverAlt":51676,"date":51677,"description":51678,"draft":852,"extension":853,"lab":882,"locale":864,"meta":51679,"navigation":125,"path":51681,"schemaOrg":51682,"seo":51686,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":51687,"tags":51688,"__hash__":51691},"blog\u002Fblog\u002Fhistory-evolution-philosophy-vue-progressive-framework.es.md","Historia y Evolución de Vue.js: El Framework Progresivo",{"type":8,"value":51502,"toc":51666},[51503,51507,51513,51517,51528,51534,51538,51545,51585,51595,51599,51603,51617,51621,51624,51649,51653],[11,51504,51506],{"id":51505},"vuejs-la-evolución-del-framework-progresivo","Vue.js: La Evolución del Framework Progresivo",[15,51508,51509,51510,51512],{},"Desde su humilde comienzo como un proyecto paralelo en Google hasta convertirse en uno de los pilares del desarrollo web moderno, ",[958,51511,870],{}," ha mantenido una filosofía única: ser el framework que crece contigo. En este artículo, exploraremos cómo su historia y diseño técnico han redefinido la experiencia de desarrollo (DX).",[34,51514,51516],{"id":51515},"el-origen-la-visión-de-evan-you","El Origen: La Visión de Evan You",[15,51518,51519,51520,51523,51524,51527],{},"La historia de Vue comienza en 2013, dentro de las oficinas de Google Creative Lab. ",[958,51521,51522],{},"Evan You",", trabajando con AngularJS, sintió que podía extraer lo mejor de ese mundo (el enlace de datos o ",[4070,51525,51526],{},"data binding",") y combinarlo con una estructura mucho más ligera y menos restrictiva.",[15,51529,995,51530,51533],{},[958,51531,51532],{},"febrero de 2014",", se lanzó oficialmente la versión 1.0. A diferencia de sus competidores, Vue no nació bajo el ala de una gran corporación (como React con Facebook o Angular con Google), sino como un proyecto independiente impulsado por la comunidad y el feedback directo de los desarrolladores.",[34,51535,51537],{"id":51536},"la-filosofía-del-framework-progresivo","La Filosofía del \"Framework Progresivo\"",[15,51539,51540,51541,51544],{},"¿Qué significa realmente que Vue sea ",[958,51542,51543],{},"progresivo","? A diferencia de los frameworks monolíticos, Vue se divide en capas que puedes adoptar según tus necesidades:",[10842,51546,51547,51553,51559,51568,51577],{},[740,51548,51549,51552],{},[958,51550,51551],{},"Declarative Rendering:"," Puedes usarlo solo para manejar el DOM.",[740,51554,51555,51558],{},[958,51556,51557],{},"Component System:"," Para crear interfaces modulares.",[740,51560,51561,51564,51565,764],{},[958,51562,51563],{},"Client-Side Routing:"," Mediante ",[4070,51566,51567],{},"Vue Router",[740,51569,51570,51564,51573,51576],{},[958,51571,51572],{},"State Management:",[4070,51574,51575],{},"Pinia"," (anteriormente Vuex).",[740,51578,51579,51582,51583,764],{},[958,51580,51581],{},"Build System:"," Optimizado actualmente por ",[4070,51584,50532],{},[15,51586,51587,51588,51590,51591,51594],{},"Esta escalabilidad permite que un desarrollador integre Vue en una página legacy mediante un simple ",[22,51589,19966],{}," de CDN, o construya una ",[958,51592,51593],{},"Single Page Application (SPA)"," compleja con millones de usuarios.",[34,51596,51598],{"id":51597},"evolución-técnica-de-la-v1-a-la-v3","Evolución Técnica: De la V1 a la V3",[1074,51600,51602],{"id":51601},"vue-2-la-consolidación","Vue 2: La Consolidación",[15,51604,51605,51606,51609,51610,51613,51614,51616],{},"Lanzado en 2016, introdujo el ",[958,51607,51608],{},"Virtual DOM",", mejorando drásticamente el rendimiento. Fue la era donde el ecosistema explotó, popularizando los ",[958,51611,51612],{},"Single File Components (SFC)"," y el uso de ",[22,51615,49047],{}," para su sistema de reactividad.",[1074,51618,51620],{"id":51619},"vue-3-el-gran-salto-one-piece","Vue 3: El Gran Salto (One Piece)",[15,51622,51623],{},"En septiembre de 2020, Vue 3 trajo una reescritura completa del núcleo. Los cambios clave fueron:",[737,51625,51626,51637,51643],{},[740,51627,51628,51631,51632,51634,51635,2686],{},[958,51629,51630],{},"Composition API:"," Una alternativa superior a la ",[4070,51633,1782],{}," para organizar la lógica de componentes complejos y mejorar la reutilización de código (",[4070,51636,13070],{},[740,51638,51639,51642],{},[958,51640,51641],{},"Reactividad basada en Proxies:"," Superando las limitaciones de Vue 2, permitiendo detectar cambios en propiedades nuevas y arreglos de forma nativa.",[740,51644,51645,51648],{},[958,51646,51647],{},"Soporte de TypeScript de primer nivel:"," El framework ahora está escrito en TS, facilitando el tipado estático.",[34,51650,51652],{"id":51651},"el-futuro-y-el-ecosistema-actual","El Futuro y el Ecosistema Actual",[15,51654,51655,51656,51658,51659,51662,51663,51665],{},"Hoy, Vue no es solo una librería; es un estándar de rendimiento gracias a ",[958,51657,50532],{},", el motor de bundling creado por el propio equipo de Vue que ha revolucionado la industria. Con el auge de ",[958,51660,51661],{},"Nuxt 3"," para aplicaciones SSR (Server Side Rendering) y la transición oficial a ",[958,51664,51575],{}," como gestor de estado, el ecosistema es más robusto y maduro que nunca.",{"title":80,"searchDepth":105,"depth":105,"links":51667},[51668,51669,51670,51674],{"id":51515,"depth":105,"text":51516},{"id":51536,"depth":105,"text":51537},{"id":51597,"depth":105,"text":51598,"children":51671},[51672,51673],{"id":51601,"depth":122,"text":51602},{"id":51619,"depth":122,"text":51620},{"id":51651,"depth":105,"text":51652},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1766105778\u002Fhistoria_de_vue_wbwv72.png","Logo de Vue.js con fondo de código fuente","2025-12-19","Desde sus inicios como un proyecto paralelo en Google hasta convertirse en uno de los pilares del desarrollo web moderno, exploramos la evolución y filosofía de Vue.js.",{"updatedAt":47012,"coverCaption":51680},"Explorando la evolución de Vue.js desde sus inicios hasta la actualidad","\u002Fblog\u002Fhistory-evolution-philosophy-vue-progressive-framework.es",[51683],{"headline":51500,"author":51684,"datePublished":51685,"@type":880},{"name":868,"@type":879},"2025-12-19T00:00:00-05",{"title":51500,"description":51678},"blog\u002Fhistory-evolution-philosophy-vue-progressive-framework.es",[51689,51690],{"tag":49649,"color":49650},{"tag":50514,"color":50515},"rJyCA4jjvQiJ_sw3YqFOoiddKcMhFEHJpq4Aw3J5Uzg",{"id":51693,"title":51694,"body":51695,"cover":52326,"coverAlt":50493,"date":52327,"description":52328,"draft":852,"extension":853,"lab":882,"locale":864,"meta":52329,"navigation":125,"path":52332,"schemaOrg":52333,"seo":52337,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":52338,"tags":52339,"__hash__":52343},"blog\u002Fblog\u002Fwhat-is-vue-js-and-why-you-should-use-it.es.md","¿Qué es Vue.js y por qué deberías usarlo?",{"type":8,"value":51696,"toc":52308},[51697,51701,51707,51713,51716,51720,51726,51732,51737,51743,51754,51758,51764,51979,52188,52199,52203,52206,52212,52224,52229,52239,52243,52249,52254,52260,52275,52281,52286,52292,52297,52299,52302,52305],[11,51698,51700],{"id":51699},"vuejs-el-framework-progresivo-para-la-web-moderna","Vue.js: El Framework Progresivo para la Web Moderna",[15,51702,51703,51704,51706],{},"En el saturado ecosistema de JavaScript, elegir una herramienta para el frontend puede sentirse como intentar dar a un blanco móvil. Sin embargo, ",[958,51705,870],{}," ha logrado posicionarse no solo como una alternativa a gigantes como React o Angular, sino como la opción preferida para quienes buscan un equilibrio entre potencia, simplicidad y rendimiento.",[15,51708,51709,51712],{},[958,51710,51711],{},"Vue.js es un framework JavaScript de código abierto"," creado por Evan You en 2014, diseñado específicamente para construir interfaces de usuario interactivas y aplicaciones de una sola página (SPA). Su filosofía se centra en ser accesible, versátil y eficiente, priorizando la experiencia del desarrollador sin comprometer el rendimiento.",[15,51714,51715],{},"Pero, ¿qué es exactamente lo que hace a Vue especial y por qué deberías considerarlo para tu próximo proyecto en 2025?",[34,51717,51719],{"id":51718},"el-concepto-de-framework-progresivo","El Concepto de \"Framework Progresivo\"",[15,51721,51722,51723,51725],{},"A diferencia de otros frameworks monolíticos que te obligan a adoptar toda su estructura desde el día uno, Vue se define como ",[958,51724,51543],{},". Esto significa que su complejidad escala según tus necesidades:",[1074,51727,51729],{"id":51728},"uso-como-librería",[958,51730,51731],{},"Uso como librería:",[737,51733,51734],{},[740,51735,51736],{},"Puedes integrar Vue en una página existente mediante un simple CDN para manejar widgets pequeños o añadir interactividad ligera sin reescribir todo tu backend.",[1074,51738,51740],{"id":51739},"uso-como-framework-spa",[958,51741,51742],{},"Uso como Framework (SPA):",[737,51744,51745],{},[740,51746,51747,51748,51750,51751,51753],{},"Puedes construir aplicaciones robustas de una sola página (Single Page Applications) utilizando su ecosistema oficial completo: ",[958,51749,51567],{}," para la navegación y ",[958,51752,51575],{}," para la gestión del estado global.",[34,51755,51757],{"id":51756},"reactividad-transparente-y-eficiente","Reactividad Transparente y Eficiente",[15,51759,51760,51761,51763],{},"El corazón de Vue es su sistema de reactividad. En su versión 3, Vue utiliza los ",[22,51762,17701],{}," nativos de JavaScript para interceptar cambios en los datos. Esto permite que el framework sepa exactamente qué parte del DOM debe actualizarse, evitando renderizados innecesarios y procesos pesados de comparación de nodos.",[74,51765,51767],{"className":76,"code":51766,"filename":873,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref, computed } from 'vue';\n\n\u002F\u002F Estado reactivo simple\nconst contador = ref(0);\n\n\u002F\u002F Propiedad computada: se recalcula solo cuando cambia 'contador'\nconst esPar = computed(() => contador.value % 2 === 0);\n\nconst incrementar = () => {\n  contador.value++;\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cdiv class=\"contador\">\n    \u003Ch3>Contador: {{ contador }}\u003C\u002Fh3>\n    \u003Cp>El número es: {{ esPar ? 'Par' : 'Impar' }}\u003C\u002Fp>\n    \u003Cbutton @click=\"incrementar\">Incrementar\u003C\u002Fbutton>\n  \u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n",[22,51768,51769,51779,51791,51795,51800,51816,51820,51825,51855,51859,51873,51881,51885,51893,51897,51905,51920,51932,51945,51963,51971],{"__ignoreMap":80},[84,51770,51771,51773,51775,51777],{"class":86,"line":87},[84,51772,91],{"class":90},[84,51774,95],{"class":94},[84,51776,99],{"class":98},[84,51778,102],{"class":90},[84,51780,51781,51783,51785,51787,51789],{"class":86,"line":105},[84,51782,109],{"class":108},[84,51784,13102],{"class":90},[84,51786,115],{"class":108},[84,51788,46336],{"class":118},[84,51790,18869],{"class":90},[84,51792,51793],{"class":86,"line":122},[84,51794,126],{"emptyLinePlaceholder":125},[84,51796,51797],{"class":86,"line":129},[84,51798,51799],{"class":13481},"\u002F\u002F Estado reactivo simple\n",[84,51801,51802,51804,51806,51808,51810,51812,51814],{"class":86,"line":154},[84,51803,132],{"class":108},[84,51805,51036],{"class":135},[84,51807,139],{"class":108},[84,51809,142],{"class":98},[84,51811,145],{"class":90},[84,51813,4320],{"class":135},[84,51815,18994],{"class":90},[84,51817,51818],{"class":86,"line":159},[84,51819,126],{"emptyLinePlaceholder":125},[84,51821,51822],{"class":86,"line":178},[84,51823,51824],{"class":13481},"\u002F\u002F Propiedad computada: se recalcula solo cuando cambia 'contador'\n",[84,51826,51827,51829,51832,51834,51836,51838,51840,51843,51846,51848,51851,51853],{"class":86,"line":190},[84,51828,132],{"class":108},[84,51830,51831],{"class":135}," esPar",[84,51833,139],{"class":108},[84,51835,2989],{"class":98},[84,51837,2992],{"class":90},[84,51839,172],{"class":108},[84,51841,51842],{"class":90}," contador.value ",[84,51844,51845],{"class":108},"%",[84,51847,13150],{"class":135},[84,51849,51850],{"class":108}," ===",[84,51852,39550],{"class":135},[84,51854,18994],{"class":90},[84,51856,51857],{"class":86,"line":196},[84,51858,126],{"emptyLinePlaceholder":125},[84,51860,51861,51863,51865,51867,51869,51871],{"class":86,"line":201},[84,51862,132],{"class":108},[84,51864,49383],{"class":98},[84,51866,139],{"class":108},[84,51868,169],{"class":90},[84,51870,172],{"class":108},[84,51872,175],{"class":90},[84,51874,51875,51877,51879],{"class":86,"line":217},[84,51876,51074],{"class":90},[84,51878,49399],{"class":108},[84,51880,18869],{"class":90},[84,51882,51883],{"class":86,"line":227},[84,51884,18973],{"class":90},[84,51886,51887,51889,51891],{"class":86,"line":232},[84,51888,274],{"class":90},[84,51890,95],{"class":94},[84,51892,102],{"class":90},[84,51894,51895],{"class":86,"line":237},[84,51896,126],{"emptyLinePlaceholder":125},[84,51898,51899,51901,51903],{"class":86,"line":253},[84,51900,91],{"class":90},[84,51902,291],{"class":94},[84,51904,102],{"class":90},[84,51906,51907,51909,51911,51913,51915,51918],{"class":86,"line":266},[84,51908,299],{"class":90},[84,51910,4978],{"class":94},[84,51912,1629],{"class":98},[84,51914,184],{"class":90},[84,51916,51917],{"class":118},"\"contador\"",[84,51919,102],{"class":90},[84,51921,51922,51924,51926,51928,51930],{"class":86,"line":271},[84,51923,1642],{"class":90},[84,51925,1074],{"class":94},[84,51927,50960],{"class":90},[84,51929,1074],{"class":94},[84,51931,102],{"class":90},[84,51933,51934,51936,51938,51941,51943],{"class":86,"line":281},[84,51935,1642],{"class":90},[84,51937,15],{"class":94},[84,51939,51940],{"class":90},">El número es: {{ esPar ? 'Par' : 'Impar' }}\u003C\u002F",[84,51942,15],{"class":94},[84,51944,102],{"class":90},[84,51946,51947,51949,51951,51953,51955,51957,51959,51961],{"class":86,"line":286},[84,51948,1642],{"class":90},[84,51950,302],{"class":94},[84,51952,305],{"class":98},[84,51954,184],{"class":90},[84,51956,49438],{"class":118},[84,51958,45345],{"class":90},[84,51960,302],{"class":94},[84,51962,102],{"class":90},[84,51964,51965,51967,51969],{"class":86,"line":296},[84,51966,324],{"class":90},[84,51968,4978],{"class":94},[84,51970,102],{"class":90},[84,51972,51973,51975,51977],{"class":86,"line":315},[84,51974,274],{"class":90},[84,51976,291],{"class":94},[84,51978,102],{"class":90},[74,51980,51982],{"className":76,"code":51981,"filename":1782,"language":79,"meta":80,"style":80},"\u003Cscript>\nexport default {\n  data() {\n    return {\n      contador: 0\n    };\n  },\n  computed: {\n    esPar() {\n      return this.contador % 2 === 0;\n    }\n  },\n  methods: {\n    incrementar() {\n      this.contador++;\n    }\n  }\n};\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cdiv class=\"contador\">\n    \u003Ch3>Contador: {{ contador }}\u003C\u002Fh3>\n    \u003Cp>El número es: {{ esPar ? 'Par' : 'Impar' }}\u003C\u002Fp>\n    \u003Cbutton @click=\"incrementar\">Incrementar\u003C\u002Fbutton>\n  \u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n",[22,51983,51984,51992,52000,52006,52012,52018,52022,52026,52030,52037,52056,52060,52064,52068,52074,52084,52088,52092,52096,52104,52108,52116,52130,52142,52154,52172,52180],{"__ignoreMap":80},[84,51985,51986,51988,51990],{"class":86,"line":87},[84,51987,91],{"class":90},[84,51989,95],{"class":94},[84,51991,102],{"class":90},[84,51993,51994,51996,51998],{"class":86,"line":105},[84,51995,418],{"class":108},[84,51997,1870],{"class":108},[84,51999,175],{"class":90},[84,52001,52002,52004],{"class":86,"line":122},[84,52003,1896],{"class":98},[84,52005,1307],{"class":90},[84,52007,52008,52010],{"class":86,"line":129},[84,52009,1903],{"class":108},[84,52011,175],{"class":90},[84,52013,52014,52016],{"class":86,"line":154},[84,52015,51297],{"class":90},[84,52017,5467],{"class":135},[84,52019,52020],{"class":86,"line":159},[84,52021,19195],{"class":90},[84,52023,52024],{"class":86,"line":178},[84,52025,1941],{"class":90},[84,52027,52028],{"class":86,"line":190},[84,52029,3527],{"class":90},[84,52031,52032,52035],{"class":86,"line":196},[84,52033,52034],{"class":98},"    esPar",[84,52036,1307],{"class":90},[84,52038,52039,52041,52043,52046,52048,52050,52052,52054],{"class":86,"line":201},[84,52040,3539],{"class":108},[84,52042,2078],{"class":135},[84,52044,52045],{"class":90},".contador ",[84,52047,51845],{"class":108},[84,52049,13150],{"class":135},[84,52051,51850],{"class":108},[84,52053,39550],{"class":135},[84,52055,18869],{"class":90},[84,52057,52058],{"class":86,"line":217},[84,52059,1936],{"class":90},[84,52061,52062],{"class":86,"line":227},[84,52063,1941],{"class":90},[84,52065,52066],{"class":86,"line":232},[84,52067,1950],{"class":90},[84,52069,52070,52072],{"class":86,"line":237},[84,52071,49520],{"class":98},[84,52073,1307],{"class":90},[84,52075,52076,52078,52080,52082],{"class":86,"line":253},[84,52077,2022],{"class":135},[84,52079,51324],{"class":90},[84,52081,49399],{"class":108},[84,52083,18869],{"class":90},[84,52085,52086],{"class":86,"line":266},[84,52087,1936],{"class":90},[84,52089,52090],{"class":86,"line":271},[84,52091,485],{"class":90},[84,52093,52094],{"class":86,"line":281},[84,52095,18973],{"class":90},[84,52097,52098,52100,52102],{"class":86,"line":286},[84,52099,274],{"class":90},[84,52101,95],{"class":94},[84,52103,102],{"class":90},[84,52105,52106],{"class":86,"line":296},[84,52107,126],{"emptyLinePlaceholder":125},[84,52109,52110,52112,52114],{"class":86,"line":315},[84,52111,91],{"class":90},[84,52113,291],{"class":94},[84,52115,102],{"class":90},[84,52117,52118,52120,52122,52124,52126,52128],{"class":86,"line":321},[84,52119,299],{"class":90},[84,52121,4978],{"class":94},[84,52123,1629],{"class":98},[84,52125,184],{"class":90},[84,52127,51917],{"class":118},[84,52129,102],{"class":90},[84,52131,52132,52134,52136,52138,52140],{"class":86,"line":331},[84,52133,1642],{"class":90},[84,52135,1074],{"class":94},[84,52137,50960],{"class":90},[84,52139,1074],{"class":94},[84,52141,102],{"class":90},[84,52143,52144,52146,52148,52150,52152],{"class":86,"line":336},[84,52145,1642],{"class":90},[84,52147,15],{"class":94},[84,52149,51940],{"class":90},[84,52151,15],{"class":94},[84,52153,102],{"class":90},[84,52155,52156,52158,52160,52162,52164,52166,52168,52170],{"class":86,"line":354},[84,52157,1642],{"class":90},[84,52159,302],{"class":94},[84,52161,305],{"class":98},[84,52163,184],{"class":90},[84,52165,49438],{"class":118},[84,52167,45345],{"class":90},[84,52169,302],{"class":94},[84,52171,102],{"class":90},[84,52173,52174,52176,52178],{"class":86,"line":360},[84,52175,324],{"class":90},[84,52177,4978],{"class":94},[84,52179,102],{"class":90},[84,52181,52182,52184,52186],{"class":86,"line":369},[84,52183,274],{"class":90},[84,52185,291],{"class":94},[84,52187,102],{"class":90},[15,52189,52190,52191,52194,52195,52198],{},"Este simple ejemplo demuestra cómo Vue rastrea automáticamente las dependencias: cuando ",[22,52192,52193],{},"contador"," cambia, tanto la visualización del número como la propiedad computada ",[22,52196,52197],{},"esPar"," se actualizan sin intervención manual.",[34,52200,52202],{"id":52201},"versatilidad-de-apis-options-vs-composition","Versatilidad de APIs: Options vs. Composition",[15,52204,52205],{},"Una de las mayores fortalezas de Vue es su dualidad, adaptándose al nivel de experiencia del equipo y a la escala del problema:",[1074,52207,52209],{"id":52208},"options-api",[958,52210,52211],{},"Options API:",[737,52213,52214],{},[740,52215,52216,52217,754,52219,754,52221,52223],{},"La forma clásica. Organiza el código por \"opciones\" (",[22,52218,12799],{},[22,52220,12808],{},[22,52222,2523],{},"). Es extremadamente legible y recomendada para quienes están haciendo la transición desde HTML\u002FJS básico o jQuery.",[1074,52225,52227],{"id":52226},"composition-api",[958,52228,51630],{},[737,52230,52231],{},[740,52232,52233,52234,52236,52237,764],{},"Introducida en Vue 3, permite agrupar la lógica por funcionalidades en lugar de por tipos de opción. Es la herramienta definitiva para proyectos grandes, ya que facilita la creación de lógica reutilizable (",[958,52235,872],{},") y ofrece una integración nativa y robusta con ",[958,52238,50711],{},[34,52240,52242],{"id":52241},"por-qué-elegir-vuejs-hoy","¿Por qué elegir Vue.js hoy?",[1074,52244,52246],{"id":52245},"curva-de-aprendizaje-amable",[958,52247,52248],{},"Curva de aprendizaje amable:",[737,52250,52251],{},[740,52252,52253],{},"Si dominas los fundamentos de la web (HTML, CSS y JS), serás productivo en Vue en cuestión de horas. Su sintaxis de plantillas (Templates) es familiar y reduce la carga cognitiva.",[1074,52255,52257],{"id":52256},"ecosistema-unificado",[958,52258,52259],{},"Ecosistema Unificado:",[737,52261,52262],{},[740,52263,52264,52265,52267,52268,52270,52271,52274],{},"El equipo oficial de Vue mantiene las herramientas críticas: ",[958,52266,50532],{}," (el bundler más rápido del mercado), ",[958,52269,51575],{}," (estado) y ",[958,52272,52273],{},"Router",". Esto garantiza que todas las piezas encajen perfectamente tras cada actualización.",[1074,52276,52278],{"id":52277},"rendimiento-de-élite",[958,52279,52280],{},"Rendimiento de Élite:",[737,52282,52283],{},[740,52284,52285],{},"Gracias a un compilador inteligente que optimiza las plantillas en tiempo de construcción, Vue genera un código de ejecución ligero que suele superar en velocidad a frameworks con mayor cuota de mercado.",[1074,52287,52289],{"id":52288},"documentación-de-referencia",[958,52290,52291],{},"Documentación de referencia:",[737,52293,52294],{},[740,52295,52296],{},"Es ampliamente considerada como el estándar de oro en la industria por ser clara, estar siempre actualizada y ofrecer ejemplos que funcionan \"a la primera\".",[34,52298,18395],{"id":18394},[15,52300,52301],{},"Vue.js no intenta reinventar la web, sino hacer que trabajar en ella sea más placentero y eficiente. Es la elección lógica si buscas un framework que crezca con tu proyecto, ofreciendo la flexibilidad de una pequeña librería con la potencia de un entorno empresarial de alto nivel.",[15,52303,52304],{},"Ya sea que estés construyendo tu primera aplicación web o migrando un proyecto legacy, Vue te acompaña en cada etapa sin imponerte decisiones arquitectónicas prematuras. Su comunidad activa, el soporte corporativo de empresas como Alibaba y la constante innovación del equipo core garantizan que Vue seguirá siendo relevante en los años venideros.",[835,52306,52307],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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);}",{"title":80,"searchDepth":105,"depth":105,"links":52309},[52310,52314,52315,52319,52325],{"id":51718,"depth":105,"text":51719,"children":52311},[52312,52313],{"id":51728,"depth":122,"text":51731},{"id":51739,"depth":122,"text":51742},{"id":51756,"depth":105,"text":51757},{"id":52201,"depth":105,"text":52202,"children":52316},[52317,52318],{"id":52208,"depth":122,"text":52211},{"id":52226,"depth":122,"text":51630},{"id":52241,"depth":105,"text":52242,"children":52320},[52321,52322,52323,52324],{"id":52245,"depth":122,"text":52248},{"id":52256,"depth":122,"text":52259},{"id":52277,"depth":122,"text":52280},{"id":52288,"depth":122,"text":52291},{"id":18394,"depth":105,"text":18395},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1766098457\u002FQue_es_Vue_y_por_que_deberias_usarlo_tmowoz.png","2025-12-18","Descubre Vue.js, un framework progresivo de JavaScript, y aprende por qué es una excelente opción para desarrollar aplicaciones web modernas y reactivas.",{"updatedAt":47012,"coverCaption":52330,"author":868,"keywords":52331},"Explorando Vue.js: El framework progresivo para la web moderna","vue.js, javascript, framework, frontend, spa, reactividad, composition api, vue 3","\u002Fblog\u002Fwhat-is-vue-js-and-why-you-should-use-it.es",[52334],{"headline":51694,"author":52335,"datePublished":52336,"@type":880},{"name":868,"@type":879},"2025-12-18T00:00:00-05",{"title":51694,"description":52328},"blog\u002Fwhat-is-vue-js-and-why-you-should-use-it.es",[52340,52341,52342],{"tag":50514,"color":50515},{"tag":894,"color":895},{"tag":49649,"color":49650},"3oUGsbaCuwOgI_KyRJd-09Ixe2vRBkwOj4YxwJT8Nks",{"id":52345,"title":52346,"body":52347,"cover":52502,"coverAlt":52503,"date":52504,"description":52505,"draft":852,"extension":853,"lab":882,"locale":864,"meta":52506,"navigation":125,"path":52508,"schemaOrg":52509,"seo":52513,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":52514,"tags":52515,"__hash__":52521},"blog\u002Fblog\u002Fwelcome-to-todovue.es.md","TODOvue: Un espacio dedicado al ecosistema de Vue.js",{"type":8,"value":52348,"toc":52496},[52349,52355,52361,52371,52375,52378,52429,52433,52439,52446,52453,52457,52471,52475,52481,52484,52486],[11,52350,52352,52353,1344],{"id":52351},"bienvenidos-a-todovue","¡Bienvenidos a ",[958,52354,868],{},[15,52356,52357,52358,52360],{},"Este espacio nace de una necesidad clara: establecer un punto de encuentro para desarrolladores que, al igual que yo, encuentran en el ecosistema de ",[958,52359,870],{}," una de las herramientas más potentes, elegantes y eficientes para construir la web moderna.",[15,52362,52363,52365,52366,754,52368,52370],{},[958,52364,868],{}," no es solo un blog; es un proyecto técnico dedicado a desglosar cada rincón de ",[958,52367,871],{},[958,52369,998],{}," y el abanico de librerías que optimizan nuestro flujo de trabajo diario.",[34,52372,52374],{"id":52373},"qué-esperar-de-este-blog","¿Qué esperar de este blog?",[15,52376,52377],{},"Nuestro objetivo es trascender los tutoriales introductorios. En TODOvue profundizaremos en pilares fundamentales para el desarrollo profesional:",[737,52379,52380,52391,52406,52416],{},[740,52381,52382,52385,52386,52388,52389,764],{},[958,52383,52384],{},"Patrones de Diseño y Composición",": Uso avanzado de la ",[958,52387,873],{},", patrones de reusabilidad y diseño de ",[4070,52390,13070],{},[740,52392,52393,52396,52397,754,52399,754,52402,52405],{},[958,52394,52395],{},"Ecosistema Nuxt",": Estrategias de renderizado avanzado (",[958,52398,2440],{},[958,52400,52401],{},"SSG",[958,52403,52404],{},"Hybrid Rendering \u002F ISR","), gestión de módulos y despliegue optimizado.",[740,52407,52408,52411,52412,52415],{},[958,52409,52410],{},"Rendimiento y Optimización",": Técnicas de ",[4070,52413,52414],{},"code-splitting",", optimización de bundles y estrategias para alcanzar la máxima velocidad en el lado del cliente.",[740,52417,52418,52421,52422,754,52424,754,52426,52428],{},[958,52419,52420],{},"Herramientas y Librerías",": Análisis profundo de ",[958,52423,51575],{},[958,52425,51567],{},[958,52427,50532],{}," y las propuestas emergentes más disruptivas de la comunidad.",[34,52430,52432],{"id":52431},"dogfooding-construido-con-lo-que-enseñamos","\"Dogfooding\": Construido con lo que enseñamos",[15,52434,52435,52436,764],{},"Un aspecto diferencial de este blog es su propia arquitectura. Todo lo que interactúa en esta plataforma ha sido desarrollado bajo los principios de ",[958,52437,52438],{},"Atomic Design",[15,52440,52441,52442,52445],{},"He decidido que cada pieza de TODOvue —desde los átomos (botones) hasta el motor de renderizado de artículos— funcione como un componente independiente publicado en ",[958,52443,52444],{},"NPM",". Aunque el foco principal es el contenido educativo, la infraestructura es totalmente transparente y abierta para quienes deseen integrarla en sus propios proyectos.",[15,52447,52448,52449,52452],{},"Creemos en el ",[958,52450,52451],{},"Open Source"," no solo como una filosofía, sino como una práctica de ingeniería. Si un componente es lo suficientemente robusto para dar vida a este blog, debe estar disponible para la comunidad en el registro de NPM.",[34,52454,52456],{"id":52455},"por-qué-ahora","¿Por qué ahora?",[15,52458,52459,52460,52462,52463,52466,52467,52470],{},"Vue 3 ha alcanzado un estado de madurez excepcional. Gracias a la adopción de ",[22,52461,19966],{},", la estabilidad de Nuxt 3 y la velocidad de Vite, el desarrollo ",[4070,52464,52465],{},"frontend"," nunca ha sido tan gratificante. Sin embargo, la evolución es constante: surgen nuevos retos, ",[4070,52468,52469],{},"breaking changes"," y patrones de arquitectura que merecen ser documentados y analizados con rigor técnico.",[34,52472,52474],{"id":52473},"únete-a-la-conversación","Únete a la conversación",[15,52476,52477,52478,52480],{},"Este es el inicio de un camino de aprendizaje continuo. ",[958,52479,868],{}," aspira a ser una fuente de consulta confiable y un espacio de intercambio de conocimientos.",[15,52482,52483],{},"Te invito a explorar el contenido, experimentar con los componentes que alimentan este sitio y, sobre todo, a mantener la curiosidad por este framework que nos apasiona.",[39158,52485],{},[15,52487,52488,52491,52492],{},[958,52489,52490],{},"¿Hay algún tema específico de Vue o Nuxt que te gustaría que tratáramos primero?","\n¡Contáctame! ",[13911,52493,52495],{"href":52494},"mailto:blog@todovue.blog","blog@todovue.blog",{"title":80,"searchDepth":105,"depth":105,"links":52497},[52498,52499,52500,52501],{"id":52373,"depth":105,"text":52374},{"id":52431,"depth":105,"text":52432},{"id":52455,"depth":105,"text":52456},{"id":52473,"depth":105,"text":52474},"https:\u002F\u002Fres.cloudinary.com\u002Fdenj4fg7f\u002Fimage\u002Fupload\u002Fv1766098456\u002FTODOvue_idegxt.png","Logo de TODOvue con código fuente de fondo","2025-12-17","Bienvenidos a TODOvue. Un blog técnico diseñado por y para desarrolladores, donde exploramos a fondo Vue 3, Nuxt y la arquitectura de componentes moderna.",{"updatedAt":47012,"coverCaption":52507},"Explorando el universo de Vue.js de principio a fin","\u002Fblog\u002Fwelcome-to-todovue.es",[52510],{"headline":52346,"author":52511,"datePublished":52512,"@type":880},{"name":868,"@type":879},"2025-12-17T00:00:00-05:00",{"title":52346,"description":52505},"blog\u002Fwelcome-to-todovue.es",[52516,52517,52520],{"tag":868,"color":50509},{"tag":52518,"color":52519},"Offtopic","#605AD1",{"tag":50514,"color":50515},"QCC1KEhGX4J18VW5hhPy_dY_G47DK7o6kElWExWVHwg",{"id":52523,"title":52524,"body":52525,"cover":848,"coverAlt":53231,"date":850,"description":53232,"draft":852,"extension":853,"lab":53233,"locale":53243,"meta":53244,"navigation":125,"path":53248,"schemaOrg":53249,"seo":53252,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":53253,"tags":53254,"__hash__":53262},"blog\u002Fblog\u002Fvue-3-composables-extract-reusable-logic.en.md","Composables in Vue 3: How to Extract Reusable Logic Without Overcomplicating It",{"type":8,"value":52526,"toc":53221},[52527,52530,52533,52542,52545,52549,52552,52555,52570,52573,52577,52580,52802,52805,52808,52814,52817,52991,52994,53120,53123,53127,53130,53133,53155,53158,53162,53165,53168,53171,53175,53186,53192,53198,53201,53205,53208,53213,53216,53219],[11,52528,52524],{"id":52529},"composables-in-vue-3-how-to-extract-reusable-logic-without-overcomplicating-it",[15,52531,52532],{},"There is a pretty clear sign that a component is asking for help: you start copying the same logic into two, three, or four different places.",[15,52534,52535,52536,52538,52539,52541],{},"First it was a menu that opens and closes. Then a modal. Then a side panel. Each one has its own ",[22,52537,24],{},", its own function to open, its own function to close, and an almost identical ",[22,52540,28],{},". Nothing explodes at first, but the code starts to feel repetitive, as if every component is solving the same tiny problem alone.",[15,52543,52544],{},"That is where composables come in.",[34,52546,52548],{"id":52547},"what-a-composable-is-without-making-it-weird","What a composable is, without making it weird",[15,52550,52551],{},"A composable is a function that encapsulates reusable logic with Vue's Composition API.",[15,52553,52554],{},"That is it. It does not need a heavier definition.",[15,52556,52557,52558,52560,52561,52563,52564,52566,52567,52569],{},"It can hold state with ",[22,52559,49],{}," or ",[22,52562,53],{},", create derived values with ",[22,52565,57],{},", listen to changes with ",[22,52568,61],{},", or connect to browser APIs. The point is to give that logic a clear home so several components can use it without copy and paste.",[15,52571,52572],{},"If a component should focus on rendering the interface, a composable can take care of part of the logic behind it.",[34,52574,52576],{"id":52575},"the-problem-repeated-logic-inside-the-component","The problem: repeated logic inside the component",[15,52578,52579],{},"Imagine a small menu:",[74,52581,52583],{"className":76,"code":52582,"filename":78,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { ref } from 'vue'\n\nconst isOpen = ref(false)\n\nconst open = () => {\n  isOpen.value = true\n}\n\nconst close = () => {\n  isOpen.value = false\n}\n\nconst toggle = () => {\n  isOpen.value = !isOpen.value\n}\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"toggle\">\n    {{ isOpen ? 'Close menu' : 'Open menu' }}\n  \u003C\u002Fbutton>\n\n  \u003Cnav v-if=\"isOpen\">\n    Menu visible\n  \u003C\u002Fnav>\n\u003C\u002Ftemplate>\n",[22,52584,52585,52595,52605,52609,52625,52629,52643,52651,52655,52659,52673,52681,52685,52689,52703,52713,52717,52725,52729,52737,52751,52756,52764,52768,52782,52786,52794],{"__ignoreMap":80},[84,52586,52587,52589,52591,52593],{"class":86,"line":87},[84,52588,91],{"class":90},[84,52590,95],{"class":94},[84,52592,99],{"class":98},[84,52594,102],{"class":90},[84,52596,52597,52599,52601,52603],{"class":86,"line":105},[84,52598,109],{"class":108},[84,52600,112],{"class":90},[84,52602,115],{"class":108},[84,52604,119],{"class":118},[84,52606,52607],{"class":86,"line":122},[84,52608,126],{"emptyLinePlaceholder":125},[84,52610,52611,52613,52615,52617,52619,52621,52623],{"class":86,"line":129},[84,52612,132],{"class":108},[84,52614,136],{"class":135},[84,52616,139],{"class":108},[84,52618,142],{"class":98},[84,52620,145],{"class":90},[84,52622,148],{"class":135},[84,52624,151],{"class":90},[84,52626,52627],{"class":86,"line":154},[84,52628,126],{"emptyLinePlaceholder":125},[84,52630,52631,52633,52635,52637,52639,52641],{"class":86,"line":159},[84,52632,132],{"class":108},[84,52634,164],{"class":98},[84,52636,139],{"class":108},[84,52638,169],{"class":90},[84,52640,172],{"class":108},[84,52642,175],{"class":90},[84,52644,52645,52647,52649],{"class":86,"line":178},[84,52646,181],{"class":90},[84,52648,184],{"class":108},[84,52650,187],{"class":135},[84,52652,52653],{"class":86,"line":190},[84,52654,193],{"class":90},[84,52656,52657],{"class":86,"line":196},[84,52658,126],{"emptyLinePlaceholder":125},[84,52660,52661,52663,52665,52667,52669,52671],{"class":86,"line":201},[84,52662,132],{"class":108},[84,52664,206],{"class":98},[84,52666,139],{"class":108},[84,52668,169],{"class":90},[84,52670,172],{"class":108},[84,52672,175],{"class":90},[84,52674,52675,52677,52679],{"class":86,"line":217},[84,52676,181],{"class":90},[84,52678,184],{"class":108},[84,52680,224],{"class":135},[84,52682,52683],{"class":86,"line":227},[84,52684,193],{"class":90},[84,52686,52687],{"class":86,"line":232},[84,52688,126],{"emptyLinePlaceholder":125},[84,52690,52691,52693,52695,52697,52699,52701],{"class":86,"line":237},[84,52692,132],{"class":108},[84,52694,242],{"class":98},[84,52696,139],{"class":108},[84,52698,169],{"class":90},[84,52700,172],{"class":108},[84,52702,175],{"class":90},[84,52704,52705,52707,52709,52711],{"class":86,"line":253},[84,52706,181],{"class":90},[84,52708,184],{"class":108},[84,52710,260],{"class":108},[84,52712,263],{"class":90},[84,52714,52715],{"class":86,"line":266},[84,52716,193],{"class":90},[84,52718,52719,52721,52723],{"class":86,"line":271},[84,52720,274],{"class":90},[84,52722,95],{"class":94},[84,52724,102],{"class":90},[84,52726,52727],{"class":86,"line":281},[84,52728,126],{"emptyLinePlaceholder":125},[84,52730,52731,52733,52735],{"class":86,"line":286},[84,52732,91],{"class":90},[84,52734,291],{"class":94},[84,52736,102],{"class":90},[84,52738,52739,52741,52743,52745,52747,52749],{"class":86,"line":296},[84,52740,299],{"class":90},[84,52742,302],{"class":94},[84,52744,305],{"class":98},[84,52746,184],{"class":90},[84,52748,310],{"class":118},[84,52750,102],{"class":90},[84,52752,52753],{"class":86,"line":315},[84,52754,52755],{"class":90},"    {{ isOpen ? 'Close menu' : 'Open menu' }}\n",[84,52757,52758,52760,52762],{"class":86,"line":321},[84,52759,324],{"class":90},[84,52761,302],{"class":94},[84,52763,102],{"class":90},[84,52765,52766],{"class":86,"line":331},[84,52767,126],{"emptyLinePlaceholder":125},[84,52769,52770,52772,52774,52776,52778,52780],{"class":86,"line":336},[84,52771,299],{"class":90},[84,52773,341],{"class":94},[84,52775,344],{"class":98},[84,52777,184],{"class":90},[84,52779,349],{"class":118},[84,52781,102],{"class":90},[84,52783,52784],{"class":86,"line":354},[84,52785,357],{"class":90},[84,52787,52788,52790,52792],{"class":86,"line":360},[84,52789,324],{"class":90},[84,52791,341],{"class":94},[84,52793,102],{"class":90},[84,52795,52796,52798,52800],{"class":86,"line":369},[84,52797,274],{"class":90},[84,52799,291],{"class":94},[84,52801,102],{"class":90},[15,52803,52804],{},"This code is fine. You do not need to extract everything the moment a function appears. The problem starts when the same idea shows up in a modal, an accordion, an expandable card, and a filter panel.",[15,52806,52807],{},"At that point, you are no longer writing menu logic. You are writing a small reusable rule: something can be active or inactive, and you need to open it, close it, or toggle it.",[34,52809,52811,52812],{"id":52810},"the-after-extracting-usetoggle","The after: extracting ",[22,52813,388],{},[15,52815,52816],{},"We can move that logic into a composable:",[74,52818,52819],{"className":394,"code":395,"filename":396,"language":397,"meta":80,"style":80},[22,52820,52821,52831,52835,52853,52865,52869,52883,52891,52895,52899,52913,52921,52925,52929,52943,52953,52957,52961,52967,52971,52975,52979,52983,52987],{"__ignoreMap":80},[84,52822,52823,52825,52827,52829],{"class":86,"line":87},[84,52824,109],{"class":108},[84,52826,112],{"class":90},[84,52828,115],{"class":108},[84,52830,119],{"class":118},[84,52832,52833],{"class":86,"line":105},[84,52834,126],{"emptyLinePlaceholder":125},[84,52836,52837,52839,52841,52843,52845,52847,52849,52851],{"class":86,"line":122},[84,52838,418],{"class":108},[84,52840,421],{"class":108},[84,52842,424],{"class":98},[84,52844,145],{"class":90},[84,52846,430],{"class":429},[84,52848,139],{"class":108},[84,52850,435],{"class":135},[84,52852,438],{"class":90},[84,52854,52855,52857,52859,52861,52863],{"class":86,"line":129},[84,52856,443],{"class":108},[84,52858,446],{"class":135},[84,52860,139],{"class":108},[84,52862,142],{"class":98},[84,52864,453],{"class":90},[84,52866,52867],{"class":86,"line":154},[84,52868,126],{"emptyLinePlaceholder":125},[84,52870,52871,52873,52875,52877,52879,52881],{"class":86,"line":159},[84,52872,443],{"class":108},[84,52874,164],{"class":98},[84,52876,139],{"class":108},[84,52878,169],{"class":90},[84,52880,172],{"class":108},[84,52882,175],{"class":90},[84,52884,52885,52887,52889],{"class":86,"line":178},[84,52886,476],{"class":90},[84,52888,184],{"class":108},[84,52890,187],{"class":135},[84,52892,52893],{"class":86,"line":190},[84,52894,485],{"class":90},[84,52896,52897],{"class":86,"line":196},[84,52898,126],{"emptyLinePlaceholder":125},[84,52900,52901,52903,52905,52907,52909,52911],{"class":86,"line":201},[84,52902,443],{"class":108},[84,52904,206],{"class":98},[84,52906,139],{"class":108},[84,52908,169],{"class":90},[84,52910,172],{"class":108},[84,52912,175],{"class":90},[84,52914,52915,52917,52919],{"class":86,"line":217},[84,52916,476],{"class":90},[84,52918,184],{"class":108},[84,52920,224],{"class":135},[84,52922,52923],{"class":86,"line":227},[84,52924,485],{"class":90},[84,52926,52927],{"class":86,"line":232},[84,52928,126],{"emptyLinePlaceholder":125},[84,52930,52931,52933,52935,52937,52939,52941],{"class":86,"line":237},[84,52932,443],{"class":108},[84,52934,242],{"class":98},[84,52936,139],{"class":108},[84,52938,169],{"class":90},[84,52940,172],{"class":108},[84,52942,175],{"class":90},[84,52944,52945,52947,52949,52951],{"class":86,"line":253},[84,52946,476],{"class":90},[84,52948,184],{"class":108},[84,52950,260],{"class":108},[84,52952,544],{"class":90},[84,52954,52955],{"class":86,"line":266},[84,52956,485],{"class":90},[84,52958,52959],{"class":86,"line":271},[84,52960,126],{"emptyLinePlaceholder":125},[84,52962,52963,52965],{"class":86,"line":281},[84,52964,557],{"class":108},[84,52966,175],{"class":90},[84,52968,52969],{"class":86,"line":286},[84,52970,564],{"class":90},[84,52972,52973],{"class":86,"line":296},[84,52974,569],{"class":90},[84,52976,52977],{"class":86,"line":315},[84,52978,574],{"class":90},[84,52980,52981],{"class":86,"line":321},[84,52982,579],{"class":90},[84,52984,52985],{"class":86,"line":331},[84,52986,485],{"class":90},[84,52988,52989],{"class":86,"line":336},[84,52990,193],{"class":90},[15,52992,52993],{},"And now the component is more focused:",[74,52995,52997],{"className":76,"code":52996,"filename":78,"language":79,"meta":80,"style":80},"\u003Cscript setup>\nimport { useToggle } from '@\u002Fcomposables\u002FuseToggle'\n\nconst menu = useToggle()\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"menu.toggle()\">\n    {{ menu.isActive ? 'Close menu' : 'Open menu' }}\n  \u003C\u002Fbutton>\n\n  \u003Cnav v-if=\"menu.isActive\">\n    Menu visible\n  \u003C\u002Fnav>\n\u003C\u002Ftemplate>\n",[22,52998,52999,53009,53019,53023,53035,53043,53047,53055,53069,53074,53082,53086,53100,53104,53112],{"__ignoreMap":80},[84,53000,53001,53003,53005,53007],{"class":86,"line":87},[84,53002,91],{"class":90},[84,53004,95],{"class":94},[84,53006,99],{"class":98},[84,53008,102],{"class":90},[84,53010,53011,53013,53015,53017],{"class":86,"line":105},[84,53012,109],{"class":108},[84,53014,612],{"class":90},[84,53016,115],{"class":108},[84,53018,617],{"class":118},[84,53020,53021],{"class":86,"line":122},[84,53022,126],{"emptyLinePlaceholder":125},[84,53024,53025,53027,53029,53031,53033],{"class":86,"line":129},[84,53026,132],{"class":108},[84,53028,628],{"class":135},[84,53030,139],{"class":108},[84,53032,424],{"class":98},[84,53034,635],{"class":90},[84,53036,53037,53039,53041],{"class":86,"line":154},[84,53038,274],{"class":90},[84,53040,95],{"class":94},[84,53042,102],{"class":90},[84,53044,53045],{"class":86,"line":159},[84,53046,126],{"emptyLinePlaceholder":125},[84,53048,53049,53051,53053],{"class":86,"line":178},[84,53050,91],{"class":90},[84,53052,291],{"class":94},[84,53054,102],{"class":90},[84,53056,53057,53059,53061,53063,53065,53067],{"class":86,"line":190},[84,53058,299],{"class":90},[84,53060,302],{"class":94},[84,53062,305],{"class":98},[84,53064,184],{"class":90},[84,53066,668],{"class":118},[84,53068,102],{"class":90},[84,53070,53071],{"class":86,"line":196},[84,53072,53073],{"class":90},"    {{ menu.isActive ? 'Close menu' : 'Open menu' }}\n",[84,53075,53076,53078,53080],{"class":86,"line":201},[84,53077,324],{"class":90},[84,53079,302],{"class":94},[84,53081,102],{"class":90},[84,53083,53084],{"class":86,"line":217},[84,53085,126],{"emptyLinePlaceholder":125},[84,53087,53088,53090,53092,53094,53096,53098],{"class":86,"line":227},[84,53089,299],{"class":90},[84,53091,341],{"class":94},[84,53093,344],{"class":98},[84,53095,184],{"class":90},[84,53097,700],{"class":118},[84,53099,102],{"class":90},[84,53101,53102],{"class":86,"line":232},[84,53103,357],{"class":90},[84,53105,53106,53108,53110],{"class":86,"line":237},[84,53107,324],{"class":90},[84,53109,341],{"class":94},[84,53111,102],{"class":90},[84,53113,53114,53116,53118],{"class":86,"line":253},[84,53115,274],{"class":90},[84,53117,291],{"class":94},[84,53119,102],{"class":90},[15,53121,53122],{},"The component still makes sense. Actually, it makes more sense: there is a menu, and that menu can be toggled. The mechanics are no longer in the way.",[34,53124,53126],{"id":53125},"when-creating-a-composable-is-worth-it","When creating a composable is worth it",[15,53128,53129],{},"A composable is useful when it extracts a real intention, not just a few lines of code.",[15,53131,53132],{},"It is usually worth it when:",[737,53134,53135,53138,53141,53144],{},[740,53136,53137],{},"The same logic appears in more than one component.",[740,53139,53140],{},"The component is carrying too many responsibilities.",[740,53142,53143],{},"You want to reason about one piece of behavior separately.",[740,53145,53146,53147,754,53149,754,53151,754,53153,764],{},"The logic has a clear name: ",[22,53148,388],{},[22,53150,757],{},[22,53152,760],{},[22,53154,763],{},[15,53156,53157],{},"The name matters. If you can name it naturally, there is probably a reusable idea there.",[34,53159,53161],{"id":53160},"when-you-do-not-need-one","When you do not need one",[15,53163,53164],{},"Not everything needs to become a composable.",[15,53166,53167],{},"If a bit of logic only lives in one component and reads well there, leave it there. Extracting too early can also make code harder to follow. You end up jumping between files to understand something that used to take twenty seconds to read.",[15,53169,53170],{},"A good composable removes noise. An unnecessary one just moves the noise somewhere else.",[34,53172,53174],{"id":53173},"common-mistakes","Common mistakes",[15,53176,53177,53178,754,53180,53182,53183,53185],{},"The first one is using names that are too vague. ",[22,53179,790],{},[22,53181,793],{},", or ",[22,53184,796],{}," do not say much. If the name does not explain the intention, the file becomes a drawer for random things.",[15,53187,53188,53189,53191],{},"The second one is putting too much logic into the same composable. ",[22,53190,803],{}," may feel convenient at first, but soon it will be harder to maintain than the original component.",[15,53193,53194,53195,53197],{},"The third one is hiding side effects. If a composable makes a request, writes to ",[22,53196,810],{},", or registers global events, that should be clear from its name or from how it is used.",[15,53199,53200],{},"The fourth one is returning too many things. If a composable returns fifteen properties, you may not have found the right boundary yet.",[34,53202,53204],{"id":53203},"a-practical-rule","A practical rule",[15,53206,53207],{},"Before creating a composable, ask yourself:",[823,53209,53210],{},[15,53211,53212],{},"Am I extracting an idea, or am I just moving code?",[15,53214,53215],{},"If you are extracting an idea, go for it. If you are only moving code to make the component look shorter, wait a bit.",[15,53217,53218],{},"Composables are not there to show off. They are there to help the code breathe, to let components talk about the interface, and to give repeated logic a home of its own.",[835,53220,837],{},{"title":80,"searchDepth":105,"depth":105,"links":53222},[53223,53224,53225,53227,53228,53229,53230],{"id":52547,"depth":105,"text":52548},{"id":52575,"depth":105,"text":52576},{"id":52810,"depth":105,"text":53226},"The after: extracting useToggle",{"id":53125,"depth":105,"text":53126},{"id":53160,"depth":105,"text":53161},{"id":53173,"depth":105,"text":53174},{"id":53203,"depth":105,"text":53204},"Screen showing code in a development environment","Learn what composables are in Vue 3, when they are worth using, and how to extract reusable logic with a clear useToggle example.",{"title":53234,"goal":53235,"tasks":53236,"starterCode":53241,"solutionHint":53242},"Create your first composable: useToggle","Extract a small, repeatable bit of logic for opening, closing, and toggling a boolean state from any component.",[53237,53238,53239,53240],"Create a useToggle.js or useToggle.ts file.","Use ref() to store the active or inactive state.","Expose the open(), close(), and toggle() functions.","Use the composable from a component with a button.","\u003Cscript setup>\nimport { ref } from 'vue'\n\nfunction useToggle(initialValue = false) {\n  const isActive = ref(initialValue)\n\n  const open = () => {\n    isActive.value = true\n  }\n\n  const close = () => {\n    isActive.value = false\n  }\n\n  const toggle = () => {\n    isActive.value = !isActive.value\n  }\n\n  return {\n    isActive,\n    open,\n    close,\n    toggle\n  }\n}\n\nconst menu = useToggle()\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Cbutton @click=\"menu.toggle()\">\n    {{ menu.isActive ? 'Close menu' : 'Open menu' }}\n  \u003C\u002Fbutton>\n\n  \u003Cnav v-if=\"menu.isActive\">\n    Menu visible\n  \u003C\u002Fnav>\n\u003C\u002Ftemplate>\n","If the component no longer needs to know how the state changes, only when to use it, the composable is doing its job.","en",{"updatedAt":866,"coverCaption":53245,"author":868,"keywords":53246},"Reusable code in Vue 3 by TODOvue",[870,871,872,873,388,53247],"reusable logic","\u002Fblog\u002Fvue-3-composables-extract-reusable-logic.en",[53250],{"headline":52524,"author":53251,"datePublished":866,"@type":880},{"name":868,"@type":879},{"title":52524,"description":53232},"blog\u002Fvue-3-composables-extract-reusable-logic.en",[53255,53256,53258,53260],{"tag":872,"color":886},{"tag":53257,"color":889},"Components",{"tag":53259,"color":892},"Best Practices",{"tag":53261,"color":895},"Basics","rnyK__okuFv3x4WWPLU4OfA2NORpOh26WVgHznHKMqc",[53264,53923,55216,56464,58173,60252,61623,62982,64066,65058,67421,69129,71641,72773,75222,76316,78366,80947,83744,86488,89593,91272,94456,95109,96797,97345,98017,98859,98981,99551],{"id":5,"title":6,"body":53265,"cover":848,"coverAlt":849,"date":850,"description":851,"draft":852,"extension":853,"lab":53910,"locale":864,"meta":53912,"navigation":125,"path":875,"schemaOrg":53914,"seo":53917,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":883,"tags":53918,"__hash__":896},{"type":8,"value":53266,"toc":53901},[53267,53269,53271,53277,53279,53281,53283,53285,53295,53297,53299,53301,53521,53523,53525,53529,53531,53705,53707,53831,53833,53835,53837,53839,53857,53859,53861,53863,53865,53867,53869,53877,53881,53885,53887,53889,53891,53895,53897,53899],[11,53268,6],{"id":13},[15,53270,17],{},[15,53272,20,53273,25,53275,29],{},[22,53274,24],{},[22,53276,28],{},[15,53278,32],{},[34,53280,37],{"id":36},[15,53282,40],{},[15,53284,43],{},[15,53286,46,53287,50,53289,54,53291,58,53293,62],{},[22,53288,49],{},[22,53290,53],{},[22,53292,57],{},[22,53294,61],{},[15,53296,65],{},[34,53298,69],{"id":68},[15,53300,72],{},[74,53302,53303],{"className":76,"code":77,"filename":78,"language":79,"meta":80,"style":80},[22,53304,53305,53315,53325,53329,53345,53349,53363,53371,53375,53379,53393,53401,53405,53409,53423,53433,53437,53445,53449,53457,53471,53475,53483,53487,53501,53505,53513],{"__ignoreMap":80},[84,53306,53307,53309,53311,53313],{"class":86,"line":87},[84,53308,91],{"class":90},[84,53310,95],{"class":94},[84,53312,99],{"class":98},[84,53314,102],{"class":90},[84,53316,53317,53319,53321,53323],{"class":86,"line":105},[84,53318,109],{"class":108},[84,53320,112],{"class":90},[84,53322,115],{"class":108},[84,53324,119],{"class":118},[84,53326,53327],{"class":86,"line":122},[84,53328,126],{"emptyLinePlaceholder":125},[84,53330,53331,53333,53335,53337,53339,53341,53343],{"class":86,"line":129},[84,53332,132],{"class":108},[84,53334,136],{"class":135},[84,53336,139],{"class":108},[84,53338,142],{"class":98},[84,53340,145],{"class":90},[84,53342,148],{"class":135},[84,53344,151],{"class":90},[84,53346,53347],{"class":86,"line":154},[84,53348,126],{"emptyLinePlaceholder":125},[84,53350,53351,53353,53355,53357,53359,53361],{"class":86,"line":159},[84,53352,132],{"class":108},[84,53354,164],{"class":98},[84,53356,139],{"class":108},[84,53358,169],{"class":90},[84,53360,172],{"class":108},[84,53362,175],{"class":90},[84,53364,53365,53367,53369],{"class":86,"line":178},[84,53366,181],{"class":90},[84,53368,184],{"class":108},[84,53370,187],{"class":135},[84,53372,53373],{"class":86,"line":190},[84,53374,193],{"class":90},[84,53376,53377],{"class":86,"line":196},[84,53378,126],{"emptyLinePlaceholder":125},[84,53380,53381,53383,53385,53387,53389,53391],{"class":86,"line":201},[84,53382,132],{"class":108},[84,53384,206],{"class":98},[84,53386,139],{"class":108},[84,53388,169],{"class":90},[84,53390,172],{"class":108},[84,53392,175],{"class":90},[84,53394,53395,53397,53399],{"class":86,"line":217},[84,53396,181],{"class":90},[84,53398,184],{"class":108},[84,53400,224],{"class":135},[84,53402,53403],{"class":86,"line":227},[84,53404,193],{"class":90},[84,53406,53407],{"class":86,"line":232},[84,53408,126],{"emptyLinePlaceholder":125},[84,53410,53411,53413,53415,53417,53419,53421],{"class":86,"line":237},[84,53412,132],{"class":108},[84,53414,242],{"class":98},[84,53416,139],{"class":108},[84,53418,169],{"class":90},[84,53420,172],{"class":108},[84,53422,175],{"class":90},[84,53424,53425,53427,53429,53431],{"class":86,"line":253},[84,53426,181],{"class":90},[84,53428,184],{"class":108},[84,53430,260],{"class":108},[84,53432,263],{"class":90},[84,53434,53435],{"class":86,"line":266},[84,53436,193],{"class":90},[84,53438,53439,53441,53443],{"class":86,"line":271},[84,53440,274],{"class":90},[84,53442,95],{"class":94},[84,53444,102],{"class":90},[84,53446,53447],{"class":86,"line":281},[84,53448,126],{"emptyLinePlaceholder":125},[84,53450,53451,53453,53455],{"class":86,"line":286},[84,53452,91],{"class":90},[84,53454,291],{"class":94},[84,53456,102],{"class":90},[84,53458,53459,53461,53463,53465,53467,53469],{"class":86,"line":296},[84,53460,299],{"class":90},[84,53462,302],{"class":94},[84,53464,305],{"class":98},[84,53466,184],{"class":90},[84,53468,310],{"class":118},[84,53470,102],{"class":90},[84,53472,53473],{"class":86,"line":315},[84,53474,318],{"class":90},[84,53476,53477,53479,53481],{"class":86,"line":321},[84,53478,324],{"class":90},[84,53480,302],{"class":94},[84,53482,102],{"class":90},[84,53484,53485],{"class":86,"line":331},[84,53486,126],{"emptyLinePlaceholder":125},[84,53488,53489,53491,53493,53495,53497,53499],{"class":86,"line":336},[84,53490,299],{"class":90},[84,53492,341],{"class":94},[84,53494,344],{"class":98},[84,53496,184],{"class":90},[84,53498,349],{"class":118},[84,53500,102],{"class":90},[84,53502,53503],{"class":86,"line":354},[84,53504,357],{"class":90},[84,53506,53507,53509,53511],{"class":86,"line":360},[84,53508,324],{"class":90},[84,53510,341],{"class":94},[84,53512,102],{"class":90},[84,53514,53515,53517,53519],{"class":86,"line":369},[84,53516,274],{"class":90},[84,53518,291],{"class":94},[84,53520,102],{"class":90},[15,53522,378],{},[15,53524,381],{},[34,53526,385,53527],{"id":384},[22,53528,388],{},[15,53530,391],{},[74,53532,53533],{"className":394,"code":395,"filename":396,"language":397,"meta":80,"style":80},[22,53534,53535,53545,53549,53567,53579,53583,53597,53605,53609,53613,53627,53635,53639,53643,53657,53667,53671,53675,53681,53685,53689,53693,53697,53701],{"__ignoreMap":80},[84,53536,53537,53539,53541,53543],{"class":86,"line":87},[84,53538,109],{"class":108},[84,53540,112],{"class":90},[84,53542,115],{"class":108},[84,53544,119],{"class":118},[84,53546,53547],{"class":86,"line":105},[84,53548,126],{"emptyLinePlaceholder":125},[84,53550,53551,53553,53555,53557,53559,53561,53563,53565],{"class":86,"line":122},[84,53552,418],{"class":108},[84,53554,421],{"class":108},[84,53556,424],{"class":98},[84,53558,145],{"class":90},[84,53560,430],{"class":429},[84,53562,139],{"class":108},[84,53564,435],{"class":135},[84,53566,438],{"class":90},[84,53568,53569,53571,53573,53575,53577],{"class":86,"line":129},[84,53570,443],{"class":108},[84,53572,446],{"class":135},[84,53574,139],{"class":108},[84,53576,142],{"class":98},[84,53578,453],{"class":90},[84,53580,53581],{"class":86,"line":154},[84,53582,126],{"emptyLinePlaceholder":125},[84,53584,53585,53587,53589,53591,53593,53595],{"class":86,"line":159},[84,53586,443],{"class":108},[84,53588,164],{"class":98},[84,53590,139],{"class":108},[84,53592,169],{"class":90},[84,53594,172],{"class":108},[84,53596,175],{"class":90},[84,53598,53599,53601,53603],{"class":86,"line":178},[84,53600,476],{"class":90},[84,53602,184],{"class":108},[84,53604,187],{"class":135},[84,53606,53607],{"class":86,"line":190},[84,53608,485],{"class":90},[84,53610,53611],{"class":86,"line":196},[84,53612,126],{"emptyLinePlaceholder":125},[84,53614,53615,53617,53619,53621,53623,53625],{"class":86,"line":201},[84,53616,443],{"class":108},[84,53618,206],{"class":98},[84,53620,139],{"class":108},[84,53622,169],{"class":90},[84,53624,172],{"class":108},[84,53626,175],{"class":90},[84,53628,53629,53631,53633],{"class":86,"line":217},[84,53630,476],{"class":90},[84,53632,184],{"class":108},[84,53634,224],{"class":135},[84,53636,53637],{"class":86,"line":227},[84,53638,485],{"class":90},[84,53640,53641],{"class":86,"line":232},[84,53642,126],{"emptyLinePlaceholder":125},[84,53644,53645,53647,53649,53651,53653,53655],{"class":86,"line":237},[84,53646,443],{"class":108},[84,53648,242],{"class":98},[84,53650,139],{"class":108},[84,53652,169],{"class":90},[84,53654,172],{"class":108},[84,53656,175],{"class":90},[84,53658,53659,53661,53663,53665],{"class":86,"line":253},[84,53660,476],{"class":90},[84,53662,184],{"class":108},[84,53664,260],{"class":108},[84,53666,544],{"class":90},[84,53668,53669],{"class":86,"line":266},[84,53670,485],{"class":90},[84,53672,53673],{"class":86,"line":271},[84,53674,126],{"emptyLinePlaceholder":125},[84,53676,53677,53679],{"class":86,"line":281},[84,53678,557],{"class":108},[84,53680,175],{"class":90},[84,53682,53683],{"class":86,"line":286},[84,53684,564],{"class":90},[84,53686,53687],{"class":86,"line":296},[84,53688,569],{"class":90},[84,53690,53691],{"class":86,"line":315},[84,53692,574],{"class":90},[84,53694,53695],{"class":86,"line":321},[84,53696,579],{"class":90},[84,53698,53699],{"class":86,"line":331},[84,53700,485],{"class":90},[84,53702,53703],{"class":86,"line":336},[84,53704,193],{"class":90},[15,53706,590],{},[74,53708,53709],{"className":76,"code":593,"filename":78,"language":79,"meta":80,"style":80},[22,53710,53711,53721,53731,53735,53747,53755,53759,53767,53781,53785,53793,53797,53811,53815,53823],{"__ignoreMap":80},[84,53712,53713,53715,53717,53719],{"class":86,"line":87},[84,53714,91],{"class":90},[84,53716,95],{"class":94},[84,53718,99],{"class":98},[84,53720,102],{"class":90},[84,53722,53723,53725,53727,53729],{"class":86,"line":105},[84,53724,109],{"class":108},[84,53726,612],{"class":90},[84,53728,115],{"class":108},[84,53730,617],{"class":118},[84,53732,53733],{"class":86,"line":122},[84,53734,126],{"emptyLinePlaceholder":125},[84,53736,53737,53739,53741,53743,53745],{"class":86,"line":129},[84,53738,132],{"class":108},[84,53740,628],{"class":135},[84,53742,139],{"class":108},[84,53744,424],{"class":98},[84,53746,635],{"class":90},[84,53748,53749,53751,53753],{"class":86,"line":154},[84,53750,274],{"class":90},[84,53752,95],{"class":94},[84,53754,102],{"class":90},[84,53756,53757],{"class":86,"line":159},[84,53758,126],{"emptyLinePlaceholder":125},[84,53760,53761,53763,53765],{"class":86,"line":178},[84,53762,91],{"class":90},[84,53764,291],{"class":94},[84,53766,102],{"class":90},[84,53768,53769,53771,53773,53775,53777,53779],{"class":86,"line":190},[84,53770,299],{"class":90},[84,53772,302],{"class":94},[84,53774,305],{"class":98},[84,53776,184],{"class":90},[84,53778,668],{"class":118},[84,53780,102],{"class":90},[84,53782,53783],{"class":86,"line":196},[84,53784,675],{"class":90},[84,53786,53787,53789,53791],{"class":86,"line":201},[84,53788,324],{"class":90},[84,53790,302],{"class":94},[84,53792,102],{"class":90},[84,53794,53795],{"class":86,"line":217},[84,53796,126],{"emptyLinePlaceholder":125},[84,53798,53799,53801,53803,53805,53807,53809],{"class":86,"line":227},[84,53800,299],{"class":90},[84,53802,341],{"class":94},[84,53804,344],{"class":98},[84,53806,184],{"class":90},[84,53808,700],{"class":118},[84,53810,102],{"class":90},[84,53812,53813],{"class":86,"line":232},[84,53814,357],{"class":90},[84,53816,53817,53819,53821],{"class":86,"line":237},[84,53818,324],{"class":90},[84,53820,341],{"class":94},[84,53822,102],{"class":90},[84,53824,53825,53827,53829],{"class":86,"line":253},[84,53826,274],{"class":90},[84,53828,291],{"class":94},[84,53830,102],{"class":90},[15,53832,725],{},[34,53834,729],{"id":728},[15,53836,732],{},[15,53838,735],{},[737,53840,53841,53843,53845,53847],{},[740,53842,742],{},[740,53844,745],{},[740,53846,748],{},[740,53848,751,53849,754,53851,754,53853,754,53855,764],{},[22,53850,388],{},[22,53852,757],{},[22,53854,760],{},[22,53856,763],{},[15,53858,767],{},[34,53860,771],{"id":770},[15,53862,774],{},[15,53864,777],{},[15,53866,780],{},[34,53868,784],{"id":783},[15,53870,787,53871,754,53873,50,53875,797],{},[22,53872,790],{},[22,53874,793],{},[22,53876,796],{},[15,53878,800,53879,804],{},[22,53880,803],{},[15,53882,807,53883,811],{},[22,53884,810],{},[15,53886,814],{},[34,53888,818],{"id":817},[15,53890,821],{},[823,53892,53893],{},[15,53894,827],{},[15,53896,830],{},[15,53898,833],{},[835,53900,837],{},{"title":80,"searchDepth":105,"depth":105,"links":53902},[53903,53904,53905,53906,53907,53908,53909],{"id":36,"depth":105,"text":37},{"id":68,"depth":105,"text":69},{"id":384,"depth":105,"text":843},{"id":728,"depth":105,"text":729},{"id":770,"depth":105,"text":771},{"id":783,"depth":105,"text":784},{"id":817,"depth":105,"text":818},{"title":855,"goal":856,"tasks":53911,"starterCode":862,"solutionHint":863},[858,859,860,861],{"updatedAt":866,"coverCaption":867,"author":868,"keywords":53913},[870,871,872,873,388,874],[53915],{"headline":6,"author":53916,"datePublished":866,"@type":880},{"name":868,"@type":879},{"title":6,"description":851},[53919,53920,53921,53922],{"tag":872,"color":886},{"tag":888,"color":889},{"tag":891,"color":892},{"tag":894,"color":895},{"id":898,"title":899,"body":53924,"cover":2432,"coverAlt":2433,"date":2434,"description":2435,"draft":852,"extension":853,"lab":882,"locale":864,"meta":55204,"navigation":125,"path":2442,"schemaOrg":55206,"seo":55209,"series":2447,"seriesDescription":2448,"seriesOrder":196,"seriesTitle":2449,"slug":882,"stem":2450,"tags":55210,"__hash__":2464},{"type":8,"value":53925,"toc":55190},[53926,53930,53932,53936,53938,53940,53950,53954,53956,53964,53966,53976,53978,53994,53996,53998,54002,54010,54014,54016,54018,54020,54034,54038,54040,54042,54048,54054,54056,54066,54068,54070,54074,54076,54080,54082,54084,54608,55172,55176,55180,55182,55186,55188],[11,53927,905,53928,909],{"id":904},[22,53929,908],{},[15,53931,912],{},[15,53933,53934,917],{},[22,53935,908],{},[34,53937,921],{"id":920},[15,53939,924],{},[737,53941,53942,53944,53946,53948],{},[740,53943,929],{},[740,53945,932],{},[740,53947,935],{},[740,53949,938],{},[15,53951,53952,943],{},[22,53953,908],{},[34,53955,947],{"id":946},[15,53957,53958,952,53960,956,53962,961],{},[22,53959,908],{},[22,53961,955],{},[958,53963,960],{},[15,53965,964],{},[737,53967,53968,53970,53972,53974],{},[740,53969,969],{},[740,53971,972],{},[740,53973,975],{},[740,53975,978],{},[15,53977,981],{},[737,53979,53980,53984,53986],{},[740,53981,986,53982,764],{},[958,53983,989],{},[740,53985,992],{},[740,53987,995,53988,999,53990,50,53992,1006],{},[958,53989,998],{},[22,53991,1002],{},[22,53993,1005],{},[15,53995,1009],{},[34,53997,1013],{"id":1012},[15,53999,54000,1018],{},[22,54001,908],{},[737,54003,54004,54006,54008],{},[740,54005,1023],{},[740,54007,1026],{},[740,54009,1029],{},[15,54011,1032,54012,1036],{},[958,54013,1035],{},[34,54015,1040],{"id":1039},[15,54017,1043],{},[15,54019,1046],{},[737,54021,54022,54024,54026,54032],{},[740,54023,1051],{},[740,54025,1054],{},[740,54027,1057,54028,50,54030,764],{},[22,54029,1002],{},[22,54031,1005],{},[740,54033,1064],{},[15,54035,1067,54036,1070],{},[22,54037,908],{},[34,54039,784],{"id":783},[1074,54041,1077],{"id":1076},[15,54043,54044,1082,54046,1086],{},[22,54045,908],{},[22,54047,1085],{},[15,54049,1089,54050,50,54052,1096],{},[22,54051,1092],{},[22,54053,1095],{},[1074,54055,1100],{"id":1099},[15,54057,1103,54058,754,54060,1110,54062,1113,54064,1116],{},[22,54059,1106],{},[22,54061,1109],{},[22,54063,810],{},[22,54065,908],{},[1074,54067,1120],{"id":1119},[15,54069,1123],{},[15,54071,1126,54072,764],{},[22,54073,1085],{},[1074,54075,1132],{"id":1131},[15,54077,1135,54078,1138],{},[22,54079,908],{},[15,54081,1141],{},[34,54083,1145],{"id":1144},[74,54085,54086],{"className":76,"code":1148,"filename":873,"language":79,"meta":80,"style":80},[22,54087,54088,54104,54114,54118,54128,54136,54144,54152,54160,54164,54168,54192,54208,54212,54222,54240,54244,54254,54268,54272,54276,54296,54300,54304,54318,54324,54332,54340,54346,54362,54366,54370,54374,54388,54400,54404,54410,54418,54426,54432,54448,54452,54456,54464,54468,54476,54490,54508,54512,54530,54542,54554,54566,54574,54578,54592,54600],{"__ignoreMap":80},[84,54089,54090,54092,54094,54096,54098,54100,54102],{"class":86,"line":87},[84,54091,91],{"class":90},[84,54093,95],{"class":94},[84,54095,99],{"class":98},[84,54097,1161],{"class":98},[84,54099,184],{"class":90},[84,54101,1166],{"class":118},[84,54103,102],{"class":90},[84,54105,54106,54108,54110,54112],{"class":86,"line":105},[84,54107,109],{"class":108},[84,54109,1175],{"class":90},[84,54111,115],{"class":108},[84,54113,119],{"class":118},[84,54115,54116],{"class":86,"line":122},[84,54117,126],{"emptyLinePlaceholder":125},[84,54119,54120,54122,54124,54126],{"class":86,"line":129},[84,54121,1188],{"class":108},[84,54123,1191],{"class":98},[84,54125,139],{"class":108},[84,54127,175],{"class":90},[84,54129,54130,54132,54134],{"class":86,"line":154},[84,54131,1200],{"class":429},[84,54133,1203],{"class":108},[84,54135,1206],{"class":135},[84,54137,54138,54140,54142],{"class":86,"line":159},[84,54139,1211],{"class":429},[84,54141,1203],{"class":108},[84,54143,1216],{"class":135},[84,54145,54146,54148,54150],{"class":86,"line":178},[84,54147,1221],{"class":429},[84,54149,1203],{"class":108},[84,54151,1206],{"class":135},[84,54153,54154,54156,54158],{"class":86,"line":190},[84,54155,1230],{"class":429},[84,54157,1203],{"class":108},[84,54159,1206],{"class":135},[84,54161,54162],{"class":86,"line":196},[84,54163,193],{"class":90},[84,54165,54166],{"class":86,"line":201},[84,54167,126],{"emptyLinePlaceholder":125},[84,54169,54170,54172,54174,54176,54178,54180,54182,54184,54186,54188,54190],{"class":86,"line":217},[84,54171,132],{"class":108},[84,54173,1249],{"class":135},[84,54175,139],{"class":108},[84,54177,142],{"class":98},[84,54179,91],{"class":90},[84,54181,1258],{"class":98},[84,54183,1261],{"class":108},[84,54185,1264],{"class":135},[84,54187,1267],{"class":90},[84,54189,1270],{"class":135},[84,54191,151],{"class":90},[84,54193,54194,54196,54198,54200,54202,54204,54206],{"class":86,"line":227},[84,54195,132],{"class":108},[84,54197,1279],{"class":135},[84,54199,139],{"class":108},[84,54201,142],{"class":98},[84,54203,145],{"class":90},[84,54205,1288],{"class":118},[84,54207,151],{"class":90},[84,54209,54210],{"class":86,"line":232},[84,54211,126],{"emptyLinePlaceholder":125},[84,54213,54214,54216,54218,54220],{"class":86,"line":237},[84,54215,1299],{"class":108},[84,54217,421],{"class":108},[84,54219,1304],{"class":98},[84,54221,1307],{"class":90},[84,54223,54224,54226,54228,54230,54232,54234,54236,54238],{"class":86,"line":253},[84,54225,443],{"class":108},[84,54227,1314],{"class":135},[84,54229,139],{"class":108},[84,54231,1319],{"class":108},[84,54233,1322],{"class":98},[84,54235,145],{"class":90},[84,54237,1327],{"class":118},[84,54239,151],{"class":90},[84,54241,54242],{"class":86,"line":266},[84,54243,126],{"emptyLinePlaceholder":125},[84,54245,54246,54248,54250,54252],{"class":86,"line":271},[84,54247,1338],{"class":108},[84,54249,1341],{"class":90},[84,54251,1344],{"class":108},[84,54253,1347],{"class":90},[84,54255,54256,54258,54260,54262,54264,54266],{"class":86,"line":281},[84,54257,1352],{"class":108},[84,54259,1355],{"class":108},[84,54261,1358],{"class":98},[84,54263,145],{"class":90},[84,54265,1363],{"class":118},[84,54267,151],{"class":90},[84,54269,54270],{"class":86,"line":286},[84,54271,485],{"class":90},[84,54273,54274],{"class":86,"line":296},[84,54275,126],{"emptyLinePlaceholder":125},[84,54277,54278,54280,54282,54284,54286,54288,54290,54292,54294],{"class":86,"line":315},[84,54279,1378],{"class":90},[84,54281,184],{"class":108},[84,54283,1341],{"class":90},[84,54285,1385],{"class":108},[84,54287,1388],{"class":90},[84,54289,1391],{"class":98},[84,54291,1394],{"class":90},[84,54293,1397],{"class":108},[84,54295,1400],{"class":98},[84,54297,54298],{"class":86,"line":321},[84,54299,193],{"class":90},[84,54301,54302],{"class":86,"line":331},[84,54303,126],{"emptyLinePlaceholder":125},[84,54305,54306,54308,54310,54312,54314,54316],{"class":86,"line":336},[84,54307,1413],{"class":98},[84,54309,145],{"class":90},[84,54311,1299],{"class":108},[84,54313,169],{"class":90},[84,54315,172],{"class":108},[84,54317,175],{"class":90},[84,54319,54320,54322],{"class":86,"line":354},[84,54321,1428],{"class":108},[84,54323,175],{"class":90},[84,54325,54326,54328,54330],{"class":86,"line":360},[84,54327,1435],{"class":108},[84,54329,1304],{"class":98},[84,54331,635],{"class":90},[84,54333,54334,54336,54338],{"class":86,"line":369},[84,54335,1444],{"class":90},[84,54337,1447],{"class":108},[84,54339,1450],{"class":90},[84,54341,54342,54344],{"class":86,"line":1453},[84,54343,1456],{"class":90},[84,54345,1459],{"class":108},[84,54347,54348,54350,54352,54354,54356,54358,54360],{"class":86,"line":1462},[84,54349,1465],{"class":90},[84,54351,1468],{"class":108},[84,54353,1358],{"class":98},[84,54355,1473],{"class":108},[84,54357,1476],{"class":90},[84,54359,1203],{"class":108},[84,54361,1481],{"class":118},[84,54363,54364],{"class":86,"line":1484},[84,54365,485],{"class":90},[84,54367,54368],{"class":86,"line":1489},[84,54369,1492],{"class":90},[84,54371,54372],{"class":86,"line":1495},[84,54373,126],{"emptyLinePlaceholder":125},[84,54375,54376,54378,54380,54382,54384,54386],{"class":86,"line":1500},[84,54377,1503],{"class":98},[84,54379,145],{"class":90},[84,54381,1299],{"class":108},[84,54383,169],{"class":90},[84,54385,172],{"class":108},[84,54387,175],{"class":90},[84,54389,54390,54392,54394,54396,54398],{"class":86,"line":1516},[84,54391,1338],{"class":108},[84,54393,1521],{"class":90},[84,54395,1524],{"class":108},[84,54397,1527],{"class":90},[84,54399,1530],{"class":108},[84,54401,54402],{"class":86,"line":1533},[84,54403,126],{"emptyLinePlaceholder":125},[84,54405,54406,54408],{"class":86,"line":1538},[84,54407,1428],{"class":108},[84,54409,175],{"class":90},[84,54411,54412,54414,54416],{"class":86,"line":1545},[84,54413,1435],{"class":108},[84,54415,1304],{"class":98},[84,54417,635],{"class":90},[84,54419,54420,54422,54424],{"class":86,"line":1554},[84,54421,1444],{"class":90},[84,54423,1447],{"class":108},[84,54425,1450],{"class":90},[84,54427,54428,54430],{"class":86,"line":1563},[84,54429,1456],{"class":90},[84,54431,1459],{"class":108},[84,54433,54434,54436,54438,54440,54442,54444,54446],{"class":86,"line":1570},[84,54435,1465],{"class":90},[84,54437,1468],{"class":108},[84,54439,1358],{"class":98},[84,54441,1473],{"class":108},[84,54443,1476],{"class":90},[84,54445,1203],{"class":108},[84,54447,1585],{"class":118},[84,54449,54450],{"class":86,"line":1588},[84,54451,485],{"class":90},[84,54453,54454],{"class":86,"line":1593},[84,54455,1492],{"class":90},[84,54457,54458,54460,54462],{"class":86,"line":1598},[84,54459,274],{"class":90},[84,54461,95],{"class":94},[84,54463,102],{"class":90},[84,54465,54466],{"class":86,"line":1607},[84,54467,126],{"emptyLinePlaceholder":125},[84,54469,54470,54472,54474],{"class":86,"line":1612},[84,54471,91],{"class":90},[84,54473,291],{"class":94},[84,54475,102],{"class":90},[84,54477,54478,54480,54482,54484,54486,54488],{"class":86,"line":1621},[84,54479,299],{"class":90},[84,54481,1626],{"class":94},[84,54483,1629],{"class":98},[84,54485,184],{"class":90},[84,54487,1634],{"class":118},[84,54489,102],{"class":90},[84,54491,54492,54494,54496,54498,54500,54502,54504,54506],{"class":86,"line":1639},[84,54493,1642],{"class":90},[84,54495,15],{"class":94},[84,54497,344],{"class":98},[84,54499,184],{"class":90},[84,54501,1651],{"class":118},[84,54503,1654],{"class":90},[84,54505,15],{"class":94},[84,54507,102],{"class":90},[84,54509,54510],{"class":86,"line":1661},[84,54511,126],{"emptyLinePlaceholder":125},[84,54513,54514,54516,54518,54520,54522,54524,54526,54528],{"class":86,"line":1666},[84,54515,1642],{"class":90},[84,54517,291],{"class":94},[84,54519,1673],{"class":108},[84,54521,184],{"class":90},[84,54523,1678],{"class":118},[84,54525,1681],{"class":90},[84,54527,1678],{"class":118},[84,54529,102],{"class":90},[84,54531,54532,54534,54536,54538,54540],{"class":86,"line":1688},[84,54533,1691],{"class":90},[84,54535,11],{"class":94},[84,54537,1696],{"class":90},[84,54539,11],{"class":94},[84,54541,102],{"class":90},[84,54543,54544,54546,54548,54550,54552],{"class":86,"line":1703},[84,54545,1691],{"class":90},[84,54547,15],{"class":94},[84,54549,1710],{"class":90},[84,54551,15],{"class":94},[84,54553,102],{"class":90},[84,54555,54556,54558,54560,54562,54564],{"class":86,"line":1717},[84,54557,1691],{"class":90},[84,54559,15],{"class":94},[84,54561,1724],{"class":90},[84,54563,15],{"class":94},[84,54565,102],{"class":90},[84,54567,54568,54570,54572],{"class":86,"line":1731},[84,54569,1734],{"class":90},[84,54571,291],{"class":94},[84,54573,102],{"class":90},[84,54575,54576],{"class":86,"line":1741},[84,54577,126],{"emptyLinePlaceholder":125},[84,54579,54580,54582,54584,54586,54588,54590],{"class":86,"line":1746},[84,54581,1642],{"class":90},[84,54583,15],{"class":94},[84,54585,1753],{"class":98},[84,54587,1756],{"class":90},[84,54589,15],{"class":94},[84,54591,102],{"class":90},[84,54593,54594,54596,54598],{"class":86,"line":1763},[84,54595,324],{"class":90},[84,54597,1626],{"class":94},[84,54599,102],{"class":90},[84,54601,54602,54604,54606],{"class":86,"line":1772},[84,54603,274],{"class":90},[84,54605,291],{"class":94},[84,54607,102],{"class":90},[74,54609,54610],{"className":76,"code":1781,"filename":1782,"language":79,"meta":80,"style":80},[22,54611,54612,54626,54636,54640,54650,54658,54666,54674,54682,54686,54690,54700,54708,54712,54718,54724,54740,54746,54750,54754,54758,54762,54770,54788,54792,54802,54816,54820,54824,54846,54850,54854,54858,54866,54872,54884,54892,54900,54916,54920,54924,54928,54936,54954,54958,54964,54976,54984,54992,55008,55012,55016,55020,55028,55032,55040,55054,55072,55076,55094,55106,55118,55130,55138,55142,55156,55164],{"__ignoreMap":80},[84,54613,54614,54616,54618,54620,54622,54624],{"class":86,"line":87},[84,54615,91],{"class":90},[84,54617,95],{"class":94},[84,54619,1161],{"class":98},[84,54621,184],{"class":90},[84,54623,1166],{"class":118},[84,54625,102],{"class":90},[84,54627,54628,54630,54632,54634],{"class":86,"line":105},[84,54629,109],{"class":108},[84,54631,1805],{"class":90},[84,54633,115],{"class":108},[84,54635,119],{"class":118},[84,54637,54638],{"class":86,"line":122},[84,54639,126],{"emptyLinePlaceholder":125},[84,54641,54642,54644,54646,54648],{"class":86,"line":129},[84,54643,1188],{"class":108},[84,54645,1191],{"class":98},[84,54647,139],{"class":108},[84,54649,175],{"class":90},[84,54651,54652,54654,54656],{"class":86,"line":154},[84,54653,1200],{"class":429},[84,54655,1203],{"class":108},[84,54657,1206],{"class":135},[84,54659,54660,54662,54664],{"class":86,"line":159},[84,54661,1211],{"class":429},[84,54663,1203],{"class":108},[84,54665,1216],{"class":135},[84,54667,54668,54670,54672],{"class":86,"line":178},[84,54669,1221],{"class":429},[84,54671,1203],{"class":108},[84,54673,1206],{"class":135},[84,54675,54676,54678,54680],{"class":86,"line":190},[84,54677,1230],{"class":429},[84,54679,1203],{"class":108},[84,54681,1206],{"class":135},[84,54683,54684],{"class":86,"line":196},[84,54685,193],{"class":90},[84,54687,54688],{"class":86,"line":201},[84,54689,126],{"emptyLinePlaceholder":125},[84,54691,54692,54694,54696,54698],{"class":86,"line":217},[84,54693,418],{"class":108},[84,54695,1870],{"class":108},[84,54697,1873],{"class":98},[84,54699,1876],{"class":90},[84,54701,54702,54704,54706],{"class":86,"line":227},[84,54703,1881],{"class":90},[84,54705,1884],{"class":118},[84,54707,1887],{"class":90},[84,54709,54710],{"class":86,"line":232},[84,54711,126],{"emptyLinePlaceholder":125},[84,54713,54714,54716],{"class":86,"line":237},[84,54715,1896],{"class":98},[84,54717,1307],{"class":90},[84,54719,54720,54722],{"class":86,"line":253},[84,54721,1903],{"class":108},[84,54723,175],{"class":90},[84,54725,54726,54728,54730,54732,54734,54736,54738],{"class":86,"line":266},[84,54727,1910],{"class":90},[84,54729,1270],{"class":135},[84,54731,1915],{"class":108},[84,54733,1191],{"class":98},[84,54735,1261],{"class":108},[84,54737,1264],{"class":135},[84,54739,1887],{"class":90},[84,54741,54742,54744],{"class":86,"line":271},[84,54743,1928],{"class":90},[84,54745,1931],{"class":118},[84,54747,54748],{"class":86,"line":281},[84,54749,1936],{"class":90},[84,54751,54752],{"class":86,"line":286},[84,54753,1941],{"class":90},[84,54755,54756],{"class":86,"line":296},[84,54757,126],{"emptyLinePlaceholder":125},[84,54759,54760],{"class":86,"line":315},[84,54761,1950],{"class":90},[84,54763,54764,54766,54768],{"class":86,"line":321},[84,54765,1955],{"class":108},[84,54767,1304],{"class":98},[84,54769,1307],{"class":90},[84,54771,54772,54774,54776,54778,54780,54782,54784,54786],{"class":86,"line":331},[84,54773,1964],{"class":108},[84,54775,1314],{"class":135},[84,54777,139],{"class":108},[84,54779,1319],{"class":108},[84,54781,1322],{"class":98},[84,54783,145],{"class":90},[84,54785,1327],{"class":118},[84,54787,151],{"class":90},[84,54789,54790],{"class":86,"line":336},[84,54791,126],{"emptyLinePlaceholder":125},[84,54793,54794,54796,54798,54800],{"class":86,"line":354},[84,54795,1987],{"class":108},[84,54797,1341],{"class":90},[84,54799,1344],{"class":108},[84,54801,1347],{"class":90},[84,54803,54804,54806,54808,54810,54812,54814],{"class":86,"line":360},[84,54805,1998],{"class":108},[84,54807,1355],{"class":108},[84,54809,1358],{"class":98},[84,54811,145],{"class":90},[84,54813,1363],{"class":118},[84,54815,151],{"class":90},[84,54817,54818],{"class":86,"line":369},[84,54819,2013],{"class":90},[84,54821,54822],{"class":86,"line":1453},[84,54823,126],{"emptyLinePlaceholder":125},[84,54825,54826,54828,54830,54832,54834,54836,54838,54840,54842,54844],{"class":86,"line":1462},[84,54827,2022],{"class":135},[84,54829,2025],{"class":90},[84,54831,184],{"class":108},[84,54833,1341],{"class":90},[84,54835,1385],{"class":108},[84,54837,1388],{"class":90},[84,54839,1391],{"class":98},[84,54841,1394],{"class":90},[84,54843,1397],{"class":108},[84,54845,1400],{"class":98},[84,54847,54848],{"class":86,"line":1484},[84,54849,1936],{"class":90},[84,54851,54852],{"class":86,"line":1489},[84,54853,1941],{"class":90},[84,54855,54856],{"class":86,"line":1495},[84,54857,126],{"emptyLinePlaceholder":125},[84,54859,54860,54862,54864],{"class":86,"line":1500},[84,54861,2058],{"class":108},[84,54863,2061],{"class":98},[84,54865,1307],{"class":90},[84,54867,54868,54870],{"class":86,"line":1516},[84,54869,2068],{"class":108},[84,54871,175],{"class":90},[84,54873,54874,54876,54878,54880,54882],{"class":86,"line":1533},[84,54875,2075],{"class":108},[84,54877,2078],{"class":135},[84,54879,764],{"class":90},[84,54881,2083],{"class":98},[84,54883,635],{"class":90},[84,54885,54886,54888,54890],{"class":86,"line":1538},[84,54887,2090],{"class":90},[84,54889,1447],{"class":108},[84,54891,1450],{"class":90},[84,54893,54894,54896,54898],{"class":86,"line":1545},[84,54895,2022],{"class":135},[84,54897,2101],{"class":90},[84,54899,1459],{"class":108},[84,54901,54902,54904,54906,54908,54910,54912,54914],{"class":86,"line":1554},[84,54903,2108],{"class":90},[84,54905,1468],{"class":108},[84,54907,1358],{"class":98},[84,54909,1473],{"class":108},[84,54911,1476],{"class":90},[84,54913,1203],{"class":108},[84,54915,1481],{"class":118},[84,54917,54918],{"class":86,"line":1563},[84,54919,1936],{"class":90},[84,54921,54922],{"class":86,"line":1570},[84,54923,1941],{"class":90},[84,54925,54926],{"class":86,"line":1588},[84,54927,126],{"emptyLinePlaceholder":125},[84,54929,54930,54932,54934],{"class":86,"line":1593},[84,54931,2058],{"class":108},[84,54933,2139],{"class":98},[84,54935,1307],{"class":90},[84,54937,54938,54940,54942,54944,54946,54948,54950,54952],{"class":86,"line":1598},[84,54939,2146],{"class":108},[84,54941,1341],{"class":90},[84,54943,2151],{"class":135},[84,54945,2025],{"class":90},[84,54947,1524],{"class":108},[84,54949,2078],{"class":135},[84,54951,2160],{"class":90},[84,54953,1530],{"class":108},[84,54955,54956],{"class":86,"line":1607},[84,54957,126],{"emptyLinePlaceholder":125},[84,54959,54960,54962],{"class":86,"line":1612},[84,54961,2068],{"class":108},[84,54963,175],{"class":90},[84,54965,54966,54968,54970,54972,54974],{"class":86,"line":1621},[84,54967,2075],{"class":108},[84,54969,2078],{"class":135},[84,54971,764],{"class":90},[84,54973,2083],{"class":98},[84,54975,635],{"class":90},[84,54977,54978,54980,54982],{"class":86,"line":1639},[84,54979,2090],{"class":90},[84,54981,1447],{"class":108},[84,54983,1450],{"class":90},[84,54985,54986,54988,54990],{"class":86,"line":1661},[84,54987,2022],{"class":135},[84,54989,2101],{"class":90},[84,54991,1459],{"class":108},[84,54993,54994,54996,54998,55000,55002,55004,55006],{"class":86,"line":1666},[84,54995,2108],{"class":90},[84,54997,1468],{"class":108},[84,54999,1358],{"class":98},[84,55001,1473],{"class":108},[84,55003,1476],{"class":90},[84,55005,1203],{"class":108},[84,55007,1585],{"class":118},[84,55009,55010],{"class":86,"line":1688},[84,55011,1936],{"class":90},[84,55013,55014],{"class":86,"line":1703},[84,55015,485],{"class":90},[84,55017,55018],{"class":86,"line":1717},[84,55019,1492],{"class":90},[84,55021,55022,55024,55026],{"class":86,"line":1731},[84,55023,274],{"class":90},[84,55025,95],{"class":94},[84,55027,102],{"class":90},[84,55029,55030],{"class":86,"line":1741},[84,55031,126],{"emptyLinePlaceholder":125},[84,55033,55034,55036,55038],{"class":86,"line":1746},[84,55035,91],{"class":90},[84,55037,291],{"class":94},[84,55039,102],{"class":90},[84,55041,55042,55044,55046,55048,55050,55052],{"class":86,"line":1763},[84,55043,299],{"class":90},[84,55045,1626],{"class":94},[84,55047,1629],{"class":98},[84,55049,184],{"class":90},[84,55051,1634],{"class":118},[84,55053,102],{"class":90},[84,55055,55056,55058,55060,55062,55064,55066,55068,55070],{"class":86,"line":1772},[84,55057,1642],{"class":90},[84,55059,15],{"class":94},[84,55061,344],{"class":98},[84,55063,184],{"class":90},[84,55065,1651],{"class":118},[84,55067,1654],{"class":90},[84,55069,15],{"class":94},[84,55071,102],{"class":90},[84,55073,55074],{"class":86,"line":2283},[84,55075,126],{"emptyLinePlaceholder":125},[84,55077,55078,55080,55082,55084,55086,55088,55090,55092],{"class":86,"line":2288},[84,55079,1642],{"class":90},[84,55081,291],{"class":94},[84,55083,1673],{"class":108},[84,55085,184],{"class":90},[84,55087,1678],{"class":118},[84,55089,1681],{"class":90},[84,55091,1678],{"class":118},[84,55093,102],{"class":90},[84,55095,55096,55098,55100,55102,55104],{"class":86,"line":2307},[84,55097,1691],{"class":90},[84,55099,11],{"class":94},[84,55101,1696],{"class":90},[84,55103,11],{"class":94},[84,55105,102],{"class":90},[84,55107,55108,55110,55112,55114,55116],{"class":86,"line":2320},[84,55109,1691],{"class":90},[84,55111,15],{"class":94},[84,55113,1710],{"class":90},[84,55115,15],{"class":94},[84,55117,102],{"class":90},[84,55119,55120,55122,55124,55126,55128],{"class":86,"line":2333},[84,55121,1691],{"class":90},[84,55123,15],{"class":94},[84,55125,1724],{"class":90},[84,55127,15],{"class":94},[84,55129,102],{"class":90},[84,55131,55132,55134,55136],{"class":86,"line":2346},[84,55133,1734],{"class":90},[84,55135,291],{"class":94},[84,55137,102],{"class":90},[84,55139,55140],{"class":86,"line":2355},[84,55141,126],{"emptyLinePlaceholder":125},[84,55143,55144,55146,55148,55150,55152,55154],{"class":86,"line":2360},[84,55145,1642],{"class":90},[84,55147,15],{"class":94},[84,55149,1753],{"class":98},[84,55151,1756],{"class":90},[84,55153,15],{"class":94},[84,55155,102],{"class":90},[84,55157,55158,55160,55162],{"class":86,"line":2375},[84,55159,324],{"class":90},[84,55161,1626],{"class":94},[84,55163,102],{"class":90},[84,55165,55166,55168,55170],{"class":86,"line":2384},[84,55167,274],{"class":90},[84,55169,291],{"class":94},[84,55171,102],{"class":90},[15,55173,2393,55174,2396],{},[22,55175,1092],{},[15,55177,2399,55178,2402],{},[22,55179,1085],{},[34,55181,2406],{"id":2405},[15,55183,55184,2411],{},[22,55185,908],{},[15,55187,2414],{},[835,55189,2417],{},{"title":80,"searchDepth":105,"depth":105,"links":55191},[55192,55193,55194,55195,55196,55202,55203],{"id":920,"depth":105,"text":921},{"id":946,"depth":105,"text":947},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":783,"depth":105,"text":784,"children":55197},[55198,55199,55200,55201],{"id":1076,"depth":122,"text":1077},{"id":1099,"depth":122,"text":1100},{"id":1119,"depth":122,"text":1120},{"id":1131,"depth":122,"text":1132},{"id":1144,"depth":105,"text":1145},{"id":2405,"depth":105,"text":2406},{"updatedAt":2437,"readingTime":190,"coverCaption":2438,"author":868,"keywords":55205},[870,908,1413,2440,2441],[55207],{"headline":899,"author":55208,"datePublished":2437,"@type":880},{"name":868,"@type":879},{"title":899,"description":2435},[55211,55212,55213,55214,55215],{"tag":2453,"color":2454},{"tag":2440,"color":2456},{"tag":2458,"color":2459},{"tag":888,"color":889},{"tag":2462,"color":2463},{"id":2466,"title":2467,"body":55217,"cover":3922,"coverAlt":3923,"date":3924,"description":3925,"draft":852,"extension":853,"lab":882,"locale":864,"meta":56452,"navigation":125,"path":3930,"schemaOrg":56454,"seo":56457,"series":2447,"seriesDescription":2448,"seriesOrder":190,"seriesTitle":2449,"slug":882,"stem":3935,"tags":56458,"__hash__":3948},{"type":8,"value":55218,"toc":56433},[55219,55225,55227,55233,55235,55241,55243,55245,55259,55265,55267,55271,55273,55287,55289,55317,55319,55329,55331,55333,55335,55337,55349,55351,55353,55355,55357,55377,55379,55381,55383,55389,55391,55395,55397,55399,55401,55403,55405,55407,55411,55413,55417,55419,55421,55423,55911,56397,56399,56407,56409,56415,56417,56427,56431],[11,55220,2473,55221,754,55223,909],{"id":2472},[22,55222,2476],{},[22,55224,2479],{},[15,55226,2482],{},[15,55228,2485,55229,2488,55231,2491],{},[22,55230,2476],{},[22,55232,2479],{},[15,55234,2494],{},[737,55236,55237,55239],{},[740,55238,2499],{},[740,55240,2502],{},[34,55242,921],{"id":920},[15,55244,2507],{},[737,55246,55247,55249,55251,55253],{},[740,55248,2512],{},[740,55250,2515],{},[740,55252,2518],{},[740,55254,55255,2488,55257,2527],{},[22,55256,2523],{},[22,55258,2526],{},[15,55260,2530,55261,2488,55263,2535],{},[22,55262,2476],{},[22,55264,2479],{},[34,55266,947],{"id":946},[15,55268,2540,55269,2543],{},[22,55270,2523],{},[15,55272,2546],{},[737,55274,55275,55281],{},[740,55276,55277,952,55279,2556],{},[22,55278,2476],{},[22,55280,2555],{},[740,55282,55283,952,55285,2564],{},[22,55284,2479],{},[22,55286,2563],{},[15,55288,2567],{},[737,55290,55291,55295,55299,55311],{},[740,55292,55293,2575],{},[22,55294,2574],{},[740,55296,55297,2581],{},[22,55298,2580],{},[740,55300,55301,2586,55303,754,55305,754,55307,754,55309,2599],{},[22,55302,1188],{},[22,55304,2589],{},[22,55306,2592],{},[22,55308,2595],{},[22,55310,2598],{},[740,55312,55313,2488,55315,2608],{},[22,55314,2604],{},[22,55316,2607],{},[15,55318,2611],{},[737,55320,55321,55323],{},[740,55322,2616],{},[740,55324,2619,55325,50,55327,2626],{},[22,55326,2622],{},[22,55328,2625],{},[15,55330,2629],{},[34,55332,1013],{"id":1012},[15,55334,2634],{},[15,55336,2637],{},[737,55338,55339,55341,55343,55345],{},[740,55340,2642],{},[740,55342,2645],{},[740,55344,2648],{},[740,55346,2651,55347,2654],{},[22,55348,2523],{},[15,55350,2657],{},[34,55352,1040],{"id":1039},[15,55354,2662],{},[15,55356,2665],{},[737,55358,55359,55369,55373,55375],{},[740,55360,2670,55361,754,55363,754,55365,50,55367,764],{},[22,55362,2673],{},[22,55364,2676],{},[22,55366,2523],{},[22,55368,2526],{},[740,55370,2683,55371,2686],{},[22,55372,2526],{},[740,55374,2689],{},[740,55376,2692],{},[15,55378,2695],{},[34,55380,784],{"id":783},[1074,55382,2701],{"id":2700},[15,55384,2704,55385,50,55387,764],{},[22,55386,2526],{},[22,55388,2523],{},[1074,55390,2712],{"id":2711},[15,55392,2715,55393,2718],{},[22,55394,24],{},[1074,55396,2722],{"id":2721},[15,55398,2725],{},[1074,55400,2729],{"id":2728},[15,55402,2732],{},[34,55404,2736],{"id":2735},[1074,55406,2740],{"id":2739},[15,55408,2743,55409,2746],{},[22,55410,2476],{},[1074,55412,2750],{"id":2749},[15,55414,55415,2755],{},[22,55416,2479],{},[1074,55418,2759],{"id":2758},[15,55420,2762],{},[34,55422,2766],{"id":2765},[74,55424,55425],{"className":76,"code":2769,"filename":873,"language":79,"meta":80,"style":80},[22,55426,55427,55443,55453,55457,55469,55477,55483,55487,55491,55503,55511,55517,55521,55525,55537,55557,55577,55597,55601,55605,55621,55637,55647,55655,55667,55671,55691,55695,55705,55709,55713,55717,55731,55743,55747,55755,55759,55763,55767,55771,55785,55797,55801,55809,55813,55817,55821,55825,55829,55845,55869,55873,55885,55889,55899,55903],{"__ignoreMap":80},[84,55428,55429,55431,55433,55435,55437,55439,55441],{"class":86,"line":87},[84,55430,91],{"class":90},[84,55432,95],{"class":94},[84,55434,99],{"class":98},[84,55436,1161],{"class":98},[84,55438,184],{"class":90},[84,55440,1166],{"class":118},[84,55442,102],{"class":90},[84,55444,55445,55447,55449,55451],{"class":86,"line":105},[84,55446,109],{"class":108},[84,55448,2794],{"class":90},[84,55450,115],{"class":108},[84,55452,119],{"class":118},[84,55454,55455],{"class":86,"line":122},[84,55456,126],{"emptyLinePlaceholder":125},[84,55458,55459,55461,55463,55465,55467],{"class":86,"line":129},[84,55460,132],{"class":108},[84,55462,2809],{"class":135},[84,55464,139],{"class":108},[84,55466,2814],{"class":98},[84,55468,1876],{"class":90},[84,55470,55471,55473,55475],{"class":86,"line":154},[84,55472,2821],{"class":90},[84,55474,1288],{"class":118},[84,55476,1887],{"class":90},[84,55478,55479,55481],{"class":86,"line":159},[84,55480,2830],{"class":90},[84,55482,2833],{"class":135},[84,55484,55485],{"class":86,"line":178},[84,55486,1492],{"class":90},[84,55488,55489],{"class":86,"line":190},[84,55490,126],{"emptyLinePlaceholder":125},[84,55492,55493,55495,55497,55499,55501],{"class":86,"line":196},[84,55494,132],{"class":108},[84,55496,2848],{"class":135},[84,55498,139],{"class":108},[84,55500,2814],{"class":98},[84,55502,1876],{"class":90},[84,55504,55505,55507,55509],{"class":86,"line":201},[84,55506,2859],{"class":90},[84,55508,2862],{"class":135},[84,55510,1887],{"class":90},[84,55512,55513,55515],{"class":86,"line":217},[84,55514,2869],{"class":90},[84,55516,2872],{"class":135},[84,55518,55519],{"class":86,"line":227},[84,55520,1492],{"class":90},[84,55522,55523],{"class":86,"line":232},[84,55524,126],{"emptyLinePlaceholder":125},[84,55526,55527,55529,55531,55533,55535],{"class":86,"line":237},[84,55528,132],{"class":108},[84,55530,2887],{"class":135},[84,55532,139],{"class":108},[84,55534,142],{"class":98},[84,55536,2894],{"class":90},[84,55538,55539,55541,55543,55545,55547,55549,55551,55553,55555],{"class":86,"line":253},[84,55540,2899],{"class":90},[84,55542,2862],{"class":135},[84,55544,2904],{"class":90},[84,55546,2907],{"class":118},[84,55548,2910],{"class":90},[84,55550,148],{"class":135},[84,55552,2915],{"class":90},[84,55554,2918],{"class":118},[84,55556,2921],{"class":90},[84,55558,55559,55561,55563,55565,55567,55569,55571,55573,55575],{"class":86,"line":266},[84,55560,2899],{"class":90},[84,55562,2928],{"class":135},[84,55564,2904],{"class":90},[84,55566,2933],{"class":118},[84,55568,2910],{"class":90},[84,55570,2938],{"class":135},[84,55572,2915],{"class":90},[84,55574,2943],{"class":118},[84,55576,2921],{"class":90},[84,55578,55579,55581,55583,55585,55587,55589,55591,55593,55595],{"class":86,"line":271},[84,55580,2899],{"class":90},[84,55582,2952],{"class":135},[84,55584,2904],{"class":90},[84,55586,2957],{"class":118},[84,55588,2910],{"class":90},[84,55590,148],{"class":135},[84,55592,2915],{"class":90},[84,55594,2918],{"class":118},[84,55596,2968],{"class":90},[84,55598,55599],{"class":86,"line":281},[84,55600,2973],{"class":90},[84,55602,55603],{"class":86,"line":286},[84,55604,126],{"emptyLinePlaceholder":125},[84,55606,55607,55609,55611,55613,55615,55617,55619],{"class":86,"line":296},[84,55608,132],{"class":108},[84,55610,2984],{"class":135},[84,55612,139],{"class":108},[84,55614,2989],{"class":98},[84,55616,2992],{"class":90},[84,55618,172],{"class":108},[84,55620,175],{"class":90},[84,55622,55623,55625,55627,55629,55631,55633,55635],{"class":86,"line":315},[84,55624,557],{"class":108},[84,55626,3003],{"class":90},[84,55628,3006],{"class":98},[84,55630,145],{"class":90},[84,55632,3011],{"class":429},[84,55634,3014],{"class":108},[84,55636,175],{"class":90},[84,55638,55639,55641,55643,55645],{"class":86,"line":321},[84,55640,3021],{"class":108},[84,55642,3024],{"class":135},[84,55644,139],{"class":108},[84,55646,3029],{"class":90},[84,55648,55649,55651,55653],{"class":86,"line":331},[84,55650,3034],{"class":90},[84,55652,3037],{"class":98},[84,55654,635],{"class":90},[84,55656,55657,55659,55661,55663,55665],{"class":86,"line":336},[84,55658,3034],{"class":90},[84,55660,3046],{"class":98},[84,55662,3049],{"class":90},[84,55664,3037],{"class":98},[84,55666,3054],{"class":90},[84,55668,55669],{"class":86,"line":354},[84,55670,126],{"emptyLinePlaceholder":125},[84,55672,55673,55675,55677,55679,55681,55683,55685,55687,55689],{"class":86,"line":360},[84,55674,3021],{"class":108},[84,55676,3065],{"class":135},[84,55678,139],{"class":108},[84,55680,3070],{"class":90},[84,55682,3073],{"class":108},[84,55684,260],{"class":108},[84,55686,3078],{"class":90},[84,55688,1203],{"class":108},[84,55690,187],{"class":135},[84,55692,55693],{"class":86,"line":369},[84,55694,126],{"emptyLinePlaceholder":125},[84,55696,55697,55699,55701,55703],{"class":86,"line":1453},[84,55698,1903],{"class":108},[84,55700,3093],{"class":90},[84,55702,3096],{"class":108},[84,55704,3099],{"class":90},[84,55706,55707],{"class":86,"line":1462},[84,55708,3104],{"class":90},[84,55710,55711],{"class":86,"line":1484},[84,55712,1492],{"class":90},[84,55714,55715],{"class":86,"line":1489},[84,55716,126],{"emptyLinePlaceholder":125},[84,55718,55719,55721,55723,55725,55727,55729],{"class":86,"line":1495},[84,55720,3117],{"class":98},[84,55722,3120],{"class":90},[84,55724,3123],{"class":429},[84,55726,3126],{"class":90},[84,55728,172],{"class":108},[84,55730,175],{"class":90},[84,55732,55733,55735,55737,55739,55741],{"class":86,"line":1500},[84,55734,3135],{"class":90},[84,55736,3138],{"class":98},[84,55738,145],{"class":90},[84,55740,3143],{"class":118},[84,55742,3146],{"class":90},[84,55744,55745],{"class":86,"line":1516},[84,55746,3151],{"class":90},[84,55748,55749,55751,55753],{"class":86,"line":1533},[84,55750,3156],{"class":90},[84,55752,3159],{"class":98},[84,55754,3162],{"class":90},[84,55756,55757],{"class":86,"line":1538},[84,55758,3167],{"class":90},[84,55760,55761],{"class":86,"line":1545},[84,55762,3104],{"class":90},[84,55764,55765],{"class":86,"line":1554},[84,55766,1492],{"class":90},[84,55768,55769],{"class":86,"line":1563},[84,55770,126],{"emptyLinePlaceholder":125},[84,55772,55773,55775,55777,55779,55781,55783],{"class":86,"line":1570},[84,55774,3184],{"class":98},[84,55776,3120],{"class":90},[84,55778,3123],{"class":429},[84,55780,3126],{"class":90},[84,55782,172],{"class":108},[84,55784,175],{"class":90},[84,55786,55787,55789,55791,55793,55795],{"class":86,"line":1588},[84,55788,3135],{"class":90},[84,55790,3138],{"class":98},[84,55792,145],{"class":90},[84,55794,3205],{"class":118},[84,55796,3146],{"class":90},[84,55798,55799],{"class":86,"line":1593},[84,55800,3151],{"class":90},[84,55802,55803,55805,55807],{"class":86,"line":1598},[84,55804,3156],{"class":90},[84,55806,3159],{"class":98},[84,55808,3162],{"class":90},[84,55810,55811],{"class":86,"line":1607},[84,55812,3224],{"class":90},[84,55814,55815],{"class":86,"line":1612},[84,55816,3229],{"class":90},[84,55818,55819],{"class":86,"line":1621},[84,55820,3104],{"class":90},[84,55822,55823],{"class":86,"line":1639},[84,55824,1492],{"class":90},[84,55826,55827],{"class":86,"line":1661},[84,55828,126],{"emptyLinePlaceholder":125},[84,55830,55831,55833,55835,55837,55839,55841,55843],{"class":86,"line":1666},[84,55832,3246],{"class":108},[84,55834,3249],{"class":98},[84,55836,145],{"class":90},[84,55838,3254],{"class":429},[84,55840,1203],{"class":108},[84,55842,3259],{"class":135},[84,55844,438],{"class":90},[84,55846,55847,55849,55851,55853,55855,55857,55859,55861,55863,55865,55867],{"class":86,"line":1688},[84,55848,443],{"class":108},[84,55850,3268],{"class":135},[84,55852,139],{"class":108},[84,55854,3003],{"class":90},[84,55856,3275],{"class":98},[84,55858,145],{"class":90},[84,55860,3280],{"class":429},[84,55862,3014],{"class":108},[84,55864,3285],{"class":90},[84,55866,3288],{"class":108},[84,55868,3291],{"class":90},[84,55870,55871],{"class":86,"line":1703},[84,55872,126],{"emptyLinePlaceholder":125},[84,55874,55875,55877,55879,55881,55883],{"class":86,"line":1717},[84,55876,1338],{"class":108},[84,55878,1341],{"class":90},[84,55880,1344],{"class":108},[84,55882,3306],{"class":90},[84,55884,1530],{"class":108},[84,55886,55887],{"class":86,"line":1731},[84,55888,126],{"emptyLinePlaceholder":125},[84,55890,55891,55893,55895,55897],{"class":86,"line":1741},[84,55892,3317],{"class":90},[84,55894,184],{"class":108},[84,55896,260],{"class":108},[84,55898,3324],{"class":90},[84,55900,55901],{"class":86,"line":1746},[84,55902,193],{"class":90},[84,55904,55905,55907,55909],{"class":86,"line":1763},[84,55906,274],{"class":90},[84,55908,95],{"class":94},[84,55910,102],{"class":90},[74,55912,55913],{"className":76,"code":3339,"filename":1782,"language":79,"meta":80,"style":80},[22,55914,55915,55929,55937,55945,55949,55955,55961,55965,55973,55979,55983,55987,55995,56001,56005,56009,56029,56049,56069,56073,56077,56081,56085,56089,56095,56113,56123,56131,56147,56151,56173,56177,56187,56191,56195,56199,56203,56213,56225,56229,56237,56241,56245,56249,56253,56263,56275,56279,56287,56291,56295,56299,56303,56307,56311,56321,56347,56351,56363,56367,56377,56381,56385,56389],{"__ignoreMap":80},[84,55916,55917,55919,55921,55923,55925,55927],{"class":86,"line":87},[84,55918,91],{"class":90},[84,55920,95],{"class":94},[84,55922,1161],{"class":98},[84,55924,184],{"class":90},[84,55926,1166],{"class":118},[84,55928,102],{"class":90},[84,55930,55931,55933,55935],{"class":86,"line":105},[84,55932,418],{"class":108},[84,55934,1870],{"class":108},[84,55936,175],{"class":90},[84,55938,55939,55941,55943],{"class":86,"line":122},[84,55940,1881],{"class":90},[84,55942,3370],{"class":118},[84,55944,1887],{"class":90},[84,55946,55947],{"class":86,"line":129},[84,55948,126],{"emptyLinePlaceholder":125},[84,55950,55951,55953],{"class":86,"line":154},[84,55952,1896],{"class":98},[84,55954,1307],{"class":90},[84,55956,55957,55959],{"class":86,"line":159},[84,55958,1903],{"class":108},[84,55960,175],{"class":90},[84,55962,55963],{"class":86,"line":178},[84,55964,3393],{"class":90},[84,55966,55967,55969,55971],{"class":86,"line":190},[84,55968,3398],{"class":90},[84,55970,1288],{"class":118},[84,55972,1887],{"class":90},[84,55974,55975,55977],{"class":86,"line":196},[84,55976,3407],{"class":90},[84,55978,2833],{"class":135},[84,55980,55981],{"class":86,"line":201},[84,55982,3414],{"class":90},[84,55984,55985],{"class":86,"line":217},[84,55986,3419],{"class":90},[84,55988,55989,55991,55993],{"class":86,"line":227},[84,55990,3424],{"class":90},[84,55992,2862],{"class":135},[84,55994,1887],{"class":90},[84,55996,55997,55999],{"class":86,"line":232},[84,55998,3433],{"class":90},[84,56000,2872],{"class":135},[84,56002,56003],{"class":86,"line":237},[84,56004,3414],{"class":90},[84,56006,56007],{"class":86,"line":253},[84,56008,3444],{"class":90},[84,56010,56011,56013,56015,56017,56019,56021,56023,56025,56027],{"class":86,"line":266},[84,56012,3449],{"class":90},[84,56014,2862],{"class":135},[84,56016,2904],{"class":90},[84,56018,2907],{"class":118},[84,56020,2910],{"class":90},[84,56022,148],{"class":135},[84,56024,2915],{"class":90},[84,56026,2918],{"class":118},[84,56028,2921],{"class":90},[84,56030,56031,56033,56035,56037,56039,56041,56043,56045,56047],{"class":86,"line":271},[84,56032,3449],{"class":90},[84,56034,2928],{"class":135},[84,56036,2904],{"class":90},[84,56038,2933],{"class":118},[84,56040,2910],{"class":90},[84,56042,2938],{"class":135},[84,56044,2915],{"class":90},[84,56046,2943],{"class":118},[84,56048,2921],{"class":90},[84,56050,56051,56053,56055,56057,56059,56061,56063,56065,56067],{"class":86,"line":281},[84,56052,3449],{"class":90},[84,56054,2952],{"class":135},[84,56056,2904],{"class":90},[84,56058,2957],{"class":118},[84,56060,2910],{"class":90},[84,56062,148],{"class":135},[84,56064,2915],{"class":90},[84,56066,2918],{"class":118},[84,56068,2968],{"class":90},[84,56070,56071],{"class":86,"line":286},[84,56072,3510],{"class":90},[84,56074,56075],{"class":86,"line":296},[84,56076,1936],{"class":90},[84,56078,56079],{"class":86,"line":315},[84,56080,1941],{"class":90},[84,56082,56083],{"class":86,"line":321},[84,56084,126],{"emptyLinePlaceholder":125},[84,56086,56087],{"class":86,"line":331},[84,56088,3527],{"class":90},[84,56090,56091,56093],{"class":86,"line":336},[84,56092,3532],{"class":98},[84,56094,1307],{"class":90},[84,56096,56097,56099,56101,56103,56105,56107,56109,56111],{"class":86,"line":354},[84,56098,3539],{"class":108},[84,56100,2078],{"class":135},[84,56102,3544],{"class":90},[84,56104,3006],{"class":98},[84,56106,145],{"class":90},[84,56108,3011],{"class":429},[84,56110,3014],{"class":108},[84,56112,175],{"class":90},[84,56114,56115,56117,56119,56121],{"class":86,"line":360},[84,56116,3559],{"class":108},[84,56118,3024],{"class":135},[84,56120,139],{"class":108},[84,56122,3029],{"class":90},[84,56124,56125,56127,56129],{"class":86,"line":369},[84,56126,3570],{"class":90},[84,56128,3037],{"class":98},[84,56130,635],{"class":90},[84,56132,56133,56135,56137,56139,56141,56143,56145],{"class":86,"line":1453},[84,56134,3570],{"class":90},[84,56136,3046],{"class":98},[84,56138,145],{"class":90},[84,56140,2151],{"class":135},[84,56142,3587],{"class":90},[84,56144,3037],{"class":98},[84,56146,3054],{"class":90},[84,56148,56149],{"class":86,"line":1462},[84,56150,126],{"emptyLinePlaceholder":125},[84,56152,56153,56155,56157,56159,56161,56163,56165,56167,56169,56171],{"class":86,"line":1484},[84,56154,3559],{"class":108},[84,56156,3065],{"class":135},[84,56158,139],{"class":108},[84,56160,2078],{"class":135},[84,56162,3608],{"class":90},[84,56164,3073],{"class":108},[84,56166,260],{"class":108},[84,56168,3078],{"class":90},[84,56170,1203],{"class":108},[84,56172,187],{"class":135},[84,56174,56175],{"class":86,"line":1489},[84,56176,126],{"emptyLinePlaceholder":125},[84,56178,56179,56181,56183,56185],{"class":86,"line":1495},[84,56180,3627],{"class":108},[84,56182,3093],{"class":90},[84,56184,3096],{"class":108},[84,56186,3099],{"class":90},[84,56188,56189],{"class":86,"line":1500},[84,56190,3638],{"class":90},[84,56192,56193],{"class":86,"line":1516},[84,56194,1936],{"class":90},[84,56196,56197],{"class":86,"line":1533},[84,56198,1941],{"class":90},[84,56200,56201],{"class":86,"line":1538},[84,56202,126],{"emptyLinePlaceholder":125},[84,56204,56205,56207,56209,56211],{"class":86,"line":1545},[84,56206,3655],{"class":98},[84,56208,145],{"class":90},[84,56210,3123],{"class":429},[84,56212,438],{"class":90},[84,56214,56215,56217,56219,56221,56223],{"class":86,"line":1554},[84,56216,3666],{"class":90},[84,56218,3138],{"class":98},[84,56220,145],{"class":90},[84,56222,3143],{"class":118},[84,56224,3146],{"class":90},[84,56226,56227],{"class":86,"line":1563},[84,56228,3679],{"class":90},[84,56230,56231,56233,56235],{"class":86,"line":1570},[84,56232,3684],{"class":90},[84,56234,3159],{"class":98},[84,56236,3162],{"class":90},[84,56238,56239],{"class":86,"line":1588},[84,56240,3693],{"class":90},[84,56242,56243],{"class":86,"line":1593},[84,56244,3698],{"class":90},[84,56246,56247],{"class":86,"line":1598},[84,56248,1941],{"class":90},[84,56250,56251],{"class":86,"line":1607},[84,56252,126],{"emptyLinePlaceholder":125},[84,56254,56255,56257,56259,56261],{"class":86,"line":1612},[84,56256,3711],{"class":98},[84,56258,145],{"class":90},[84,56260,3123],{"class":429},[84,56262,438],{"class":90},[84,56264,56265,56267,56269,56271,56273],{"class":86,"line":1621},[84,56266,3666],{"class":90},[84,56268,3138],{"class":98},[84,56270,145],{"class":90},[84,56272,3205],{"class":118},[84,56274,3146],{"class":90},[84,56276,56277],{"class":86,"line":1639},[84,56278,3679],{"class":90},[84,56280,56281,56283,56285],{"class":86,"line":1661},[84,56282,3684],{"class":90},[84,56284,3159],{"class":98},[84,56286,3162],{"class":90},[84,56288,56289],{"class":86,"line":1666},[84,56290,3746],{"class":90},[84,56292,56293],{"class":86,"line":1688},[84,56294,3751],{"class":90},[84,56296,56297],{"class":86,"line":1703},[84,56298,3698],{"class":90},[84,56300,56301],{"class":86,"line":1717},[84,56302,1941],{"class":90},[84,56304,56305],{"class":86,"line":1731},[84,56306,126],{"emptyLinePlaceholder":125},[84,56308,56309],{"class":86,"line":1741},[84,56310,1950],{"class":90},[84,56312,56313,56315,56317,56319],{"class":86,"line":1746},[84,56314,3772],{"class":98},[84,56316,145],{"class":90},[84,56318,3254],{"class":429},[84,56320,438],{"class":90},[84,56322,56323,56325,56327,56329,56331,56333,56335,56337,56339,56341,56343,56345],{"class":86,"line":1763},[84,56324,1964],{"class":108},[84,56326,3268],{"class":135},[84,56328,139],{"class":108},[84,56330,2078],{"class":135},[84,56332,3544],{"class":90},[84,56334,3275],{"class":98},[84,56336,145],{"class":90},[84,56338,3280],{"class":429},[84,56340,3014],{"class":108},[84,56342,3285],{"class":90},[84,56344,3288],{"class":108},[84,56346,3291],{"class":90},[84,56348,56349],{"class":86,"line":1772},[84,56350,126],{"emptyLinePlaceholder":125},[84,56352,56353,56355,56357,56359,56361],{"class":86,"line":2283},[84,56354,1987],{"class":108},[84,56356,1341],{"class":90},[84,56358,1344],{"class":108},[84,56360,3306],{"class":90},[84,56362,1530],{"class":108},[84,56364,56365],{"class":86,"line":2288},[84,56366,126],{"emptyLinePlaceholder":125},[84,56368,56369,56371,56373,56375],{"class":86,"line":2307},[84,56370,3829],{"class":90},[84,56372,184],{"class":108},[84,56374,260],{"class":108},[84,56376,3324],{"class":90},[84,56378,56379],{"class":86,"line":2320},[84,56380,1936],{"class":90},[84,56382,56383],{"class":86,"line":2333},[84,56384,485],{"class":90},[84,56386,56387],{"class":86,"line":2346},[84,56388,193],{"class":90},[84,56390,56391,56393,56395],{"class":86,"line":2355},[84,56392,274],{"class":90},[84,56394,95],{"class":94},[84,56396,102],{"class":90},[15,56398,3858],{},[737,56400,56401,56403,56405],{},[740,56402,3863],{},[740,56404,3866],{},[740,56406,3869],{},[34,56408,2406],{"id":2405},[15,56410,56411,2488,56413,3878],{},[22,56412,2476],{},[22,56414,2479],{},[15,56416,3881],{},[737,56418,56419,56421,56423],{},[740,56420,3886],{},[740,56422,3889],{},[740,56424,3892,56425,764],{},[22,56426,2523],{},[823,56428,56429],{},[15,56430,3899],{},[835,56432,3902],{},{"title":80,"searchDepth":105,"depth":105,"links":56434},[56435,56436,56437,56438,56439,56445,56450,56451],{"id":920,"depth":105,"text":921},{"id":946,"depth":105,"text":947},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":783,"depth":105,"text":784,"children":56440},[56441,56442,56443,56444],{"id":2700,"depth":122,"text":2701},{"id":2711,"depth":122,"text":2712},{"id":2721,"depth":122,"text":2722},{"id":2728,"depth":122,"text":2729},{"id":2735,"depth":105,"text":2736,"children":56446},[56447,56448,56449],{"id":2739,"depth":122,"text":2740},{"id":2749,"depth":122,"text":2750},{"id":2758,"depth":122,"text":2759},{"id":2765,"depth":105,"text":2766},{"id":2405,"depth":105,"text":2406},{"updatedAt":3927,"coverCaption":3928,"author":868,"keywords":56453},[870,2476,2479,3117,3184],[56455],{"headline":2467,"author":56456,"datePublished":3927,"@type":880},{"name":868,"@type":879},{"title":2467,"description":3925},[56459,56460,56461,56462,56463],{"tag":2453,"color":2454},{"tag":3939,"color":3940},{"tag":3942,"color":3943},{"tag":3945,"color":3946},{"tag":2462,"color":2463},{"id":3950,"title":3951,"body":56465,"cover":5906,"coverAlt":5907,"date":5908,"description":5909,"draft":852,"extension":853,"lab":882,"locale":864,"meta":58162,"navigation":125,"path":5916,"schemaOrg":58164,"seo":58167,"series":2447,"seriesDescription":2448,"seriesOrder":178,"seriesTitle":2449,"slug":882,"stem":5921,"tags":58168,"__hash__":5929},{"type":8,"value":56466,"toc":58143},[56467,56471,56473,56477,56479,56481,56485,56487,56495,56497,56515,56517,56531,56533,56545,56549,56551,56555,56557,56567,56571,56573,56577,56579,56597,56601,56603,56605,56607,56609,56613,56617,56619,56621,56623,56625,56627,56631,56633,56635,56637,56639,56641,56643,56645,56647,57429,58127,58129,58133,58135,58139,58141],[11,56468,3957,56469],{"id":3956},[22,56470,3960],{},[15,56472,3963],{},[15,56474,3966,56475,3969],{},[22,56476,3960],{},[34,56478,921],{"id":920},[15,56480,3974],{},[15,56482,3977,56483,3980],{},[22,56484,3960],{},[34,56486,947],{"id":946},[15,56488,56489,3987,56491,3991,56493,3995],{},[22,56490,3960],{},[22,56492,3990],{},[958,56494,3994],{},[15,56496,3998],{},[737,56498,56499,56501,56503,56505,56509,56511,56513],{},[740,56500,3942],{},[740,56502,4005],{},[740,56504,4008],{},[740,56506,56507],{},[22,56508,4013],{},[740,56510,4016],{},[740,56512,4019],{},[740,56514,4022],{},[15,56516,4025],{},[737,56518,56519,56523,56527],{},[740,56520,56521,4033],{},[22,56522,4032],{},[740,56524,56525,4039],{},[22,56526,4038],{},[740,56528,56529,4045],{},[22,56530,4044],{},[15,56532,4048],{},[737,56534,56535,56537],{},[740,56536,4053],{},[740,56538,4056,56539,4059,56541,4062,56543,764],{},[22,56540,148],{},[22,56542,3960],{},[22,56544,4065],{},[15,56546,4068,56547,4073],{},[4070,56548,4072],{},[34,56550,1013],{"id":1012},[15,56552,56553,4080],{},[22,56554,3960],{},[15,56556,4083],{},[737,56558,56559,56561,56563,56565],{},[740,56560,4088],{},[740,56562,4091],{},[740,56564,4094],{},[740,56566,4097],{},[15,56568,4100,56569,4103],{},[22,56570,3960],{},[34,56572,1040],{"id":1039},[15,56574,4108,56575,4111],{},[22,56576,3960],{},[15,56578,1046],{},[737,56580,56581,56589,56593,56595],{},[740,56582,4118,56583,754,56585,754,56587,2686],{},[22,56584,4121],{},[22,56586,4124],{},[22,56588,4127],{},[740,56590,4130,56591,4134],{},[22,56592,4133],{},[740,56594,4137],{},[740,56596,4140],{},[15,56598,56599,4145],{},[22,56600,3960],{},[34,56602,784],{"id":783},[1074,56604,4151],{"id":4150},[15,56606,4154],{},[15,56608,4157],{},[1074,56610,4161,56611,4164],{"id":4160},[22,56612,148],{},[15,56614,4167,56615,4170],{},[22,56616,148],{},[15,56618,4173],{},[1074,56620,4177],{"id":4176},[15,56622,4180],{},[15,56624,4183],{},[1074,56626,4187],{"id":4186},[15,56628,4190,56629,4193],{},[22,56630,3960],{},[34,56632,2736],{"id":2735},[1074,56634,4199],{"id":4198},[15,56636,4202],{},[1074,56638,4206],{"id":4205},[15,56640,4209],{},[1074,56642,4213],{"id":4212},[15,56644,4216],{},[34,56646,2766],{"id":2765},[74,56648,56649],{"className":76,"code":4221,"filename":873,"language":79,"meta":80,"style":80},[22,56650,56651,56667,56677,56681,56697,56713,56729,56745,56749,56761,56769,56775,56791,56795,56811,56817,56831,56835,56839,56845,56857,56869,56881,56885,56889,56893,56901,56915,56929,56935,56941,56945,56953,56963,56971,56975,56979,56983,56987,56993,56999,57011,57041,57045,57049,57053,57057,57061,57065,57087,57095,57101,57117,57125,57129,57141,57145,57149,57153,57157,57161,57167,57171,57175,57183,57191,57199,57207,57215,57219,57227,57231,57239,57253,57261,57273,57281,57285,57293,57301,57305,57325,57337,57349,57361,57385,57393,57397,57413,57421],{"__ignoreMap":80},[84,56652,56653,56655,56657,56659,56661,56663,56665],{"class":86,"line":87},[84,56654,91],{"class":90},[84,56656,95],{"class":94},[84,56658,99],{"class":98},[84,56660,1161],{"class":98},[84,56662,184],{"class":90},[84,56664,1166],{"class":118},[84,56666,102],{"class":90},[84,56668,56669,56671,56673,56675],{"class":86,"line":105},[84,56670,109],{"class":108},[84,56672,4246],{"class":90},[84,56674,115],{"class":108},[84,56676,119],{"class":118},[84,56678,56679],{"class":86,"line":122},[84,56680,126],{"emptyLinePlaceholder":125},[84,56682,56683,56685,56687,56689,56691,56693,56695],{"class":86,"line":129},[84,56684,132],{"class":108},[84,56686,4261],{"class":135},[84,56688,139],{"class":108},[84,56690,142],{"class":98},[84,56692,145],{"class":90},[84,56694,148],{"class":135},[84,56696,151],{"class":90},[84,56698,56699,56701,56703,56705,56707,56709,56711],{"class":86,"line":154},[84,56700,132],{"class":108},[84,56702,1279],{"class":135},[84,56704,139],{"class":108},[84,56706,142],{"class":98},[84,56708,145],{"class":90},[84,56710,1288],{"class":118},[84,56712,151],{"class":90},[84,56714,56715,56717,56719,56721,56723,56725,56727],{"class":86,"line":159},[84,56716,132],{"class":108},[84,56718,4294],{"class":135},[84,56720,139],{"class":108},[84,56722,142],{"class":98},[84,56724,145],{"class":90},[84,56726,1288],{"class":118},[84,56728,151],{"class":90},[84,56730,56731,56733,56735,56737,56739,56741,56743],{"class":86,"line":178},[84,56732,132],{"class":108},[84,56734,4311],{"class":135},[84,56736,139],{"class":108},[84,56738,142],{"class":98},[84,56740,145],{"class":90},[84,56742,4320],{"class":135},[84,56744,151],{"class":90},[84,56746,56747],{"class":86,"line":190},[84,56748,126],{"emptyLinePlaceholder":125},[84,56750,56751,56753,56755,56757,56759],{"class":86,"line":196},[84,56752,132],{"class":108},[84,56754,4333],{"class":135},[84,56756,139],{"class":108},[84,56758,1873],{"class":98},[84,56760,1876],{"class":90},[84,56762,56763,56765,56767],{"class":86,"line":201},[84,56764,1881],{"class":90},[84,56766,4346],{"class":118},[84,56768,1887],{"class":90},[84,56770,56771,56773],{"class":86,"line":217},[84,56772,4353],{"class":98},[84,56774,1307],{"class":90},[84,56776,56777,56779,56781,56783,56785,56787,56789],{"class":86,"line":227},[84,56778,3021],{"class":108},[84,56780,4362],{"class":135},[84,56782,139],{"class":108},[84,56784,142],{"class":98},[84,56786,145],{"class":90},[84,56788,148],{"class":135},[84,56790,151],{"class":90},[84,56792,56793],{"class":86,"line":232},[84,56794,126],{"emptyLinePlaceholder":125},[84,56796,56797,56799,56801,56803,56805,56807,56809],{"class":86,"line":237},[84,56798,3021],{"class":108},[84,56800,4383],{"class":135},[84,56802,139],{"class":108},[84,56804,2989],{"class":98},[84,56806,2992],{"class":90},[84,56808,172],{"class":108},[84,56810,175],{"class":90},[84,56812,56813,56815],{"class":86,"line":253},[84,56814,1987],{"class":108},[84,56816,4400],{"class":90},[84,56818,56819,56821,56823,56825,56827,56829],{"class":86,"line":266},[84,56820,1998],{"class":108},[84,56822,1355],{"class":108},[84,56824,1358],{"class":98},[84,56826,145],{"class":90},[84,56828,4413],{"class":118},[84,56830,151],{"class":90},[84,56832,56833],{"class":86,"line":271},[84,56834,2013],{"class":90},[84,56836,56837],{"class":86,"line":281},[84,56838,126],{"emptyLinePlaceholder":125},[84,56840,56841,56843],{"class":86,"line":286},[84,56842,3539],{"class":108},[84,56844,4430],{"class":90},[84,56846,56847,56849,56851,56853,56855],{"class":86,"line":296},[84,56848,4435],{"class":90},[84,56850,4438],{"class":118},[84,56852,4441],{"class":90},[84,56854,4444],{"class":135},[84,56856,2921],{"class":90},[84,56858,56859,56861,56863,56865,56867],{"class":86,"line":315},[84,56860,4435],{"class":90},[84,56862,4453],{"class":118},[84,56864,4441],{"class":90},[84,56866,4458],{"class":135},[84,56868,2921],{"class":90},[84,56870,56871,56873,56875,56877,56879],{"class":86,"line":321},[84,56872,4435],{"class":90},[84,56874,4467],{"class":118},[84,56876,4441],{"class":90},[84,56878,2952],{"class":135},[84,56880,2968],{"class":90},[84,56882,56883],{"class":86,"line":331},[84,56884,3510],{"class":90},[84,56886,56887],{"class":86,"line":336},[84,56888,3698],{"class":90},[84,56890,56891],{"class":86,"line":354},[84,56892,126],{"emptyLinePlaceholder":125},[84,56894,56895,56897,56899],{"class":86,"line":360},[84,56896,1903],{"class":108},[84,56898,169],{"class":90},[84,56900,4494],{"class":108},[84,56902,56903,56905,56907,56909,56911,56913],{"class":86,"line":369},[84,56904,4499],{"class":98},[84,56906,145],{"class":90},[84,56908,4504],{"class":118},[84,56910,4507],{"class":90},[84,56912,4510],{"class":118},[84,56914,4513],{"class":90},[84,56916,56917,56919,56921,56923,56925,56927],{"class":86,"line":1453},[84,56918,4518],{"class":98},[84,56920,145],{"class":90},[84,56922,4523],{"class":118},[84,56924,754],{"class":90},[84,56926,4528],{"class":118},[84,56928,4531],{"class":90},[84,56930,56931,56933],{"class":86,"line":1462},[84,56932,4518],{"class":98},[84,56934,4538],{"class":90},[84,56936,56937,56939],{"class":86,"line":1484},[84,56938,4543],{"class":118},[84,56940,1887],{"class":90},[84,56942,56943],{"class":86,"line":1489},[84,56944,4550],{"class":90},[84,56946,56947,56949,56951],{"class":86,"line":1495},[84,56948,4555],{"class":90},[84,56950,4558],{"class":118},[84,56952,1887],{"class":90},[84,56954,56955,56957,56959,56961],{"class":86,"line":1500},[84,56956,4565],{"class":98},[84,56958,4568],{"class":90},[84,56960,172],{"class":108},[84,56962,175],{"class":90},[84,56964,56965,56967,56969],{"class":86,"line":1516},[84,56966,4577],{"class":90},[84,56968,184],{"class":108},[84,56970,187],{"class":135},[84,56972,56973],{"class":86,"line":1533},[84,56974,4586],{"class":90},[84,56976,56977],{"class":86,"line":1538},[84,56978,4591],{"class":90},[84,56980,56981],{"class":86,"line":1545},[84,56982,4596],{"class":118},[84,56984,56985],{"class":86,"line":1554},[84,56986,4601],{"class":90},[84,56988,56989,56991],{"class":86,"line":1563},[84,56990,4518],{"class":98},[84,56992,4538],{"class":90},[84,56994,56995,56997],{"class":86,"line":1570},[84,56996,4612],{"class":118},[84,56998,1887],{"class":90},[84,57000,57001,57003,57005,57007,57009],{"class":86,"line":1588},[84,57002,4619],{"class":90},[84,57004,4622],{"class":98},[84,57006,145],{"class":90},[84,57008,4627],{"class":429},[84,57010,4630],{"class":108},[84,57012,57013,57015,57017,57019,57021,57023,57025,57027,57029,57031,57033,57035,57037,57039],{"class":86,"line":1593},[84,57014,4635],{"class":98},[84,57016,145],{"class":90},[84,57018,4640],{"class":118},[84,57020,4643],{"class":90},[84,57022,4646],{"class":118},[84,57024,4627],{"class":90},[84,57026,764],{"class":118},[84,57028,4653],{"class":90},[84,57030,4656],{"class":118},[84,57032,4627],{"class":90},[84,57034,764],{"class":118},[84,57036,4663],{"class":90},[84,57038,4666],{"class":118},[84,57040,151],{"class":90},[84,57042,57043],{"class":86,"line":1598},[84,57044,4673],{"class":90},[84,57046,57047],{"class":86,"line":1607},[84,57048,4678],{"class":90},[84,57050,57051],{"class":86,"line":1612},[84,57052,4683],{"class":90},[84,57054,57055],{"class":86,"line":1621},[84,57056,485],{"class":90},[84,57058,57059],{"class":86,"line":1639},[84,57060,1492],{"class":90},[84,57062,57063],{"class":86,"line":1661},[84,57064,126],{"emptyLinePlaceholder":125},[84,57066,57067,57069,57071,57073,57075,57077,57079,57081,57083,57085],{"class":86,"line":1666},[84,57068,4700],{"class":98},[84,57070,3120],{"class":90},[84,57072,4127],{"class":429},[84,57074,754],{"class":90},[84,57076,4038],{"class":429},[84,57078,754],{"class":90},[84,57080,4044],{"class":429},[84,57082,3126],{"class":90},[84,57084,172],{"class":108},[84,57086,175],{"class":90},[84,57088,57089,57091,57093],{"class":86,"line":1688},[84,57090,4723],{"class":90},[84,57092,184],{"class":108},[84,57094,187],{"class":135},[84,57096,57097,57099],{"class":86,"line":1703},[84,57098,4732],{"class":90},[84,57100,1459],{"class":108},[84,57102,57103,57105,57107,57109,57111,57113,57115],{"class":86,"line":1717},[84,57104,4739],{"class":90},[84,57106,1468],{"class":108},[84,57108,1358],{"class":98},[84,57110,1473],{"class":108},[84,57112,1476],{"class":90},[84,57114,1203],{"class":108},[84,57116,4752],{"class":118},[84,57118,57119,57121,57123],{"class":86,"line":1731},[84,57120,4757],{"class":90},[84,57122,184],{"class":108},[84,57124,4762],{"class":90},[84,57126,57127],{"class":86,"line":1741},[84,57128,126],{"emptyLinePlaceholder":125},[84,57130,57131,57133,57135,57137,57139],{"class":86,"line":1746},[84,57132,3135],{"class":90},[84,57134,4127],{"class":98},[84,57136,145],{"class":90},[84,57138,4777],{"class":118},[84,57140,3146],{"class":90},[84,57142,57143],{"class":86,"line":1763},[84,57144,4784],{"class":90},[84,57146,57147],{"class":86,"line":1772},[84,57148,4789],{"class":90},[84,57150,57151],{"class":86,"line":2283},[84,57152,4794],{"class":90},[84,57154,57155],{"class":86,"line":2288},[84,57156,3104],{"class":90},[84,57158,57159],{"class":86,"line":2307},[84,57160,126],{"emptyLinePlaceholder":125},[84,57162,57163,57165],{"class":86,"line":2320},[84,57164,557],{"class":108},[84,57166,224],{"class":135},[84,57168,57169],{"class":86,"line":2333},[84,57170,1492],{"class":90},[84,57172,57173],{"class":86,"line":2346},[84,57174,126],{"emptyLinePlaceholder":125},[84,57176,57177,57179,57181],{"class":86,"line":2355},[84,57178,3246],{"class":108},[84,57180,4823],{"class":98},[84,57182,1307],{"class":90},[84,57184,57185,57187,57189],{"class":86,"line":2360},[84,57186,4723],{"class":90},[84,57188,184],{"class":108},[84,57190,224],{"class":135},[84,57192,57193,57195,57197],{"class":86,"line":2375},[84,57194,4732],{"class":90},[84,57196,184],{"class":108},[84,57198,4842],{"class":118},[84,57200,57201,57203,57205],{"class":86,"line":2384},[84,57202,4757],{"class":90},[84,57204,184],{"class":108},[84,57206,4842],{"class":118},[84,57208,57209,57211,57213],{"class":86,"line":4853},[84,57210,4856],{"class":90},[84,57212,4859],{"class":108},[84,57214,4862],{"class":135},[84,57216,57217],{"class":86,"line":4865},[84,57218,193],{"class":90},[84,57220,57221,57223,57225],{"class":86,"line":4870},[84,57222,274],{"class":90},[84,57224,95],{"class":94},[84,57226,102],{"class":90},[84,57228,57229],{"class":86,"line":4879},[84,57230,126],{"emptyLinePlaceholder":125},[84,57232,57233,57235,57237],{"class":86,"line":4884},[84,57234,91],{"class":90},[84,57236,291],{"class":94},[84,57238,102],{"class":90},[84,57240,57241,57243,57245,57247,57249,57251],{"class":86,"line":4893},[84,57242,299],{"class":90},[84,57244,4898],{"class":94},[84,57246,1629],{"class":98},[84,57248,184],{"class":90},[84,57250,4905],{"class":118},[84,57252,102],{"class":90},[84,57254,57255,57257,57259],{"class":86,"line":4910},[84,57256,1642],{"class":90},[84,57258,4915],{"class":94},[84,57260,102],{"class":90},[84,57262,57263,57265,57267,57269,57271],{"class":86,"line":4920},[84,57264,1691],{"class":90},[84,57266,34],{"class":94},[84,57268,4927],{"class":90},[84,57270,34],{"class":94},[84,57272,102],{"class":90},[84,57274,57275,57277,57279],{"class":86,"line":4934},[84,57276,1691],{"class":90},[84,57278,15],{"class":94},[84,57280,102],{"class":90},[84,57282,57283],{"class":86,"line":4943},[84,57284,4946],{"class":90},[84,57286,57287,57289,57291],{"class":86,"line":4949},[84,57288,4952],{"class":90},[84,57290,15],{"class":94},[84,57292,102],{"class":90},[84,57294,57295,57297,57299],{"class":86,"line":4959},[84,57296,1734],{"class":90},[84,57298,4915],{"class":94},[84,57300,102],{"class":90},[84,57302,57303],{"class":86,"line":4968},[84,57304,126],{"emptyLinePlaceholder":125},[84,57306,57307,57309,57311,57313,57315,57317,57319,57321,57323],{"class":86,"line":4973},[84,57308,1642],{"class":90},[84,57310,4978],{"class":94},[84,57312,344],{"class":98},[84,57314,184],{"class":90},[84,57316,4985],{"class":118},[84,57318,1629],{"class":98},[84,57320,184],{"class":90},[84,57322,4992],{"class":118},[84,57324,102],{"class":90},[84,57326,57327,57329,57331,57333,57335],{"class":86,"line":4997},[84,57328,1691],{"class":90},[84,57330,958],{"class":94},[84,57332,5004],{"class":90},[84,57334,958],{"class":94},[84,57336,102],{"class":90},[84,57338,57339,57341,57343,57345,57347],{"class":86,"line":5011},[84,57340,1691],{"class":90},[84,57342,15],{"class":94},[84,57344,1654],{"class":90},[84,57346,15],{"class":94},[84,57348,102],{"class":90},[84,57350,57351,57353,57355,57357,57359],{"class":86,"line":5024},[84,57352,1691],{"class":90},[84,57354,5029],{"class":94},[84,57356,5032],{"class":90},[84,57358,5029],{"class":94},[84,57360,102],{"class":90},[84,57362,57363,57365,57367,57369,57371,57373,57375,57377,57379,57381,57383],{"class":86,"line":5039},[84,57364,1691],{"class":90},[84,57366,302],{"class":94},[84,57368,5046],{"class":98},[84,57370,184],{"class":90},[84,57372,5051],{"class":118},[84,57374,305],{"class":98},[84,57376,184],{"class":90},[84,57378,5058],{"class":118},[84,57380,5061],{"class":90},[84,57382,302],{"class":94},[84,57384,102],{"class":90},[84,57386,57387,57389,57391],{"class":86,"line":5068},[84,57388,1734],{"class":90},[84,57390,4978],{"class":94},[84,57392,102],{"class":90},[84,57394,57395],{"class":86,"line":5077},[84,57396,126],{"emptyLinePlaceholder":125},[84,57398,57399,57401,57403,57405,57407,57409,57411],{"class":86,"line":5082},[84,57400,1642],{"class":90},[84,57402,5087],{"class":94},[84,57404,1753],{"class":98},[84,57406,5092],{"class":98},[84,57408,184],{"class":90},[84,57410,5097],{"class":118},[84,57412,5100],{"class":90},[84,57414,57415,57417,57419],{"class":86,"line":5103},[84,57416,324],{"class":90},[84,57418,4898],{"class":94},[84,57420,102],{"class":90},[84,57422,57423,57425,57427],{"class":86,"line":5112},[84,57424,274],{"class":90},[84,57426,291],{"class":94},[84,57428,102],{"class":90},[74,57430,57431],{"className":76,"code":5121,"filename":1782,"language":79,"meta":80,"style":80},[22,57432,57433,57447,57457,57465,57471,57477,57483,57487,57491,57495,57501,57511,57525,57529,57533,57539,57551,57563,57575,57579,57583,57587,57593,57597,57601,57605,57609,57613,57617,57621,57625,57629,57633,57637,57641,57645,57649,57653,57657,57661,57665,57669,57673,57677,57685,57693,57697,57701,57705,57711,57717,57725,57733,57741,57747,57751,57755,57773,57783,57791,57807,57817,57821,57833,57837,57841,57845,57849,57853,57859,57863,57867,57873,57883,57893,57903,57913,57917,57921,57925,57933,57937,57945,57959,57967,57979,57991,57999,58003,58023,58035,58047,58059,58083,58091,58095,58111,58119],{"__ignoreMap":80},[84,57434,57435,57437,57439,57441,57443,57445],{"class":86,"line":87},[84,57436,91],{"class":90},[84,57438,95],{"class":94},[84,57440,1161],{"class":98},[84,57442,184],{"class":90},[84,57444,1166],{"class":118},[84,57446,102],{"class":90},[84,57448,57449,57451,57453,57455],{"class":86,"line":105},[84,57450,132],{"class":108},[84,57452,4333],{"class":135},[84,57454,139],{"class":108},[84,57456,175],{"class":90},[84,57458,57459,57461,57463],{"class":86,"line":122},[84,57460,1881],{"class":90},[84,57462,4346],{"class":118},[84,57464,1887],{"class":90},[84,57466,57467,57469],{"class":86,"line":129},[84,57468,1896],{"class":98},[84,57470,1307],{"class":90},[84,57472,57473,57475],{"class":86,"line":154},[84,57474,1903],{"class":108},[84,57476,175],{"class":90},[84,57478,57479,57481],{"class":86,"line":159},[84,57480,5172],{"class":90},[84,57482,2833],{"class":135},[84,57484,57485],{"class":86,"line":178},[84,57486,1936],{"class":90},[84,57488,57489],{"class":86,"line":190},[84,57490,1941],{"class":90},[84,57492,57493],{"class":86,"line":196},[84,57494,3527],{"class":90},[84,57496,57497,57499],{"class":86,"line":201},[84,57498,5191],{"class":98},[84,57500,1307],{"class":90},[84,57502,57503,57505,57507,57509],{"class":86,"line":217},[84,57504,1987],{"class":108},[84,57506,1341],{"class":90},[84,57508,2151],{"class":135},[84,57510,5204],{"class":90},[84,57512,57513,57515,57517,57519,57521,57523],{"class":86,"line":227},[84,57514,1998],{"class":108},[84,57516,1355],{"class":108},[84,57518,1358],{"class":98},[84,57520,145],{"class":90},[84,57522,4413],{"class":118},[84,57524,151],{"class":90},[84,57526,57527],{"class":86,"line":232},[84,57528,2013],{"class":90},[84,57530,57531],{"class":86,"line":237},[84,57532,126],{"emptyLinePlaceholder":125},[84,57534,57535,57537],{"class":86,"line":253},[84,57536,3539],{"class":108},[84,57538,4430],{"class":90},[84,57540,57541,57543,57545,57547,57549],{"class":86,"line":266},[84,57542,4435],{"class":90},[84,57544,4438],{"class":118},[84,57546,4441],{"class":90},[84,57548,4444],{"class":135},[84,57550,2921],{"class":90},[84,57552,57553,57555,57557,57559,57561],{"class":86,"line":271},[84,57554,4435],{"class":90},[84,57556,4453],{"class":118},[84,57558,4441],{"class":90},[84,57560,4458],{"class":135},[84,57562,2921],{"class":90},[84,57564,57565,57567,57569,57571,57573],{"class":86,"line":281},[84,57566,4435],{"class":90},[84,57568,4467],{"class":118},[84,57570,4441],{"class":90},[84,57572,2952],{"class":135},[84,57574,2968],{"class":90},[84,57576,57577],{"class":86,"line":286},[84,57578,3510],{"class":90},[84,57580,57581],{"class":86,"line":296},[84,57582,1936],{"class":90},[84,57584,57585],{"class":86,"line":315},[84,57586,1941],{"class":90},[84,57588,57589,57591],{"class":86,"line":321},[84,57590,5285],{"class":90},[84,57592,5288],{"class":118},[84,57594,57595],{"class":86,"line":331},[84,57596,5293],{"class":118},[84,57598,57599],{"class":86,"line":336},[84,57600,5298],{"class":118},[84,57602,57603],{"class":86,"line":354},[84,57604,5303],{"class":118},[84,57606,57607],{"class":86,"line":360},[84,57608,5308],{"class":118},[84,57610,57611],{"class":86,"line":369},[84,57612,5313],{"class":118},[84,57614,57615],{"class":86,"line":1453},[84,57616,5318],{"class":118},[84,57618,57619],{"class":86,"line":1462},[84,57620,5323],{"class":118},[84,57622,57623],{"class":86,"line":1484},[84,57624,5328],{"class":118},[84,57626,57627],{"class":86,"line":1489},[84,57628,126],{"emptyLinePlaceholder":125},[84,57630,57631],{"class":86,"line":1495},[84,57632,5337],{"class":118},[84,57634,57635],{"class":86,"line":1500},[84,57636,5342],{"class":118},[84,57638,57639],{"class":86,"line":1516},[84,57640,5347],{"class":118},[84,57642,57643],{"class":86,"line":1533},[84,57644,5352],{"class":118},[84,57646,57647],{"class":86,"line":1538},[84,57648,5357],{"class":118},[84,57650,57651],{"class":86,"line":1545},[84,57652,5362],{"class":118},[84,57654,57655],{"class":86,"line":1554},[84,57656,5367],{"class":118},[84,57658,57659],{"class":86,"line":1563},[84,57660,5372],{"class":118},[84,57662,57663],{"class":86,"line":1570},[84,57664,5377],{"class":118},[84,57666,57667],{"class":86,"line":1588},[84,57668,5382],{"class":118},[84,57670,57671],{"class":86,"line":1593},[84,57672,193],{"class":90},[84,57674,57675],{"class":86,"line":1598},[84,57676,126],{"emptyLinePlaceholder":125},[84,57678,57679,57681,57683],{"class":86,"line":1607},[84,57680,418],{"class":108},[84,57682,1870],{"class":108},[84,57684,175],{"class":90},[84,57686,57687,57689,57691],{"class":86,"line":1612},[84,57688,1881],{"class":90},[84,57690,5405],{"class":118},[84,57692,1887],{"class":90},[84,57694,57695],{"class":86,"line":1621},[84,57696,5412],{"class":90},[84,57698,57699],{"class":86,"line":1639},[84,57700,5417],{"class":90},[84,57702,57703],{"class":86,"line":1661},[84,57704,1941],{"class":90},[84,57706,57707,57709],{"class":86,"line":1666},[84,57708,1896],{"class":98},[84,57710,1307],{"class":90},[84,57712,57713,57715],{"class":86,"line":1688},[84,57714,1903],{"class":108},[84,57716,175],{"class":90},[84,57718,57719,57721,57723],{"class":86,"line":1703},[84,57720,5438],{"class":90},[84,57722,148],{"class":135},[84,57724,1887],{"class":90},[84,57726,57727,57729,57731],{"class":86,"line":1717},[84,57728,1928],{"class":90},[84,57730,1288],{"class":118},[84,57732,1887],{"class":90},[84,57734,57735,57737,57739],{"class":86,"line":1731},[84,57736,5455],{"class":90},[84,57738,1288],{"class":118},[84,57740,1887],{"class":90},[84,57742,57743,57745],{"class":86,"line":1741},[84,57744,5464],{"class":90},[84,57746,5467],{"class":135},[84,57748,57749],{"class":86,"line":1746},[84,57750,1936],{"class":90},[84,57752,57753],{"class":86,"line":1763},[84,57754,1941],{"class":90},[84,57756,57757,57759,57761,57763,57765,57767,57769,57771],{"class":86,"line":1772},[84,57758,5480],{"class":98},[84,57760,145],{"class":90},[84,57762,4127],{"class":429},[84,57764,754],{"class":90},[84,57766,4038],{"class":429},[84,57768,754],{"class":90},[84,57770,4044],{"class":429},[84,57772,438],{"class":90},[84,57774,57775,57777,57779,57781],{"class":86,"line":2283},[84,57776,5499],{"class":135},[84,57778,5502],{"class":90},[84,57780,184],{"class":108},[84,57782,187],{"class":135},[84,57784,57785,57787,57789],{"class":86,"line":2288},[84,57786,5499],{"class":135},[84,57788,2101],{"class":90},[84,57790,1459],{"class":108},[84,57792,57793,57795,57797,57799,57801,57803,57805],{"class":86,"line":2307},[84,57794,1465],{"class":90},[84,57796,1468],{"class":108},[84,57798,1358],{"class":98},[84,57800,1473],{"class":108},[84,57802,1476],{"class":90},[84,57804,1203],{"class":108},[84,57806,4752],{"class":118},[84,57808,57809,57811,57813,57815],{"class":86,"line":2320},[84,57810,5499],{"class":135},[84,57812,5537],{"class":90},[84,57814,184],{"class":108},[84,57816,4762],{"class":90},[84,57818,57819],{"class":86,"line":2333},[84,57820,126],{"emptyLinePlaceholder":125},[84,57822,57823,57825,57827,57829,57831],{"class":86,"line":2346},[84,57824,3666],{"class":90},[84,57826,4127],{"class":98},[84,57828,145],{"class":90},[84,57830,4777],{"class":118},[84,57832,3146],{"class":90},[84,57834,57835],{"class":86,"line":2355},[84,57836,5562],{"class":90},[84,57838,57839],{"class":86,"line":2360},[84,57840,5567],{"class":90},[84,57842,57843],{"class":86,"line":2375},[84,57844,5572],{"class":90},[84,57846,57847],{"class":86,"line":2384},[84,57848,3698],{"class":90},[84,57850,57851],{"class":86,"line":4853},[84,57852,126],{"emptyLinePlaceholder":125},[84,57854,57855,57857],{"class":86,"line":4865},[84,57856,1903],{"class":108},[84,57858,224],{"class":135},[84,57860,57861],{"class":86,"line":4870},[84,57862,1941],{"class":90},[84,57864,57865],{"class":86,"line":4879},[84,57866,1950],{"class":90},[84,57868,57869,57871],{"class":86,"line":4884},[84,57870,5599],{"class":98},[84,57872,1307],{"class":90},[84,57874,57875,57877,57879,57881],{"class":86,"line":4893},[84,57876,2022],{"class":135},[84,57878,5502],{"class":90},[84,57880,184],{"class":108},[84,57882,224],{"class":135},[84,57884,57885,57887,57889,57891],{"class":86,"line":4910},[84,57886,2022],{"class":135},[84,57888,2101],{"class":90},[84,57890,184],{"class":108},[84,57892,4842],{"class":118},[84,57894,57895,57897,57899,57901],{"class":86,"line":4920},[84,57896,2022],{"class":135},[84,57898,5537],{"class":90},[84,57900,184],{"class":108},[84,57902,4842],{"class":118},[84,57904,57905,57907,57909,57911],{"class":86,"line":4934},[84,57906,2022],{"class":135},[84,57908,5638],{"class":90},[84,57910,4859],{"class":108},[84,57912,4862],{"class":135},[84,57914,57915],{"class":86,"line":4943},[84,57916,1936],{"class":90},[84,57918,57919],{"class":86,"line":4949},[84,57920,485],{"class":90},[84,57922,57923],{"class":86,"line":4959},[84,57924,193],{"class":90},[84,57926,57927,57929,57931],{"class":86,"line":4968},[84,57928,274],{"class":90},[84,57930,95],{"class":94},[84,57932,102],{"class":90},[84,57934,57935],{"class":86,"line":4973},[84,57936,126],{"emptyLinePlaceholder":125},[84,57938,57939,57941,57943],{"class":86,"line":4997},[84,57940,91],{"class":90},[84,57942,291],{"class":94},[84,57944,102],{"class":90},[84,57946,57947,57949,57951,57953,57955,57957],{"class":86,"line":5011},[84,57948,299],{"class":90},[84,57950,4898],{"class":94},[84,57952,1629],{"class":98},[84,57954,184],{"class":90},[84,57956,4905],{"class":118},[84,57958,102],{"class":90},[84,57960,57961,57963,57965],{"class":86,"line":5024},[84,57962,1642],{"class":90},[84,57964,4915],{"class":94},[84,57966,102],{"class":90},[84,57968,57969,57971,57973,57975,57977],{"class":86,"line":5039},[84,57970,1691],{"class":90},[84,57972,34],{"class":94},[84,57974,4927],{"class":90},[84,57976,34],{"class":94},[84,57978,102],{"class":90},[84,57980,57981,57983,57985,57987,57989],{"class":86,"line":5068},[84,57982,1691],{"class":90},[84,57984,15],{"class":94},[84,57986,5717],{"class":90},[84,57988,15],{"class":94},[84,57990,102],{"class":90},[84,57992,57993,57995,57997],{"class":86,"line":5077},[84,57994,1734],{"class":90},[84,57996,4915],{"class":94},[84,57998,102],{"class":90},[84,58000,58001],{"class":86,"line":5082},[84,58002,126],{"emptyLinePlaceholder":125},[84,58004,58005,58007,58009,58011,58013,58015,58017,58019,58021],{"class":86,"line":5103},[84,58006,1642],{"class":90},[84,58008,4978],{"class":94},[84,58010,344],{"class":98},[84,58012,184],{"class":90},[84,58014,4985],{"class":118},[84,58016,1629],{"class":98},[84,58018,184],{"class":90},[84,58020,4992],{"class":118},[84,58022,102],{"class":90},[84,58024,58025,58027,58029,58031,58033],{"class":86,"line":5112},[84,58026,1691],{"class":90},[84,58028,958],{"class":94},[84,58030,5004],{"class":90},[84,58032,958],{"class":94},[84,58034,102],{"class":90},[84,58036,58037,58039,58041,58043,58045],{"class":86,"line":5768},[84,58038,1691],{"class":90},[84,58040,15],{"class":94},[84,58042,1654],{"class":90},[84,58044,15],{"class":94},[84,58046,102],{"class":90},[84,58048,58049,58051,58053,58055,58057],{"class":86,"line":5781},[84,58050,1691],{"class":90},[84,58052,5029],{"class":94},[84,58054,5032],{"class":90},[84,58056,5029],{"class":94},[84,58058,102],{"class":90},[84,58060,58061,58063,58065,58067,58069,58071,58073,58075,58077,58079,58081],{"class":86,"line":5794},[84,58062,1691],{"class":90},[84,58064,302],{"class":94},[84,58066,5046],{"class":98},[84,58068,184],{"class":90},[84,58070,5051],{"class":118},[84,58072,305],{"class":98},[84,58074,184],{"class":90},[84,58076,5058],{"class":118},[84,58078,5061],{"class":90},[84,58080,302],{"class":94},[84,58082,102],{"class":90},[84,58084,58085,58087,58089],{"class":86,"line":5819},[84,58086,1734],{"class":90},[84,58088,4978],{"class":94},[84,58090,102],{"class":90},[84,58092,58093],{"class":86,"line":5828},[84,58094,126],{"emptyLinePlaceholder":125},[84,58096,58097,58099,58101,58103,58105,58107,58109],{"class":86,"line":5833},[84,58098,1642],{"class":90},[84,58100,5087],{"class":94},[84,58102,1753],{"class":98},[84,58104,5092],{"class":98},[84,58106,184],{"class":90},[84,58108,5097],{"class":118},[84,58110,5100],{"class":90},[84,58112,58113,58115,58117],{"class":86,"line":5850},[84,58114,324],{"class":90},[84,58116,4898],{"class":94},[84,58118,102],{"class":90},[84,58120,58121,58123,58125],{"class":86,"line":5859},[84,58122,274],{"class":90},[84,58124,291],{"class":94},[84,58126,102],{"class":90},[15,58128,5868],{},[823,58130,58131],{},[15,58132,5873],{},[34,58134,2406],{"id":2405},[15,58136,58137,5880],{},[22,58138,3960],{},[15,58140,5883],{},[835,58142,3902],{},{"title":80,"searchDepth":105,"depth":105,"links":58144},[58145,58146,58147,58148,58149,58155,58160,58161],{"id":920,"depth":105,"text":921},{"id":946,"depth":105,"text":947},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":783,"depth":105,"text":784,"children":58150},[58151,58152,58153,58154],{"id":4150,"depth":122,"text":4151},{"id":4160,"depth":122,"text":5896},{"id":4176,"depth":122,"text":4177},{"id":4186,"depth":122,"text":4187},{"id":2735,"depth":105,"text":2736,"children":58156},[58157,58158,58159],{"id":4198,"depth":122,"text":4199},{"id":4205,"depth":122,"text":4206},{"id":4212,"depth":122,"text":4213},{"id":2765,"depth":105,"text":2766},{"id":2405,"depth":105,"text":2406},{"updatedAt":5911,"coverCaption":5912,"author":868,"keywords":58163},[870,3960,4700,5914,5915],[58165],{"headline":3951,"author":58166,"datePublished":5911,"@type":880},{"name":868,"@type":879},{"title":3951,"description":5909},[58169,58170,58171,58172],{"tag":2453,"color":2454},{"tag":5925,"color":5926},{"tag":888,"color":889},{"tag":2462,"color":2463},{"id":5931,"title":5932,"body":58174,"cover":8241,"coverAlt":8242,"date":8243,"description":8244,"draft":852,"extension":853,"lab":882,"locale":864,"meta":60241,"navigation":125,"path":8251,"schemaOrg":60243,"seo":60246,"series":2447,"seriesDescription":2448,"seriesOrder":159,"seriesTitle":2449,"slug":882,"stem":8256,"tags":60247,"__hash__":8263},{"type":8,"value":58175,"toc":60222},[58176,58178,58186,58190,58192,58198,58200,58204,58206,58214,58216,58224,58226,58240,58242,58252,58254,58272,58274,58280,58282,58292,58294,58304,58306,58310,58312,58322,58324,58340,58342,58406,58408,58410,58414,58418,58422,58424,58428,58434,58438,58442,58446,58448,58452,58454,58456,58458,58464,58466,58470,58472,58478,59374,60184,60200,60202,60220],[34,58177,5938],{"id":5937},[11,58179,5942,58180,1341,58182,754,58184,909],{"id":5941},[22,58181,5945],{},[22,58183,5948],{},[22,58185,5951],{},[15,58187,5954,58188,5957],{},[22,58189,5945],{},[15,58191,5960],{},[15,58193,5963,58194,2488,58196,5968],{},[22,58195,5948],{},[22,58197,5951],{},[34,58199,947],{"id":946},[15,58201,58202,5975],{},[22,58203,5945],{},[15,58205,5978],{},[737,58207,58208,58210,58212],{},[740,58209,5983],{},[740,58211,5986],{},[740,58213,5989],{},[15,58215,5992],{},[737,58217,58218,58220,58222],{},[740,58219,5997],{},[740,58221,6000],{},[740,58223,6003],{},[15,58225,6006],{},[737,58227,58228,58234],{},[740,58229,58230,6014,58232],{},[22,58231,6013],{},[22,58233,5948],{},[740,58235,58236,6014,58238],{},[22,58237,6021],{},[22,58239,5951],{},[15,58241,6026],{},[737,58243,58244,58248],{},[740,58245,58246,6033],{},[22,58247,5948],{},[740,58249,58250,6038],{},[22,58251,5951],{},[15,58253,6041],{},[737,58255,58256,58260,58264,58268],{},[740,58257,58258,6048],{},[22,58259,1085],{},[740,58261,58262,6053],{},[22,58263,5948],{},[740,58265,58266,6058],{},[22,58267,5951],{},[740,58269,58270,6064],{},[22,58271,6063],{},[34,58273,1013],{"id":1012},[15,58275,58276,2488,58278,6073],{},[22,58277,5948],{},[22,58279,5951],{},[15,58281,4083],{},[737,58283,58284,58286,58288,58290],{},[740,58285,6080],{},[740,58287,6083],{},[740,58289,6086],{},[740,58291,6089],{},[15,58293,6092],{},[737,58295,58296,58300],{},[740,58297,6097,58298,764],{},[22,58299,5948],{},[740,58301,6102,58302,764],{},[22,58303,5951],{},[34,58305,1040],{"id":1039},[15,58307,6109,58308,6112],{},[22,58309,5945],{},[15,58311,6115],{},[737,58313,58314,58316,58318,58320],{},[740,58315,6120],{},[740,58317,6123],{},[740,58319,6126],{},[740,58321,6129],{},[15,58323,6132],{},[737,58325,58326,58330,58336],{},[740,58327,6137,58328,6140],{},[22,58329,61],{},[740,58331,6143,58332,50,58334,6148],{},[22,58333,1085],{},[22,58335,4013],{},[740,58337,6151,58338,6154],{},[22,58339,5945],{},[34,58341,6158],{"id":6157},[6160,58343,58344,58356],{},[6163,58345,58346],{},[6166,58347,58348,58350,58352,58354],{},[6169,58349,6171],{},[6169,58351,6174],{},[6169,58353,6177],{},[6169,58355,6180],{},[6182,58357,58358,58370,58382,58394],{},[6166,58359,58360,58364,58366,58368],{},[6187,58361,58362],{},[22,58363,1085],{},[6187,58365,6193],{},[6187,58367,6196],{},[6187,58369,6199],{},[6166,58371,58372,58376,58378,58380],{},[6187,58373,58374],{},[22,58375,5948],{},[6187,58377,6208],{},[6187,58379,6211],{},[6187,58381,6214],{},[6166,58383,58384,58388,58390,58392],{},[6187,58385,58386],{},[22,58387,5951],{},[6187,58389,6223],{},[6187,58391,6226],{},[6187,58393,6229],{},[6166,58395,58396,58400,58402,58404],{},[6187,58397,58398],{},[22,58399,6063],{},[6187,58401,6238],{},[6187,58403,6241],{},[6187,58405,6244],{},[15,58407,6247],{},[34,58409,784],{"id":783},[1074,58411,6253,58412],{"id":6252},[22,58413,1085],{},[15,58415,6258,58416,6261],{},[22,58417,1085],{},[15,58419,6264,58420,764],{},[22,58421,5948],{},[1074,58423,6270],{"id":6269},[15,58425,6273,58426,6277],{},[22,58427,6276],{},[15,58429,6280,58430,6283,58432,6286],{},[22,58431,5951],{},[22,58433,5948],{},[1074,58435,6290,58436,6293],{"id":6289},[22,58437,6063],{},[15,58439,6296,58440,6299],{},[22,58441,5945],{},[15,58443,6302,58444,6305],{},[22,58445,6063],{},[1074,58447,6309],{"id":6308},[15,58449,58450,6314],{},[22,58451,5945],{},[15,58453,6317],{},[34,58455,2736],{"id":2735},[1074,58457,6323],{"id":6322},[15,58459,6326,58460,6329,58462,6332],{},[22,58461,5945],{},[22,58463,5948],{},[1074,58465,6336],{"id":6335},[15,58467,6339,58468,6342],{},[22,58469,5951],{},[1074,58471,6346],{"id":6345},[15,58473,6349,58474,6352,58476,6355],{},[22,58475,1085],{},[22,58477,5948],{},[74,58479,58480],{"className":76,"code":6358,"filename":873,"language":79,"meta":80,"style":80},[22,58481,58482,58498,58508,58512,58522,58530,58538,58546,58550,58554,58570,58598,58614,58638,58668,58684,58688,58704,58716,58734,58738,58742,58754,58770,58774,58778,58784,58788,58792,58802,58810,58814,58832,58862,58866,58874,58894,58902,58906,58910,58918,58932,58936,58950,58958,58966,58970,58974,58982,58996,59000,59006,59014,59018,59022,59032,59040,59044,59048,59062,59078,59086,59092,59096,59100,59110,59118,59124,59128,59136,59140,59148,59162,59170,59182,59194,59212,59220,59224,59238,59256,59274,59292,59300,59304,59312,59318,59326,59334,59338,59342,59350,59358,59366],{"__ignoreMap":80},[84,58483,58484,58486,58488,58490,58492,58494,58496],{"class":86,"line":87},[84,58485,91],{"class":90},[84,58487,95],{"class":94},[84,58489,99],{"class":98},[84,58491,1161],{"class":98},[84,58493,184],{"class":90},[84,58495,1166],{"class":118},[84,58497,102],{"class":90},[84,58499,58500,58502,58504,58506],{"class":86,"line":105},[84,58501,109],{"class":108},[84,58503,6383],{"class":90},[84,58505,115],{"class":108},[84,58507,119],{"class":118},[84,58509,58510],{"class":86,"line":122},[84,58511,126],{"emptyLinePlaceholder":125},[84,58513,58514,58516,58518,58520],{"class":86,"line":129},[84,58515,1188],{"class":108},[84,58517,6398],{"class":98},[84,58519,139],{"class":108},[84,58521,175],{"class":90},[84,58523,58524,58526,58528],{"class":86,"line":154},[84,58525,1200],{"class":429},[84,58527,1203],{"class":108},[84,58529,1206],{"class":135},[84,58531,58532,58534,58536],{"class":86,"line":159},[84,58533,6415],{"class":429},[84,58535,1203],{"class":108},[84,58537,1216],{"class":135},[84,58539,58540,58542,58544],{"class":86,"line":178},[84,58541,6424],{"class":429},[84,58543,1203],{"class":108},[84,58545,6429],{"class":135},[84,58547,58548],{"class":86,"line":190},[84,58549,193],{"class":90},[84,58551,58552],{"class":86,"line":196},[84,58553,126],{"emptyLinePlaceholder":125},[84,58555,58556,58558,58560,58562,58564,58566,58568],{"class":86,"line":201},[84,58557,132],{"class":108},[84,58559,2887],{"class":135},[84,58561,139],{"class":108},[84,58563,142],{"class":98},[84,58565,91],{"class":90},[84,58567,6452],{"class":98},[84,58569,6455],{"class":90},[84,58571,58572,58574,58576,58578,58580,58582,58584,58586,58588,58590,58592,58594,58596],{"class":86,"line":217},[84,58573,132],{"class":108},[84,58575,6462],{"class":135},[84,58577,139],{"class":108},[84,58579,142],{"class":98},[84,58581,91],{"class":90},[84,58583,6471],{"class":118},[84,58585,1261],{"class":108},[84,58587,6476],{"class":118},[84,58589,1261],{"class":108},[84,58591,6481],{"class":118},[84,58593,1267],{"class":90},[84,58595,6471],{"class":118},[84,58597,151],{"class":90},[84,58599,58600,58602,58604,58606,58608,58610,58612],{"class":86,"line":227},[84,58601,132],{"class":108},[84,58603,6494],{"class":135},[84,58605,139],{"class":108},[84,58607,142],{"class":98},[84,58609,145],{"class":90},[84,58611,6503],{"class":118},[84,58613,151],{"class":90},[84,58615,58616,58618,58620,58622,58624,58626,58628,58630,58632,58634,58636],{"class":86,"line":232},[84,58617,132],{"class":108},[84,58619,6512],{"class":135},[84,58621,139],{"class":108},[84,58623,142],{"class":98},[84,58625,91],{"class":90},[84,58627,6521],{"class":135},[84,58629,1261],{"class":108},[84,58631,1264],{"class":135},[84,58633,1267],{"class":90},[84,58635,1270],{"class":135},[84,58637,151],{"class":90},[84,58639,58640,58642,58644,58646,58648,58650,58652,58654,58656,58658,58660,58662,58664,58666],{"class":86,"line":237},[84,58641,132],{"class":108},[84,58643,6538],{"class":135},[84,58645,139],{"class":108},[84,58647,142],{"class":98},[84,58649,91],{"class":90},[84,58651,6547],{"class":98},[84,58653,91],{"class":90},[84,58655,6552],{"class":108},[84,58657,6555],{"class":90},[84,58659,6558],{"class":108},[84,58661,1264],{"class":135},[84,58663,1267],{"class":90},[84,58665,1270],{"class":135},[84,58667,151],{"class":90},[84,58669,58670,58672,58674,58676,58678,58680,58682],{"class":86,"line":253},[84,58671,132],{"class":108},[84,58673,6573],{"class":135},[84,58675,139],{"class":108},[84,58677,142],{"class":98},[84,58679,145],{"class":90},[84,58681,148],{"class":135},[84,58683,151],{"class":90},[84,58685,58686],{"class":86,"line":266},[84,58687,126],{"emptyLinePlaceholder":125},[84,58689,58690,58692,58694,58696,58698,58700,58702],{"class":86,"line":271},[84,58691,132],{"class":108},[84,58693,2984],{"class":135},[84,58695,139],{"class":108},[84,58697,2989],{"class":98},[84,58699,2992],{"class":90},[84,58701,172],{"class":108},[84,58703,175],{"class":90},[84,58705,58706,58708,58710,58712,58714],{"class":86,"line":281},[84,58707,1338],{"class":108},[84,58709,6610],{"class":90},[84,58711,3288],{"class":108},[84,58713,6476],{"class":118},[84,58715,438],{"class":90},[84,58717,58718,58720,58722,58724,58726,58728,58730,58732],{"class":86,"line":286},[84,58719,1903],{"class":108},[84,58721,3003],{"class":90},[84,58723,3006],{"class":98},[84,58725,145],{"class":90},[84,58727,3011],{"class":429},[84,58729,3014],{"class":108},[84,58731,260],{"class":108},[84,58733,6635],{"class":90},[84,58735,58736],{"class":86,"line":296},[84,58737,485],{"class":90},[84,58739,58740],{"class":86,"line":315},[84,58741,126],{"emptyLinePlaceholder":125},[84,58743,58744,58746,58748,58750,58752],{"class":86,"line":321},[84,58745,1338],{"class":108},[84,58747,6610],{"class":90},[84,58749,3288],{"class":108},[84,58751,6481],{"class":118},[84,58753,438],{"class":90},[84,58755,58756,58758,58760,58762,58764,58766,58768],{"class":86,"line":331},[84,58757,1903],{"class":108},[84,58759,3003],{"class":90},[84,58761,3006],{"class":98},[84,58763,145],{"class":90},[84,58765,3011],{"class":429},[84,58767,3014],{"class":108},[84,58769,6672],{"class":90},[84,58771,58772],{"class":86,"line":336},[84,58773,485],{"class":90},[84,58775,58776],{"class":86,"line":354},[84,58777,126],{"emptyLinePlaceholder":125},[84,58779,58780,58782],{"class":86,"line":360},[84,58781,557],{"class":108},[84,58783,6687],{"class":90},[84,58785,58786],{"class":86,"line":369},[84,58787,1492],{"class":90},[84,58789,58790],{"class":86,"line":1453},[84,58791,126],{"emptyLinePlaceholder":125},[84,58793,58794,58796,58798,58800],{"class":86,"line":1462},[84,58795,1299],{"class":108},[84,58797,421],{"class":108},[84,58799,6704],{"class":98},[84,58801,1307],{"class":90},[84,58803,58804,58806,58808],{"class":86,"line":1484},[84,58805,6711],{"class":90},[84,58807,184],{"class":108},[84,58809,6716],{"class":118},[84,58811,58812],{"class":86,"line":1489},[84,58813,126],{"emptyLinePlaceholder":125},[84,58815,58816,58818,58820,58822,58824,58826,58828,58830],{"class":86,"line":1495},[84,58817,443],{"class":108},[84,58819,1314],{"class":135},[84,58821,139],{"class":108},[84,58823,1319],{"class":108},[84,58825,1322],{"class":98},[84,58827,145],{"class":90},[84,58829,6737],{"class":118},[84,58831,151],{"class":90},[84,58833,58834,58836,58838,58840,58842,58844,58846,58848,58850,58852,58854,58856,58858,58860],{"class":86,"line":1500},[84,58835,443],{"class":108},[84,58837,6746],{"class":135},[84,58839,139],{"class":108},[84,58841,1341],{"class":90},[84,58843,1385],{"class":108},[84,58845,1388],{"class":90},[84,58847,1391],{"class":98},[84,58849,1394],{"class":90},[84,58851,1397],{"class":108},[84,58853,6763],{"class":90},[84,58855,6766],{"class":429},[84,58857,1203],{"class":108},[84,58859,6398],{"class":98},[84,58861,6773],{"class":90},[84,58863,58864],{"class":86,"line":1516},[84,58865,126],{"emptyLinePlaceholder":125},[84,58867,58868,58870,58872],{"class":86,"line":1533},[84,58869,6782],{"class":90},[84,58871,184],{"class":108},[84,58873,6787],{"class":90},[84,58875,58876,58878,58880,58882,58884,58886,58888,58890,58892],{"class":86,"line":1538},[84,58877,6792],{"class":90},[84,58879,184],{"class":108},[84,58881,1355],{"class":108},[84,58883,6799],{"class":98},[84,58885,6802],{"class":90},[84,58887,6805],{"class":98},[84,58889,145],{"class":90},[84,58891,6810],{"class":118},[84,58893,151],{"class":90},[84,58895,58896,58898,58900],{"class":86,"line":1545},[84,58897,6711],{"class":90},[84,58899,184],{"class":108},[84,58901,6821],{"class":118},[84,58903,58904],{"class":86,"line":1554},[84,58905,193],{"class":90},[84,58907,58908],{"class":86,"line":1563},[84,58909,126],{"emptyLinePlaceholder":125},[84,58911,58912,58914,58916],{"class":86,"line":1570},[84,58913,3246],{"class":108},[84,58915,6836],{"class":98},[84,58917,1307],{"class":90},[84,58919,58920,58922,58924,58926,58928,58930],{"class":86,"line":1588},[84,58921,1338],{"class":108},[84,58923,6845],{"class":90},[84,58925,6848],{"class":108},[84,58927,1264],{"class":135},[84,58929,3126],{"class":90},[84,58931,1530],{"class":108},[84,58933,58934],{"class":86,"line":1593},[84,58935,126],{"emptyLinePlaceholder":125},[84,58937,58938,58940,58942,58944,58946,58948],{"class":86,"line":1598},[84,58939,6863],{"class":90},[84,58941,184],{"class":108},[84,58943,6868],{"class":98},[84,58945,2992],{"class":90},[84,58947,172],{"class":108},[84,58949,175],{"class":90},[84,58951,58952,58954,58956],{"class":86,"line":1607},[84,58953,6879],{"class":108},[84,58955,6704],{"class":98},[84,58957,635],{"class":90},[84,58959,58960,58962,58964],{"class":86,"line":1612},[84,58961,6888],{"class":90},[84,58963,6891],{"class":135},[84,58965,151],{"class":90},[84,58967,58968],{"class":86,"line":1621},[84,58969,193],{"class":90},[84,58971,58972],{"class":86,"line":1639},[84,58973,126],{"emptyLinePlaceholder":125},[84,58975,58976,58978,58980],{"class":86,"line":1661},[84,58977,3246],{"class":108},[84,58979,6908],{"class":98},[84,58981,1307],{"class":90},[84,58983,58984,58986,58988,58990,58992,58994],{"class":86,"line":1666},[84,58985,1338],{"class":108},[84,58987,6845],{"class":90},[84,58989,3288],{"class":108},[84,58991,1264],{"class":135},[84,58993,3126],{"class":90},[84,58995,1530],{"class":108},[84,58997,58998],{"class":86,"line":1688},[84,58999,126],{"emptyLinePlaceholder":125},[84,59001,59002,59004],{"class":86,"line":1703},[84,59003,6933],{"class":98},[84,59005,6936],{"class":90},[84,59007,59008,59010,59012],{"class":86,"line":1717},[84,59009,6863],{"class":90},[84,59011,184],{"class":108},[84,59013,6945],{"class":135},[84,59015,59016],{"class":86,"line":1731},[84,59017,193],{"class":90},[84,59019,59020],{"class":86,"line":1741},[84,59021,126],{"emptyLinePlaceholder":125},[84,59023,59024,59026,59028,59030],{"class":86,"line":1746},[84,59025,1503],{"class":98},[84,59027,2992],{"class":90},[84,59029,172],{"class":108},[84,59031,175],{"class":90},[84,59033,59034,59036,59038],{"class":86,"line":1763},[84,59035,6968],{"class":90},[84,59037,184],{"class":108},[84,59039,187],{"class":135},[84,59041,59042],{"class":86,"line":1772},[84,59043,1492],{"class":90},[84,59045,59046],{"class":86,"line":2283},[84,59047,126],{"emptyLinePlaceholder":125},[84,59049,59050,59052,59054,59056,59058,59060],{"class":86,"line":2288},[84,59051,6985],{"class":98},[84,59053,145],{"class":90},[84,59055,1299],{"class":108},[84,59057,169],{"class":90},[84,59059,172],{"class":108},[84,59061,175],{"class":90},[84,59063,59064,59066,59068,59070,59072,59074,59076],{"class":86,"line":2307},[84,59065,6711],{"class":90},[84,59067,184],{"class":108},[84,59069,7004],{"class":90},[84,59071,3073],{"class":108},[84,59073,7009],{"class":118},[84,59075,7012],{"class":108},[84,59077,7015],{"class":118},[84,59079,59080,59082,59084],{"class":86,"line":2320},[84,59081,7020],{"class":108},[84,59083,6704],{"class":98},[84,59085,635],{"class":90},[84,59087,59088,59090],{"class":86,"line":2333},[84,59089,7029],{"class":98},[84,59091,635],{"class":90},[84,59093,59094],{"class":86,"line":2346},[84,59095,1492],{"class":90},[84,59097,59098],{"class":86,"line":2355},[84,59099,126],{"emptyLinePlaceholder":125},[84,59101,59102,59104,59106,59108],{"class":86,"line":2360},[84,59103,7044],{"class":98},[84,59105,2992],{"class":90},[84,59107,172],{"class":108},[84,59109,175],{"class":90},[84,59111,59112,59114,59116],{"class":86,"line":2375},[84,59113,6711],{"class":90},[84,59115,184],{"class":108},[84,59117,7059],{"class":118},[84,59119,59120,59122],{"class":86,"line":2384},[84,59121,7064],{"class":98},[84,59123,635],{"class":90},[84,59125,59126],{"class":86,"line":4853},[84,59127,1492],{"class":90},[84,59129,59130,59132,59134],{"class":86,"line":4865},[84,59131,274],{"class":90},[84,59133,95],{"class":94},[84,59135,102],{"class":90},[84,59137,59138],{"class":86,"line":4870},[84,59139,126],{"emptyLinePlaceholder":125},[84,59141,59142,59144,59146],{"class":86,"line":4879},[84,59143,91],{"class":90},[84,59145,291],{"class":94},[84,59147,102],{"class":90},[84,59149,59150,59152,59154,59156,59158,59160],{"class":86,"line":4884},[84,59151,299],{"class":90},[84,59153,4898],{"class":94},[84,59155,1629],{"class":98},[84,59157,184],{"class":90},[84,59159,7103],{"class":118},[84,59161,102],{"class":90},[84,59163,59164,59166,59168],{"class":86,"line":4893},[84,59165,1642],{"class":90},[84,59167,4915],{"class":94},[84,59169,102],{"class":90},[84,59171,59172,59174,59176,59178,59180],{"class":86,"line":4910},[84,59173,1691],{"class":90},[84,59175,34],{"class":94},[84,59177,7122],{"class":90},[84,59179,34],{"class":94},[84,59181,102],{"class":90},[84,59183,59184,59186,59188,59190,59192],{"class":86,"line":4920},[84,59185,1691],{"class":90},[84,59187,15],{"class":94},[84,59189,7135],{"class":90},[84,59191,15],{"class":94},[84,59193,102],{"class":90},[84,59195,59196,59198,59200,59202,59204,59206,59208,59210],{"class":86,"line":4934},[84,59197,1691],{"class":90},[84,59199,15],{"class":94},[84,59201,344],{"class":98},[84,59203,184],{"class":90},[84,59205,7152],{"class":118},[84,59207,7155],{"class":90},[84,59209,15],{"class":94},[84,59211,102],{"class":90},[84,59213,59214,59216,59218],{"class":86,"line":4943},[84,59215,1734],{"class":90},[84,59217,4915],{"class":94},[84,59219,102],{"class":90},[84,59221,59222],{"class":86,"line":4949},[84,59223,126],{"emptyLinePlaceholder":125},[84,59225,59226,59228,59230,59232,59234,59236],{"class":86,"line":4959},[84,59227,1642],{"class":90},[84,59229,341],{"class":94},[84,59231,1629],{"class":98},[84,59233,184],{"class":90},[84,59235,7184],{"class":118},[84,59237,102],{"class":90},[84,59239,59240,59242,59244,59246,59248,59250,59252,59254],{"class":86,"line":4968},[84,59241,1691],{"class":90},[84,59243,302],{"class":94},[84,59245,305],{"class":98},[84,59247,184],{"class":90},[84,59249,7199],{"class":118},[84,59251,7202],{"class":90},[84,59253,302],{"class":94},[84,59255,102],{"class":90},[84,59257,59258,59260,59262,59264,59266,59268,59270,59272],{"class":86,"line":4973},[84,59259,1691],{"class":90},[84,59261,302],{"class":94},[84,59263,305],{"class":98},[84,59265,184],{"class":90},[84,59267,7219],{"class":118},[84,59269,7222],{"class":90},[84,59271,302],{"class":94},[84,59273,102],{"class":90},[84,59275,59276,59278,59280,59282,59284,59286,59288,59290],{"class":86,"line":4997},[84,59277,1691],{"class":90},[84,59279,302],{"class":94},[84,59281,305],{"class":98},[84,59283,184],{"class":90},[84,59285,7239],{"class":118},[84,59287,7242],{"class":90},[84,59289,302],{"class":94},[84,59291,102],{"class":90},[84,59293,59294,59296,59298],{"class":86,"line":5011},[84,59295,1734],{"class":90},[84,59297,341],{"class":94},[84,59299,102],{"class":90},[84,59301,59302],{"class":86,"line":5024},[84,59303,126],{"emptyLinePlaceholder":125},[84,59305,59306,59308,59310],{"class":86,"line":5039},[84,59307,1642],{"class":90},[84,59309,737],{"class":94},[84,59311,102],{"class":90},[84,59313,59314,59316],{"class":86,"line":5068},[84,59315,1691],{"class":90},[84,59317,7273],{"class":94},[84,59319,59320,59322,59324],{"class":86,"line":5077},[84,59321,7278],{"class":98},[84,59323,184],{"class":90},[84,59325,7283],{"class":118},[84,59327,59328,59330,59332],{"class":86,"line":5082},[84,59329,7288],{"class":98},[84,59331,184],{"class":90},[84,59333,7293],{"class":118},[84,59335,59336],{"class":86,"line":5103},[84,59337,5318],{"class":90},[84,59339,59340],{"class":86,"line":5112},[84,59341,7302],{"class":90},[84,59343,59344,59346,59348],{"class":86,"line":5768},[84,59345,4952],{"class":90},[84,59347,740],{"class":94},[84,59349,102],{"class":90},[84,59351,59352,59354,59356],{"class":86,"line":5781},[84,59353,1734],{"class":90},[84,59355,737],{"class":94},[84,59357,102],{"class":90},[84,59359,59360,59362,59364],{"class":86,"line":5794},[84,59361,324],{"class":90},[84,59363,4898],{"class":94},[84,59365,102],{"class":90},[84,59367,59368,59370,59372],{"class":86,"line":5819},[84,59369,274],{"class":90},[84,59371,291],{"class":94},[84,59373,102],{"class":90},[74,59375,59376],{"className":76,"code":7337,"filename":7338,"language":79,"meta":80,"style":80},[22,59377,59378,59386,59394,59400,59406,59410,59418,59426,59434,59442,59448,59452,59456,59460,59464,59470,59486,59506,59510,59514,59530,59548,59552,59556,59564,59568,59572,59576,59582,59592,59596,59600,59608,59628,59640,59650,59654,59658,59664,59674,59684,59688,59692,59696,59704,59714,59718,59736,59752,59756,59766,59788,59798,59802,59806,59812,59830,59834,59850,59862,59870,59874,59878,59884,59902,59906,59916,59926,59930,59934,59938,59946,59950,59958,59972,59980,59992,60004,60022,60030,60034,60048,60066,60084,60102,60110,60114,60122,60128,60136,60144,60148,60152,60160,60168,60176],{"__ignoreMap":80},[84,59379,59380,59382,59384],{"class":86,"line":87},[84,59381,91],{"class":90},[84,59383,95],{"class":94},[84,59385,102],{"class":90},[84,59387,59388,59390,59392],{"class":86,"line":105},[84,59389,418],{"class":108},[84,59391,1870],{"class":108},[84,59393,175],{"class":90},[84,59395,59396,59398],{"class":86,"line":122},[84,59397,1896],{"class":98},[84,59399,1307],{"class":90},[84,59401,59402,59404],{"class":86,"line":129},[84,59403,1903],{"class":108},[84,59405,175],{"class":90},[84,59407,59408],{"class":86,"line":154},[84,59409,7373],{"class":90},[84,59411,59412,59414,59416],{"class":86,"line":159},[84,59413,7378],{"class":90},[84,59415,6471],{"class":118},[84,59417,1887],{"class":90},[84,59419,59420,59422,59424],{"class":86,"line":178},[84,59421,7387],{"class":90},[84,59423,6503],{"class":118},[84,59425,1887],{"class":90},[84,59427,59428,59430,59432],{"class":86,"line":190},[84,59429,7396],{"class":90},[84,59431,1270],{"class":135},[84,59433,1887],{"class":90},[84,59435,59436,59438,59440],{"class":86,"line":196},[84,59437,7405],{"class":90},[84,59439,1270],{"class":135},[84,59441,1887],{"class":90},[84,59443,59444,59446],{"class":86,"line":201},[84,59445,7414],{"class":90},[84,59447,2833],{"class":135},[84,59449,59450],{"class":86,"line":217},[84,59451,1936],{"class":90},[84,59453,59454],{"class":86,"line":227},[84,59455,1941],{"class":90},[84,59457,59458],{"class":86,"line":232},[84,59459,126],{"emptyLinePlaceholder":125},[84,59461,59462],{"class":86,"line":237},[84,59463,3527],{"class":90},[84,59465,59466,59468],{"class":86,"line":253},[84,59467,3532],{"class":98},[84,59469,1307],{"class":90},[84,59471,59472,59474,59476,59478,59480,59482,59484],{"class":86,"line":266},[84,59473,1987],{"class":108},[84,59475,1341],{"class":90},[84,59477,2151],{"class":135},[84,59479,7449],{"class":90},[84,59481,3288],{"class":108},[84,59483,6476],{"class":118},[84,59485,438],{"class":90},[84,59487,59488,59490,59492,59494,59496,59498,59500,59502,59504],{"class":86,"line":271},[84,59489,3627],{"class":108},[84,59491,2078],{"class":135},[84,59493,3544],{"class":90},[84,59495,3006],{"class":98},[84,59497,145],{"class":90},[84,59499,3011],{"class":429},[84,59501,3014],{"class":108},[84,59503,260],{"class":108},[84,59505,6635],{"class":90},[84,59507,59508],{"class":86,"line":281},[84,59509,2013],{"class":90},[84,59511,59512],{"class":86,"line":286},[84,59513,126],{"emptyLinePlaceholder":125},[84,59515,59516,59518,59520,59522,59524,59526,59528],{"class":86,"line":296},[84,59517,1987],{"class":108},[84,59519,1341],{"class":90},[84,59521,2151],{"class":135},[84,59523,7449],{"class":90},[84,59525,3288],{"class":108},[84,59527,6481],{"class":118},[84,59529,438],{"class":90},[84,59531,59532,59534,59536,59538,59540,59542,59544,59546],{"class":86,"line":315},[84,59533,3627],{"class":108},[84,59535,2078],{"class":135},[84,59537,3544],{"class":90},[84,59539,3006],{"class":98},[84,59541,145],{"class":90},[84,59543,3011],{"class":429},[84,59545,3014],{"class":108},[84,59547,6672],{"class":90},[84,59549,59550],{"class":86,"line":321},[84,59551,2013],{"class":90},[84,59553,59554],{"class":86,"line":331},[84,59555,126],{"emptyLinePlaceholder":125},[84,59557,59558,59560,59562],{"class":86,"line":336},[84,59559,3539],{"class":108},[84,59561,2078],{"class":135},[84,59563,7534],{"class":90},[84,59565,59566],{"class":86,"line":354},[84,59567,1936],{"class":90},[84,59569,59570],{"class":86,"line":360},[84,59571,1941],{"class":90},[84,59573,59574],{"class":86,"line":369},[84,59575,126],{"emptyLinePlaceholder":125},[84,59577,59578,59580],{"class":86,"line":1453},[84,59579,7551],{"class":98},[84,59581,1307],{"class":90},[84,59583,59584,59586,59588,59590],{"class":86,"line":1462},[84,59585,5499],{"class":135},[84,59587,7560],{"class":90},[84,59589,184],{"class":108},[84,59591,187],{"class":135},[84,59593,59594],{"class":86,"line":1484},[84,59595,1941],{"class":90},[84,59597,59598],{"class":86,"line":1489},[84,59599,126],{"emptyLinePlaceholder":125},[84,59601,59602,59604,59606],{"class":86,"line":1495},[84,59603,2058],{"class":108},[84,59605,7579],{"class":98},[84,59607,1307],{"class":90},[84,59609,59610,59612,59614,59616,59618,59620,59622,59624,59626],{"class":86,"line":1500},[84,59611,5499],{"class":135},[84,59613,7588],{"class":90},[84,59615,184],{"class":108},[84,59617,2078],{"class":135},[84,59619,7560],{"class":90},[84,59621,3073],{"class":108},[84,59623,7009],{"class":118},[84,59625,7012],{"class":108},[84,59627,7015],{"class":118},[84,59629,59630,59632,59634,59636,59638],{"class":86,"line":1516},[84,59631,1435],{"class":108},[84,59633,2078],{"class":135},[84,59635,764],{"class":90},[84,59637,7613],{"class":98},[84,59639,635],{"class":90},[84,59641,59642,59644,59646,59648],{"class":86,"line":1533},[84,59643,5499],{"class":135},[84,59645,764],{"class":90},[84,59647,7624],{"class":98},[84,59649,635],{"class":90},[84,59651,59652],{"class":86,"line":1538},[84,59653,1941],{"class":90},[84,59655,59656],{"class":86,"line":1545},[84,59657,126],{"emptyLinePlaceholder":125},[84,59659,59660,59662],{"class":86,"line":1554},[84,59661,7639],{"class":98},[84,59663,1307],{"class":90},[84,59665,59666,59668,59670,59672],{"class":86,"line":1563},[84,59667,5499],{"class":135},[84,59669,7588],{"class":90},[84,59671,184],{"class":108},[84,59673,7059],{"class":118},[84,59675,59676,59678,59680,59682],{"class":86,"line":1570},[84,59677,5499],{"class":135},[84,59679,764],{"class":90},[84,59681,7660],{"class":98},[84,59683,635],{"class":90},[84,59685,59686],{"class":86,"line":1588},[84,59687,1941],{"class":90},[84,59689,59690],{"class":86,"line":1593},[84,59691,126],{"emptyLinePlaceholder":125},[84,59693,59694],{"class":86,"line":1598},[84,59695,1950],{"class":90},[84,59697,59698,59700,59702],{"class":86,"line":1607},[84,59699,1955],{"class":108},[84,59701,6704],{"class":98},[84,59703,1307],{"class":90},[84,59705,59706,59708,59710,59712],{"class":86,"line":1612},[84,59707,2022],{"class":135},[84,59709,7588],{"class":90},[84,59711,184],{"class":108},[84,59713,6716],{"class":118},[84,59715,59716],{"class":86,"line":1621},[84,59717,126],{"emptyLinePlaceholder":125},[84,59719,59720,59722,59724,59726,59728,59730,59732,59734],{"class":86,"line":1639},[84,59721,1964],{"class":108},[84,59723,1314],{"class":135},[84,59725,139],{"class":108},[84,59727,1319],{"class":108},[84,59729,1322],{"class":98},[84,59731,145],{"class":90},[84,59733,6737],{"class":118},[84,59735,151],{"class":90},[84,59737,59738,59740,59742,59744,59746,59748,59750],{"class":86,"line":1661},[84,59739,1964],{"class":108},[84,59741,6746],{"class":135},[84,59743,139],{"class":108},[84,59745,1319],{"class":108},[84,59747,1388],{"class":90},[84,59749,1391],{"class":98},[84,59751,635],{"class":90},[84,59753,59754],{"class":86,"line":1666},[84,59755,126],{"emptyLinePlaceholder":125},[84,59757,59758,59760,59762,59764],{"class":86,"line":1688},[84,59759,2022],{"class":135},[84,59761,7741],{"class":90},[84,59763,184],{"class":108},[84,59765,6787],{"class":90},[84,59767,59768,59770,59772,59774,59776,59778,59780,59782,59784,59786],{"class":86,"line":1703},[84,59769,2022],{"class":135},[84,59771,7752],{"class":90},[84,59773,184],{"class":108},[84,59775,1355],{"class":108},[84,59777,6799],{"class":98},[84,59779,6802],{"class":90},[84,59781,6805],{"class":98},[84,59783,145],{"class":90},[84,59785,6810],{"class":118},[84,59787,151],{"class":90},[84,59789,59790,59792,59794,59796],{"class":86,"line":1717},[84,59791,2022],{"class":135},[84,59793,7588],{"class":90},[84,59795,184],{"class":108},[84,59797,6821],{"class":118},[84,59799,59800],{"class":86,"line":1731},[84,59801,7783],{"class":90},[84,59803,59804],{"class":86,"line":1741},[84,59805,126],{"emptyLinePlaceholder":125},[84,59807,59808,59810],{"class":86,"line":1746},[84,59809,7792],{"class":98},[84,59811,1307],{"class":90},[84,59813,59814,59816,59818,59820,59822,59824,59826,59828],{"class":86,"line":1763},[84,59815,1987],{"class":108},[84,59817,1341],{"class":90},[84,59819,2151],{"class":135},[84,59821,7805],{"class":90},[84,59823,6848],{"class":108},[84,59825,1264],{"class":135},[84,59827,3126],{"class":90},[84,59829,1530],{"class":108},[84,59831,59832],{"class":86,"line":1772},[84,59833,126],{"emptyLinePlaceholder":125},[84,59835,59836,59838,59840,59842,59844,59846,59848],{"class":86,"line":2283},[84,59837,2022],{"class":135},[84,59839,7805],{"class":90},[84,59841,184],{"class":108},[84,59843,6868],{"class":98},[84,59845,2992],{"class":90},[84,59847,172],{"class":108},[84,59849,175],{"class":90},[84,59851,59852,59854,59856,59858,59860],{"class":86,"line":2288},[84,59853,7838],{"class":108},[84,59855,2078],{"class":135},[84,59857,764],{"class":90},[84,59859,7613],{"class":98},[84,59861,635],{"class":90},[84,59863,59864,59866,59868],{"class":86,"line":2307},[84,59865,7851],{"class":90},[84,59867,6891],{"class":135},[84,59869,151],{"class":90},[84,59871,59872],{"class":86,"line":2320},[84,59873,7783],{"class":90},[84,59875,59876],{"class":86,"line":2333},[84,59877,126],{"emptyLinePlaceholder":125},[84,59879,59880,59882],{"class":86,"line":2346},[84,59881,7868],{"class":98},[84,59883,1307],{"class":90},[84,59885,59886,59888,59890,59892,59894,59896,59898,59900],{"class":86,"line":2355},[84,59887,1987],{"class":108},[84,59889,1341],{"class":90},[84,59891,2151],{"class":135},[84,59893,7805],{"class":90},[84,59895,3288],{"class":108},[84,59897,1264],{"class":135},[84,59899,3126],{"class":90},[84,59901,1530],{"class":108},[84,59903,59904],{"class":86,"line":2360},[84,59905,126],{"emptyLinePlaceholder":125},[84,59907,59908,59910,59912,59914],{"class":86,"line":2375},[84,59909,7897],{"class":98},[84,59911,145],{"class":90},[84,59913,2151],{"class":135},[84,59915,7904],{"class":90},[84,59917,59918,59920,59922,59924],{"class":86,"line":2384},[84,59919,2022],{"class":135},[84,59921,7805],{"class":90},[84,59923,184],{"class":108},[84,59925,6945],{"class":135},[84,59927,59928],{"class":86,"line":4853},[84,59929,1936],{"class":90},[84,59931,59932],{"class":86,"line":4865},[84,59933,485],{"class":90},[84,59935,59936],{"class":86,"line":4870},[84,59937,193],{"class":90},[84,59939,59940,59942,59944],{"class":86,"line":4879},[84,59941,274],{"class":90},[84,59943,95],{"class":94},[84,59945,102],{"class":90},[84,59947,59948],{"class":86,"line":4884},[84,59949,126],{"emptyLinePlaceholder":125},[84,59951,59952,59954,59956],{"class":86,"line":4893},[84,59953,91],{"class":90},[84,59955,291],{"class":94},[84,59957,102],{"class":90},[84,59959,59960,59962,59964,59966,59968,59970],{"class":86,"line":4910},[84,59961,299],{"class":90},[84,59963,4898],{"class":94},[84,59965,1629],{"class":98},[84,59967,184],{"class":90},[84,59969,7103],{"class":118},[84,59971,102],{"class":90},[84,59973,59974,59976,59978],{"class":86,"line":4920},[84,59975,1642],{"class":90},[84,59977,4915],{"class":94},[84,59979,102],{"class":90},[84,59981,59982,59984,59986,59988,59990],{"class":86,"line":4934},[84,59983,1691],{"class":90},[84,59985,34],{"class":94},[84,59987,7122],{"class":90},[84,59989,34],{"class":94},[84,59991,102],{"class":90},[84,59993,59994,59996,59998,60000,60002],{"class":86,"line":4943},[84,59995,1691],{"class":90},[84,59997,15],{"class":94},[84,59999,7135],{"class":90},[84,60001,15],{"class":94},[84,60003,102],{"class":90},[84,60005,60006,60008,60010,60012,60014,60016,60018,60020],{"class":86,"line":4949},[84,60007,1691],{"class":90},[84,60009,15],{"class":94},[84,60011,344],{"class":98},[84,60013,184],{"class":90},[84,60015,7152],{"class":118},[84,60017,7155],{"class":90},[84,60019,15],{"class":94},[84,60021,102],{"class":90},[84,60023,60024,60026,60028],{"class":86,"line":4959},[84,60025,1734],{"class":90},[84,60027,4915],{"class":94},[84,60029,102],{"class":90},[84,60031,60032],{"class":86,"line":4968},[84,60033,126],{"emptyLinePlaceholder":125},[84,60035,60036,60038,60040,60042,60044,60046],{"class":86,"line":4973},[84,60037,1642],{"class":90},[84,60039,341],{"class":94},[84,60041,1629],{"class":98},[84,60043,184],{"class":90},[84,60045,7184],{"class":118},[84,60047,102],{"class":90},[84,60049,60050,60052,60054,60056,60058,60060,60062,60064],{"class":86,"line":4997},[84,60051,1691],{"class":90},[84,60053,302],{"class":94},[84,60055,305],{"class":98},[84,60057,184],{"class":90},[84,60059,7199],{"class":118},[84,60061,7202],{"class":90},[84,60063,302],{"class":94},[84,60065,102],{"class":90},[84,60067,60068,60070,60072,60074,60076,60078,60080,60082],{"class":86,"line":5011},[84,60069,1691],{"class":90},[84,60071,302],{"class":94},[84,60073,305],{"class":98},[84,60075,184],{"class":90},[84,60077,7219],{"class":118},[84,60079,7222],{"class":90},[84,60081,302],{"class":94},[84,60083,102],{"class":90},[84,60085,60086,60088,60090,60092,60094,60096,60098,60100],{"class":86,"line":5024},[84,60087,1691],{"class":90},[84,60089,302],{"class":94},[84,60091,305],{"class":98},[84,60093,184],{"class":90},[84,60095,7239],{"class":118},[84,60097,7242],{"class":90},[84,60099,302],{"class":94},[84,60101,102],{"class":90},[84,60103,60104,60106,60108],{"class":86,"line":5039},[84,60105,1734],{"class":90},[84,60107,341],{"class":94},[84,60109,102],{"class":90},[84,60111,60112],{"class":86,"line":5068},[84,60113,126],{"emptyLinePlaceholder":125},[84,60115,60116,60118,60120],{"class":86,"line":5077},[84,60117,1642],{"class":90},[84,60119,737],{"class":94},[84,60121,102],{"class":90},[84,60123,60124,60126],{"class":86,"line":5082},[84,60125,1691],{"class":90},[84,60127,7273],{"class":94},[84,60129,60130,60132,60134],{"class":86,"line":5103},[84,60131,7278],{"class":98},[84,60133,184],{"class":90},[84,60135,7283],{"class":118},[84,60137,60138,60140,60142],{"class":86,"line":5112},[84,60139,7288],{"class":98},[84,60141,184],{"class":90},[84,60143,7293],{"class":118},[84,60145,60146],{"class":86,"line":5768},[84,60147,5318],{"class":90},[84,60149,60150],{"class":86,"line":5781},[84,60151,7302],{"class":90},[84,60153,60154,60156,60158],{"class":86,"line":5794},[84,60155,4952],{"class":90},[84,60157,740],{"class":94},[84,60159,102],{"class":90},[84,60161,60162,60164,60166],{"class":86,"line":5819},[84,60163,1734],{"class":90},[84,60165,737],{"class":94},[84,60167,102],{"class":90},[84,60169,60170,60172,60174],{"class":86,"line":5828},[84,60171,324],{"class":90},[84,60173,4898],{"class":94},[84,60175,102],{"class":90},[84,60177,60178,60180,60182],{"class":86,"line":5833},[84,60179,274],{"class":90},[84,60181,291],{"class":94},[84,60183,102],{"class":90},[737,60185,60186,60190,60194,60196],{},[740,60187,60188,8179],{},[22,60189,6013],{},[740,60191,60192,8184],{},[22,60193,6021],{},[740,60195,8187],{},[740,60197,60198,8192],{},[22,60199,1092],{},[34,60201,2406],{"id":2405},[737,60203,60204,60208,60212,60216,60218],{},[740,60205,60206,8201],{},[22,60207,5945],{},[740,60209,60210,8206],{},[22,60211,5948],{},[740,60213,60214,8211],{},[22,60215,5951],{},[740,60217,8214],{},[740,60219,8217],{},[835,60221,2417],{},{"title":80,"searchDepth":105,"depth":105,"links":60223},[60224,60225,60226,60227,60228,60229,60235,60240],{"id":5937,"depth":105,"text":5938},{"id":946,"depth":105,"text":947},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":6157,"depth":105,"text":6158},{"id":783,"depth":105,"text":784,"children":60230},[60231,60232,60233,60234],{"id":6252,"depth":122,"text":8230},{"id":6269,"depth":122,"text":6270},{"id":6289,"depth":122,"text":8233},{"id":6308,"depth":122,"text":6309},{"id":2735,"depth":105,"text":2736,"children":60236},[60237,60238,60239],{"id":6322,"depth":122,"text":6323},{"id":6335,"depth":122,"text":6336},{"id":6345,"depth":122,"text":6346},{"id":2405,"depth":105,"text":2406},{"updatedAt":8246,"coverCaption":8247,"author":868,"keywords":60242},[870,8249,5948,5951,8250],[60244],{"headline":5932,"author":60245,"datePublished":8246,"@type":880},{"name":868,"@type":879},{"title":5932,"description":8244},[60248,60249,60250,60251],{"tag":2453,"color":2454},{"tag":8249,"color":8260},{"tag":888,"color":889},{"tag":2462,"color":2463},{"id":8265,"title":8266,"body":60253,"cover":9810,"coverAlt":9811,"date":9812,"description":9813,"draft":852,"extension":853,"lab":882,"locale":864,"meta":61613,"navigation":125,"path":9819,"schemaOrg":61615,"seo":61618,"series":2447,"seriesDescription":2448,"seriesOrder":154,"seriesTitle":2449,"slug":882,"stem":9824,"tags":61619,"__hash__":9829},{"type":8,"value":60254,"toc":61595},[60255,60261,60265,60271,60273,60279,60281,60295,60297,60307,60309,60319,60323,60325,60327,60329,60351,60353,60367,60369,60371,60377,60389,60391,60405,60407,60409,60449,60455,60457,60461,60463,60465,60485,60487,60491,60497,60501,60503,60509,60515,60517,60519,60523,60525,60527,60529,60531,60533,60537,60539,60545,61061,61563,61577,61579,61593],[11,60256,8272,60257,754,60259,909],{"id":8271},[22,60258,8275],{},[22,60260,6063],{},[15,60262,8280,60263,8283],{},[22,60264,6276],{},[15,60266,8286,60267,2488,60269,8291],{},[22,60268,8275],{},[22,60270,6063],{},[34,60272,947],{"id":946},[15,60274,8296,60275,8300,60277,8303],{},[22,60276,8299],{},[22,60278,148],{},[15,60280,8306],{},[737,60282,60283,60289],{},[740,60284,60285,8313,60287,764],{},[22,60286,8275],{},[958,60288,8316],{},[740,60290,60291,8313,60293,764],{},[22,60292,6063],{},[958,60294,8323],{},[15,60296,8326],{},[737,60298,60299,60303],{},[740,60300,60301],{},[22,60302,8333],{},[740,60304,60305],{},[22,60306,8338],{},[15,60308,8341],{},[737,60310,60311,60315],{},[740,60312,995,60313,8348],{},[22,60314,8275],{},[740,60316,995,60317,8353],{},[22,60318,6063],{},[15,60320,8356,60321,764],{},[22,60322,8275],{},[34,60324,1013],{"id":1012},[15,60326,8363],{},[15,60328,4083],{},[737,60330,60331,60337,60347,60349],{},[740,60332,8370,60333,754,60335,8375],{},[22,60334,1106],{},[22,60336,1109],{},[740,60338,8378,60339,754,60341,754,60343,50,60345,764],{},[22,60340,6276],{},[22,60342,8383],{},[22,60344,8386],{},[22,60346,8389],{},[740,60348,8392],{},[740,60350,8395],{},[15,60352,8398],{},[737,60354,60355,60361],{},[740,60356,8403,60357,8407,60359,764],{},[958,60358,8406],{},[22,60360,8275],{},[740,60362,8403,60363,8415,60365,764],{},[958,60364,8414],{},[22,60366,6063],{},[34,60368,1040],{"id":1039},[15,60370,8422],{},[15,60372,8425,60373,2488,60375,8430],{},[22,60374,8275],{},[22,60376,6063],{},[737,60378,60379,60383,60385,60387],{},[740,60380,8435,60381,764],{},[22,60382,8438],{},[740,60384,8441],{},[740,60386,8444],{},[740,60388,8447],{},[15,60390,8450],{},[737,60392,60393,60397,60401],{},[740,60394,60395,8457],{},[22,60396,8299],{},[740,60398,60399,8463],{},[22,60400,8462],{},[740,60402,8466,60403,8469],{},[22,60404,5945],{},[15,60406,8472],{},[34,60408,8476],{"id":8475},[6160,60410,60411,60423],{},[6163,60412,60413],{},[6166,60414,60415,60417,60419,60421],{},[6169,60416,6171],{},[6169,60418,8487],{},[6169,60420,8490],{},[6169,60422,8493],{},[6182,60424,60425,60437],{},[6166,60426,60427,60431,60433,60435],{},[6187,60428,60429],{},[22,60430,8275],{},[6187,60432,8504],{},[6187,60434,8507],{},[6187,60436,8510],{},[6166,60438,60439,60443,60445,60447],{},[6187,60440,60441],{},[22,60442,6063],{},[6187,60444,8519],{},[6187,60446,8522],{},[6187,60448,8525],{},[15,60450,60451,8530,60453,764],{},[22,60452,6063],{},[22,60454,6063],{},[34,60456,784],{"id":783},[1074,60458,8538,60459,8541],{"id":8537},[22,60460,1085],{},[15,60462,8544],{},[15,60464,8547],{},[737,60466,60467,60471,60475,60479,60483],{},[740,60468,60469],{},[22,60470,8554],{},[740,60472,60473],{},[22,60474,8559],{},[740,60476,60477],{},[22,60478,8564],{},[740,60480,60481],{},[22,60482,8389],{},[740,60484,8571],{},[15,60486,8574],{},[1074,60488,8578,60489],{"id":8577},[22,60490,6063],{},[15,60492,60493,8585,60495,8588],{},[22,60494,6063],{},[22,60496,8275],{},[15,60498,8591,60499,8594],{},[22,60500,8275],{},[1074,60502,8598],{"id":8597},[15,60504,8601,60505,8604,60507,8607],{},[22,60506,8275],{},[22,60508,8462],{},[15,60510,8610,60511,8613,60513,764],{},[22,60512,5945],{},[22,60514,6063],{},[15,60516,8618],{},[1074,60518,8622],{"id":8621},[15,60520,8625,60521,8628],{},[22,60522,8275],{},[15,60524,8631],{},[34,60526,2736],{"id":2735},[1074,60528,8637],{"id":8636},[15,60530,8640],{},[1074,60532,8644],{"id":8643},[15,60534,8647,60535,8650],{},[22,60536,8275],{},[1074,60538,8654],{"id":8653},[15,60540,60541,8659,60543,8663],{},[22,60542,6063],{},[4070,60544,8662],{},[74,60546,60547],{"className":76,"code":8666,"filename":873,"language":79,"meta":80,"style":80},[22,60548,60549,60565,60575,60579,60595,60619,60623,60641,60645,60653,60669,60673,60677,60687,60699,60703,60709,60727,60731,60735,60739,60767,60775,60779,60785,60805,60809,60813,60817,60829,60833,60837,60841,60851,60857,60869,60881,60889,60893,60897,60907,60919,60931,60939,60943,60947,60957,60969,60973,60981,60985,60993,61007,61019,61033,61037,61045,61053],{"__ignoreMap":80},[84,60550,60551,60553,60555,60557,60559,60561,60563],{"class":86,"line":87},[84,60552,91],{"class":90},[84,60554,95],{"class":94},[84,60556,99],{"class":98},[84,60558,1161],{"class":98},[84,60560,184],{"class":90},[84,60562,1166],{"class":118},[84,60564,102],{"class":90},[84,60566,60567,60569,60571,60573],{"class":86,"line":105},[84,60568,109],{"class":108},[84,60570,8691],{"class":90},[84,60572,115],{"class":108},[84,60574,119],{"class":118},[84,60576,60577],{"class":86,"line":122},[84,60578,126],{"emptyLinePlaceholder":125},[84,60580,60581,60583,60585,60587,60589,60591,60593],{"class":86,"line":129},[84,60582,132],{"class":108},[84,60584,6494],{"class":135},[84,60586,139],{"class":108},[84,60588,142],{"class":98},[84,60590,145],{"class":90},[84,60592,8714],{"class":118},[84,60594,151],{"class":90},[84,60596,60597,60599,60601,60603,60605,60607,60609,60611,60613,60615,60617],{"class":86,"line":154},[84,60598,132],{"class":108},[84,60600,8723],{"class":135},[84,60602,139],{"class":108},[84,60604,142],{"class":98},[84,60606,91],{"class":90},[84,60608,8732],{"class":135},[84,60610,1261],{"class":108},[84,60612,1264],{"class":135},[84,60614,1267],{"class":90},[84,60616,1270],{"class":135},[84,60618,151],{"class":90},[84,60620,60621],{"class":86,"line":159},[84,60622,126],{"emptyLinePlaceholder":125},[84,60624,60625,60627,60629,60631,60633,60635,60637,60639],{"class":86,"line":178},[84,60626,8751],{"class":108},[84,60628,8754],{"class":90},[84,60630,1203],{"class":108},[84,60632,8759],{"class":98},[84,60634,1261],{"class":108},[84,60636,1264],{"class":135},[84,60638,139],{"class":108},[84,60640,6945],{"class":135},[84,60642,60643],{"class":86,"line":190},[84,60644,126],{"emptyLinePlaceholder":125},[84,60646,60647,60649,60651],{"class":86,"line":196},[84,60648,3246],{"class":108},[84,60650,8778],{"class":98},[84,60652,1307],{"class":90},[84,60654,60655,60657,60659,60661,60663,60665,60667],{"class":86,"line":201},[84,60656,6711],{"class":90},[84,60658,184],{"class":108},[84,60660,8789],{"class":90},[84,60662,3073],{"class":108},[84,60664,8794],{"class":118},[84,60666,7012],{"class":108},[84,60668,8799],{"class":118},[84,60670,60671],{"class":86,"line":217},[84,60672,193],{"class":90},[84,60674,60675],{"class":86,"line":227},[84,60676,126],{"emptyLinePlaceholder":125},[84,60678,60679,60681,60683,60685],{"class":86,"line":232},[84,60680,1299],{"class":108},[84,60682,421],{"class":108},[84,60684,8816],{"class":98},[84,60686,1307],{"class":90},[84,60688,60689,60691,60693,60695,60697],{"class":86,"line":237},[84,60690,8823],{"class":90},[84,60692,184],{"class":108},[84,60694,1355],{"class":108},[84,60696,8759],{"class":98},[84,60698,635],{"class":90},[84,60700,60701],{"class":86,"line":253},[84,60702,126],{"emptyLinePlaceholder":125},[84,60704,60705,60707],{"class":86,"line":266},[84,60706,1428],{"class":108},[84,60708,175],{"class":90},[84,60710,60711,60713,60715,60717,60719,60721,60723,60725],{"class":86,"line":271},[84,60712,3021],{"class":108},[84,60714,1314],{"class":135},[84,60716,139],{"class":108},[84,60718,1319],{"class":108},[84,60720,1322],{"class":98},[84,60722,145],{"class":90},[84,60724,8858],{"class":118},[84,60726,3146],{"class":90},[84,60728,60729],{"class":86,"line":281},[84,60730,8865],{"class":90},[84,60732,60733],{"class":86,"line":286},[84,60734,3698],{"class":90},[84,60736,60737],{"class":86,"line":296},[84,60738,126],{"emptyLinePlaceholder":125},[84,60740,60741,60743,60745,60747,60749,60751,60753,60755,60757,60759,60761,60763,60765],{"class":86,"line":315},[84,60742,3021],{"class":108},[84,60744,6746],{"class":135},[84,60746,139],{"class":108},[84,60748,1319],{"class":108},[84,60750,1388],{"class":90},[84,60752,1391],{"class":98},[84,60754,8890],{"class":90},[84,60756,1397],{"class":108},[84,60758,6763],{"class":90},[84,60760,8897],{"class":429},[84,60762,1203],{"class":108},[84,60764,3259],{"class":135},[84,60766,2968],{"class":90},[84,60768,60769,60771,60773],{"class":86,"line":321},[84,60770,8908],{"class":90},[84,60772,184],{"class":108},[84,60774,8913],{"class":90},[84,60776,60777],{"class":86,"line":331},[84,60778,485],{"class":90},[84,60780,60781,60783],{"class":86,"line":336},[84,60782,8922],{"class":108},[84,60784,1450],{"class":90},[84,60786,60787,60789,60791,60793,60795,60797,60799,60801,60803],{"class":86,"line":354},[84,60788,2146],{"class":108},[84,60790,8931],{"class":90},[84,60792,1468],{"class":108},[84,60794,8936],{"class":98},[84,60796,8939],{"class":108},[84,60798,8942],{"class":90},[84,60800,3288],{"class":108},[84,60802,8947],{"class":118},[84,60804,438],{"class":90},[84,60806,60807],{"class":86,"line":360},[84,60808,8954],{"class":108},[84,60810,60811],{"class":86,"line":369},[84,60812,1936],{"class":90},[84,60814,60815],{"class":86,"line":1453},[84,60816,126],{"emptyLinePlaceholder":125},[84,60818,60819,60821,60823,60825,60827],{"class":86,"line":1462},[84,60820,3666],{"class":90},[84,60822,4127],{"class":98},[84,60824,145],{"class":90},[84,60826,8973],{"class":118},[84,60828,8976],{"class":90},[84,60830,60831],{"class":86,"line":1484},[84,60832,485],{"class":90},[84,60834,60835],{"class":86,"line":1489},[84,60836,193],{"class":90},[84,60838,60839],{"class":86,"line":1495},[84,60840,126],{"emptyLinePlaceholder":125},[84,60842,60843,60845,60847,60849],{"class":86,"line":1500},[84,60844,1503],{"class":98},[84,60846,2992],{"class":90},[84,60848,172],{"class":108},[84,60850,175],{"class":90},[84,60852,60853,60855],{"class":86,"line":1516},[84,60854,9003],{"class":98},[84,60856,635],{"class":90},[84,60858,60859,60861,60863,60865,60867],{"class":86,"line":1533},[84,60860,9010],{"class":90},[84,60862,9013],{"class":98},[84,60864,145],{"class":90},[84,60866,9018],{"class":118},[84,60868,9021],{"class":90},[84,60870,60871,60873,60875,60877,60879],{"class":86,"line":1538},[84,60872,9010],{"class":90},[84,60874,9013],{"class":98},[84,60876,145],{"class":90},[84,60878,9032],{"class":118},[84,60880,9021],{"class":90},[84,60882,60883,60885,60887],{"class":86,"line":1545},[84,60884,9039],{"class":108},[84,60886,8816],{"class":98},[84,60888,635],{"class":90},[84,60890,60891],{"class":86,"line":1554},[84,60892,1492],{"class":90},[84,60894,60895],{"class":86,"line":1563},[84,60896,126],{"emptyLinePlaceholder":125},[84,60898,60899,60901,60903,60905],{"class":86,"line":1570},[84,60900,9056],{"class":98},[84,60902,2992],{"class":90},[84,60904,172],{"class":108},[84,60906,175],{"class":90},[84,60908,60909,60911,60913,60915,60917],{"class":86,"line":1588},[84,60910,9010],{"class":90},[84,60912,9069],{"class":98},[84,60914,145],{"class":90},[84,60916,9018],{"class":118},[84,60918,9021],{"class":90},[84,60920,60921,60923,60925,60927,60929],{"class":86,"line":1593},[84,60922,9010],{"class":90},[84,60924,9069],{"class":98},[84,60926,145],{"class":90},[84,60928,9032],{"class":118},[84,60930,9021],{"class":90},[84,60932,60933,60935,60937],{"class":86,"line":1598},[84,60934,9092],{"class":90},[84,60936,9095],{"class":98},[84,60938,635],{"class":90},[84,60940,60941],{"class":86,"line":1607},[84,60942,1492],{"class":90},[84,60944,60945],{"class":86,"line":1612},[84,60946,126],{"emptyLinePlaceholder":125},[84,60948,60949,60951,60953,60955],{"class":86,"line":1621},[84,60950,9110],{"class":98},[84,60952,2992],{"class":90},[84,60954,172],{"class":108},[84,60956,175],{"class":90},[84,60958,60959,60961,60963,60965,60967],{"class":86,"line":1639},[84,60960,3135],{"class":90},[84,60962,4044],{"class":98},[84,60964,145],{"class":90},[84,60966,9127],{"class":118},[84,60968,151],{"class":90},[84,60970,60971],{"class":86,"line":1661},[84,60972,1492],{"class":90},[84,60974,60975,60977,60979],{"class":86,"line":1666},[84,60976,274],{"class":90},[84,60978,95],{"class":94},[84,60980,102],{"class":90},[84,60982,60983],{"class":86,"line":1688},[84,60984,126],{"emptyLinePlaceholder":125},[84,60986,60987,60989,60991],{"class":86,"line":1703},[84,60988,91],{"class":90},[84,60990,291],{"class":94},[84,60992,102],{"class":90},[84,60994,60995,60997,60999,61001,61003,61005],{"class":86,"line":1717},[84,60996,299],{"class":90},[84,60998,4898],{"class":94},[84,61000,1629],{"class":98},[84,61002,184],{"class":90},[84,61004,9166],{"class":118},[84,61006,102],{"class":90},[84,61008,61009,61011,61013,61015,61017],{"class":86,"line":1731},[84,61010,1642],{"class":90},[84,61012,15],{"class":94},[84,61014,7135],{"class":90},[84,61016,15],{"class":94},[84,61018,102],{"class":90},[84,61020,61021,61023,61025,61027,61029,61031],{"class":86,"line":1741},[84,61022,1642],{"class":90},[84,61024,15],{"class":94},[84,61026,344],{"class":98},[84,61028,184],{"class":90},[84,61030,9193],{"class":118},[84,61032,102],{"class":90},[84,61034,61035],{"class":86,"line":1746},[84,61036,9200],{"class":90},[84,61038,61039,61041,61043],{"class":86,"line":1763},[84,61040,1734],{"class":90},[84,61042,15],{"class":94},[84,61044,102],{"class":90},[84,61046,61047,61049,61051],{"class":86,"line":1772},[84,61048,324],{"class":90},[84,61050,4898],{"class":94},[84,61052,102],{"class":90},[84,61054,61055,61057,61059],{"class":86,"line":2283},[84,61056,274],{"class":90},[84,61058,291],{"class":94},[84,61060,102],{"class":90},[74,61062,61063],{"className":76,"code":9227,"filename":1782,"language":79,"meta":80,"style":80},[22,61064,61065,61073,61081,61087,61093,61101,61109,61115,61119,61123,61127,61133,61143,61159,61175,61187,61191,61195,61201,61217,61233,61243,61247,61251,61257,61269,61273,61277,61281,61287,61305,61309,61313,61321,61335,61339,61345,61363,61371,61375,61379,61395,61405,61409,61415,61435,61439,61443,61447,61459,61463,61467,61471,61475,61483,61487,61495,61509,61521,61535,61539,61547,61555],{"__ignoreMap":80},[84,61066,61067,61069,61071],{"class":86,"line":87},[84,61068,91],{"class":90},[84,61070,95],{"class":94},[84,61072,102],{"class":90},[84,61074,61075,61077,61079],{"class":86,"line":105},[84,61076,418],{"class":108},[84,61078,1870],{"class":108},[84,61080,175],{"class":90},[84,61082,61083,61085],{"class":86,"line":122},[84,61084,1896],{"class":98},[84,61086,1307],{"class":90},[84,61088,61089,61091],{"class":86,"line":129},[84,61090,1903],{"class":108},[84,61092,175],{"class":90},[84,61094,61095,61097,61099],{"class":86,"line":154},[84,61096,7387],{"class":90},[84,61098,8714],{"class":118},[84,61100,1887],{"class":90},[84,61102,61103,61105,61107],{"class":86,"line":159},[84,61104,9270],{"class":90},[84,61106,1270],{"class":135},[84,61108,1887],{"class":90},[84,61110,61111,61113],{"class":86,"line":178},[84,61112,9279],{"class":90},[84,61114,9282],{"class":135},[84,61116,61117],{"class":86,"line":190},[84,61118,1936],{"class":90},[84,61120,61121],{"class":86,"line":196},[84,61122,1941],{"class":90},[84,61124,61125],{"class":86,"line":201},[84,61126,126],{"emptyLinePlaceholder":125},[84,61128,61129,61131],{"class":86,"line":217},[84,61130,7551],{"class":98},[84,61132,1307],{"class":90},[84,61134,61135,61137,61139,61141],{"class":86,"line":227},[84,61136,5499],{"class":135},[84,61138,764],{"class":90},[84,61140,9309],{"class":98},[84,61142,635],{"class":90},[84,61144,61145,61147,61149,61151,61153,61155,61157],{"class":86,"line":232},[84,61146,9316],{"class":90},[84,61148,9013],{"class":98},[84,61150,145],{"class":90},[84,61152,9018],{"class":118},[84,61154,754],{"class":90},[84,61156,2151],{"class":135},[84,61158,9329],{"class":90},[84,61160,61161,61163,61165,61167,61169,61171,61173],{"class":86,"line":237},[84,61162,9316],{"class":90},[84,61164,9013],{"class":98},[84,61166,145],{"class":90},[84,61168,9032],{"class":118},[84,61170,754],{"class":90},[84,61172,2151],{"class":135},[84,61174,9329],{"class":90},[84,61176,61177,61179,61181,61183,61185],{"class":86,"line":253},[84,61178,6879],{"class":108},[84,61180,2078],{"class":135},[84,61182,764],{"class":90},[84,61184,9356],{"class":98},[84,61186,635],{"class":90},[84,61188,61189],{"class":86,"line":266},[84,61190,1941],{"class":90},[84,61192,61193],{"class":86,"line":271},[84,61194,126],{"emptyLinePlaceholder":125},[84,61196,61197,61199],{"class":86,"line":281},[84,61198,9371],{"class":98},[84,61200,1307],{"class":90},[84,61202,61203,61205,61207,61209,61211,61213,61215],{"class":86,"line":286},[84,61204,9316],{"class":90},[84,61206,9069],{"class":98},[84,61208,145],{"class":90},[84,61210,9018],{"class":118},[84,61212,754],{"class":90},[84,61214,2151],{"class":135},[84,61216,9329],{"class":90},[84,61218,61219,61221,61223,61225,61227,61229,61231],{"class":86,"line":296},[84,61220,9316],{"class":90},[84,61222,9069],{"class":98},[84,61224,145],{"class":90},[84,61226,9032],{"class":118},[84,61228,754],{"class":90},[84,61230,2151],{"class":135},[84,61232,9329],{"class":90},[84,61234,61235,61237,61239,61241],{"class":86,"line":315},[84,61236,5499],{"class":135},[84,61238,9412],{"class":90},[84,61240,9095],{"class":98},[84,61242,635],{"class":90},[84,61244,61245],{"class":86,"line":321},[84,61246,1941],{"class":90},[84,61248,61249],{"class":86,"line":331},[84,61250,126],{"emptyLinePlaceholder":125},[84,61252,61253,61255],{"class":86,"line":336},[84,61254,9429],{"class":98},[84,61256,1307],{"class":90},[84,61258,61259,61261,61263,61265,61267],{"class":86,"line":354},[84,61260,3666],{"class":90},[84,61262,4044],{"class":98},[84,61264,145],{"class":90},[84,61266,9127],{"class":118},[84,61268,151],{"class":90},[84,61270,61271],{"class":86,"line":360},[84,61272,1941],{"class":90},[84,61274,61275],{"class":86,"line":369},[84,61276,126],{"emptyLinePlaceholder":125},[84,61278,61279],{"class":86,"line":1453},[84,61280,1950],{"class":90},[84,61282,61283,61285],{"class":86,"line":1462},[84,61284,9460],{"class":98},[84,61286,1307],{"class":90},[84,61288,61289,61291,61293,61295,61297,61299,61301,61303],{"class":86,"line":1484},[84,61290,2022],{"class":135},[84,61292,7588],{"class":90},[84,61294,184],{"class":108},[84,61296,8789],{"class":90},[84,61298,3073],{"class":108},[84,61300,8794],{"class":118},[84,61302,7012],{"class":108},[84,61304,8799],{"class":118},[84,61306,61307],{"class":86,"line":1489},[84,61308,7783],{"class":90},[84,61310,61311],{"class":86,"line":1495},[84,61312,126],{"emptyLinePlaceholder":125},[84,61314,61315,61317,61319],{"class":86,"line":1500},[84,61316,1955],{"class":108},[84,61318,8816],{"class":98},[84,61320,1307],{"class":90},[84,61322,61323,61325,61327,61329,61331,61333],{"class":86,"line":1516},[84,61324,2022],{"class":135},[84,61326,9503],{"class":90},[84,61328,184],{"class":108},[84,61330,1355],{"class":108},[84,61332,8759],{"class":98},[84,61334,635],{"class":90},[84,61336,61337],{"class":86,"line":1533},[84,61338,126],{"emptyLinePlaceholder":125},[84,61340,61341,61343],{"class":86,"line":1538},[84,61342,9520],{"class":108},[84,61344,175],{"class":90},[84,61346,61347,61349,61351,61353,61355,61357,61359,61361],{"class":86,"line":1545},[84,61348,3559],{"class":108},[84,61350,1314],{"class":135},[84,61352,139],{"class":108},[84,61354,1319],{"class":108},[84,61356,1322],{"class":98},[84,61358,145],{"class":90},[84,61360,8858],{"class":118},[84,61362,3146],{"class":90},[84,61364,61365,61367,61369],{"class":86,"line":1554},[84,61366,9545],{"class":90},[84,61368,2151],{"class":135},[84,61370,9550],{"class":90},[84,61372,61373],{"class":86,"line":1563},[84,61374,9555],{"class":90},[84,61376,61377],{"class":86,"line":1570},[84,61378,126],{"emptyLinePlaceholder":125},[84,61380,61381,61383,61385,61387,61389,61391,61393],{"class":86,"line":1588},[84,61382,3559],{"class":108},[84,61384,6746],{"class":135},[84,61386,139],{"class":108},[84,61388,1319],{"class":108},[84,61390,1388],{"class":90},[84,61392,1391],{"class":98},[84,61394,635],{"class":90},[84,61396,61397,61399,61401,61403],{"class":86,"line":1593},[84,61398,9580],{"class":135},[84,61400,9583],{"class":90},[84,61402,184],{"class":108},[84,61404,8913],{"class":90},[84,61406,61407],{"class":86,"line":1598},[84,61408,2013],{"class":90},[84,61410,61411,61413],{"class":86,"line":1607},[84,61412,9596],{"class":108},[84,61414,1450],{"class":90},[84,61416,61417,61419,61421,61423,61425,61427,61429,61431,61433],{"class":86,"line":1612},[84,61418,9603],{"class":108},[84,61420,8931],{"class":90},[84,61422,1468],{"class":108},[84,61424,8936],{"class":98},[84,61426,8939],{"class":108},[84,61428,8942],{"class":90},[84,61430,3288],{"class":108},[84,61432,8947],{"class":118},[84,61434,438],{"class":90},[84,61436,61437],{"class":86,"line":1621},[84,61438,9624],{"class":108},[84,61440,61441],{"class":86,"line":1639},[84,61442,9629],{"class":90},[84,61444,61445],{"class":86,"line":1661},[84,61446,126],{"emptyLinePlaceholder":125},[84,61448,61449,61451,61453,61455,61457],{"class":86,"line":1666},[84,61450,9638],{"class":90},[84,61452,4127],{"class":98},[84,61454,145],{"class":90},[84,61456,8973],{"class":118},[84,61458,8976],{"class":90},[84,61460,61461],{"class":86,"line":1688},[84,61462,2013],{"class":90},[84,61464,61465],{"class":86,"line":1703},[84,61466,1936],{"class":90},[84,61468,61469],{"class":86,"line":1717},[84,61470,485],{"class":90},[84,61472,61473],{"class":86,"line":1731},[84,61474,193],{"class":90},[84,61476,61477,61479,61481],{"class":86,"line":1741},[84,61478,274],{"class":90},[84,61480,95],{"class":94},[84,61482,102],{"class":90},[84,61484,61485],{"class":86,"line":1746},[84,61486,126],{"emptyLinePlaceholder":125},[84,61488,61489,61491,61493],{"class":86,"line":1763},[84,61490,91],{"class":90},[84,61492,291],{"class":94},[84,61494,102],{"class":90},[84,61496,61497,61499,61501,61503,61505,61507],{"class":86,"line":1772},[84,61498,299],{"class":90},[84,61500,4898],{"class":94},[84,61502,1629],{"class":98},[84,61504,184],{"class":90},[84,61506,9166],{"class":118},[84,61508,102],{"class":90},[84,61510,61511,61513,61515,61517,61519],{"class":86,"line":2283},[84,61512,1642],{"class":90},[84,61514,15],{"class":94},[84,61516,7135],{"class":90},[84,61518,15],{"class":94},[84,61520,102],{"class":90},[84,61522,61523,61525,61527,61529,61531,61533],{"class":86,"line":2288},[84,61524,1642],{"class":90},[84,61526,15],{"class":94},[84,61528,344],{"class":98},[84,61530,184],{"class":90},[84,61532,9193],{"class":118},[84,61534,102],{"class":90},[84,61536,61537],{"class":86,"line":2307},[84,61538,9200],{"class":90},[84,61540,61541,61543,61545],{"class":86,"line":2320},[84,61542,1734],{"class":90},[84,61544,15],{"class":94},[84,61546,102],{"class":90},[84,61548,61549,61551,61553],{"class":86,"line":2333},[84,61550,324],{"class":90},[84,61552,4898],{"class":94},[84,61554,102],{"class":90},[84,61556,61557,61559,61561],{"class":86,"line":2346},[84,61558,274],{"class":90},[84,61560,291],{"class":94},[84,61562,102],{"class":90},[737,61564,61565,61569,61573],{},[740,61566,61567,9757],{},[22,61568,1092],{},[740,61570,61571,9762],{},[22,61572,8333],{},[740,61574,61575,9767],{},[22,61576,8338],{},[34,61578,2406],{"id":2405},[737,61580,61581,61585,61589,61591],{},[740,61582,61583,9776],{},[22,61584,8275],{},[740,61586,61587,9781],{},[22,61588,6063],{},[740,61590,9784],{},[740,61592,9787],{},[835,61594,3902],{},{"title":80,"searchDepth":105,"depth":105,"links":61596},[61597,61598,61599,61600,61601,61607,61612],{"id":946,"depth":105,"text":947},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":8475,"depth":105,"text":8476},{"id":783,"depth":105,"text":784,"children":61602},[61603,61604,61605,61606],{"id":8537,"depth":122,"text":9799},{"id":8577,"depth":122,"text":9801},{"id":8597,"depth":122,"text":8598},{"id":8621,"depth":122,"text":8622},{"id":2735,"depth":105,"text":2736,"children":61608},[61609,61610,61611],{"id":8636,"depth":122,"text":8637},{"id":8643,"depth":122,"text":8644},{"id":8653,"depth":122,"text":8654},{"id":2405,"depth":105,"text":2406},{"updatedAt":9815,"coverCaption":9816,"author":868,"keywords":61614},[870,8275,6063,9056,9818],[61616],{"headline":8266,"author":61617,"datePublished":9815,"@type":880},{"name":868,"@type":879},{"title":8266,"description":9813},[61620,61621,61622],{"tag":2453,"color":2454},{"tag":888,"color":889},{"tag":894,"color":895},{"id":9831,"title":9832,"body":61624,"cover":11384,"coverAlt":11385,"date":11386,"description":11387,"draft":852,"extension":853,"lab":882,"locale":864,"meta":62970,"navigation":125,"path":11393,"schemaOrg":62972,"seo":62975,"series":2447,"seriesDescription":2448,"seriesOrder":129,"seriesTitle":2449,"slug":882,"stem":11398,"tags":62976,"__hash__":11405},{"type":8,"value":61625,"toc":62961},[61626,61632,61636,61640,61642,61644,61646,61648,61662,61666,61676,61678,61700,61706,61710,61714,61716,61720,61722,61734,61740,61746,61748,61750,61756,61770,61776,61778,61784,61786,61792,61802,61806,61808,61892,61894,61898,61910,61914,61920,61922,61926,61928,61932,61934,61942,61944,61950,61952,61954,61956,61958,61960,61962,61966,61970,61972,61974,62053,62055,62483,62917,62927,62929,62959],[11,61627,9838,61628,754,61630,909],{"id":9837},[22,61629,9841],{},[22,61631,9844],{},[15,61633,9847,61634,9850],{},[22,61635,2526],{},[15,61637,9853,61638,9857],{},[958,61639,9856],{},[15,61641,9860],{},[11,61643,947],{"id":946},[15,61645,9865],{},[15,61647,9868],{},[737,61649,61650,61656],{},[740,61651,61652,8313,61654,764],{},[22,61653,9841],{},[958,61655,9877],{},[740,61657,61658,8313,61660,764],{},[22,61659,9844],{},[958,61661,9884],{},[15,61663,995,61664,9889],{},[958,61665,873],{},[737,61667,61668,61672],{},[740,61669,61670],{},[22,61671,9896],{},[740,61673,61674],{},[22,61675,9901],{},[15,61677,9904],{},[737,61679,61680,61686,61692],{},[740,61681,8403,61682,754,61684,9914],{},[958,61683,9911],{},[22,61685,9841],{},[740,61687,8403,61688,754,61690,9914],{},[958,61689,9919],{},[22,61691,9844],{},[740,61693,9924,61694,9928,61696,9931,61698,9934],{},[958,61695,9927],{},[22,61697,2526],{},[22,61699,2523],{},[15,61701,9937,61702,9941,61704,9945],{},[958,61703,9940],{},[4070,61705,9944],{},[823,61707,61708],{},[15,61709,9950],{},[15,61711,9953,61712,764],{},[22,61713,2526],{},[11,61715,1013],{"id":1012},[15,61717,9960,61718,764],{},[958,61719,9963],{},[15,61721,4083],{},[737,61723,61724,61726,61728,61730,61732],{},[740,61725,9970],{},[740,61727,9973],{},[740,61729,9976],{},[740,61731,9979],{},[740,61733,9982],{},[15,61735,61736,9987,61738,764],{},[22,61737,9841],{},[958,61739,9990],{},[15,61741,61742,9995,61744,9999],{},[22,61743,9844],{},[958,61745,9998],{},[11,61747,1040],{"id":1039},[15,61749,10004],{},[15,61751,8425,61752,2488,61754,8430],{},[22,61753,9841],{},[22,61755,9844],{},[737,61757,61758,61760,61764,61766],{},[740,61759,10015],{},[740,61761,10018,61762,764],{},[22,61763,2523],{},[740,61765,10023],{},[740,61767,10026,61768,10029],{},[22,61769,9844],{},[15,61771,10032,61772,10035,61774,10039],{},[22,61773,9844],{},[958,61775,10038],{},[11,61777,784],{"id":783},[34,61779,10045,61780,10048,61782],{"id":10044},[22,61781,9844],{},[22,61783,2526],{},[15,61785,10053],{},[15,61787,61788,10058,61790,10062],{},[22,61789,9844],{},[958,61791,10061],{},[15,61793,10065,61794,754,61796,754,61798,10075,61800,10078],{},[22,61795,10068],{},[22,61797,10071],{},[22,61799,10074],{},[22,61801,2526],{},[34,61803,10082,61804,10085],{"id":10081},[22,61805,9844],{},[15,61807,10088],{},[74,61809,61811],{"className":76,"code":10091,"filename":10092,"highlights":61810,"language":79,"meta":80,"style":80},[159],[22,61812,61813,61829,61839,61843,61859,61863,61874,61880,61884],{"__ignoreMap":80},[84,61814,61815,61817,61819,61821,61823,61825,61827],{"class":86,"line":87},[84,61816,91],{"class":90},[84,61818,95],{"class":94},[84,61820,99],{"class":98},[84,61822,1161],{"class":98},[84,61824,184],{"class":90},[84,61826,1166],{"class":118},[84,61828,102],{"class":90},[84,61830,61831,61833,61835,61837],{"class":86,"line":105},[84,61832,109],{"class":108},[84,61834,10118],{"class":90},[84,61836,115],{"class":108},[84,61838,119],{"class":118},[84,61840,61841],{"class":86,"line":122},[84,61842,126],{"emptyLinePlaceholder":125},[84,61844,61845,61847,61849,61851,61853,61855,61857],{"class":86,"line":129},[84,61846,132],{"class":108},[84,61848,10133],{"class":135},[84,61850,139],{"class":108},[84,61852,142],{"class":98},[84,61854,145],{"class":90},[84,61856,4320],{"class":135},[84,61858,151],{"class":90},[84,61860,61861],{"class":86,"line":154},[84,61862,126],{"emptyLinePlaceholder":125},[84,61864,61866,61868,61870,61872],{"class":61865,"line":159},[86,10151],[84,61867,10154],{"class":98},[84,61869,2992],{"class":90},[84,61871,172],{"class":108},[84,61873,175],{"class":90},[84,61875,61876,61878],{"class":86,"line":178},[84,61877,10165],{"class":90},[84,61879,10168],{"class":108},[84,61881,61882],{"class":86,"line":190},[84,61883,1492],{"class":90},[84,61885,61886,61888,61890],{"class":86,"line":196},[84,61887,274],{"class":90},[84,61889,95],{"class":94},[84,61891,102],{"class":90},[15,61893,10183],{},[15,61895,10186,61896,10190],{},[958,61897,10189],{},[737,61899,61900,61904,61908],{},[740,61901,61902],{},[22,61903,2526],{},[740,61905,61906],{},[22,61907,2523],{},[740,61909,10203],{},[34,61911,10207,61912],{"id":10206},[22,61913,9841],{},[15,61915,995,61916,10214,61918,764],{},[22,61917,9841],{},[958,61919,10217],{},[15,61921,10220],{},[15,61923,10223,61924,764],{},[22,61925,9844],{},[34,61927,10229],{"id":10228},[15,61929,10232,61930,764],{},[958,61931,10235],{},[15,61933,10238],{},[737,61935,61936,61938,61940],{},[740,61937,10243],{},[740,61939,10246],{},[740,61941,10249],{},[15,61943,10252],{},[823,61945,61946],{},[15,61947,10257,61948,10261],{},[958,61949,10260],{},[11,61951,2736],{"id":2735},[34,61953,10267],{"id":10266},[15,61955,10270],{},[15,61957,10273],{},[15,61959,10276],{},[34,61961,10280],{"id":10279},[15,61963,10283,61964,10287],{},[958,61965,10286],{},[15,61967,61968,10292],{},[22,61969,9844],{},[34,61971,10296],{"id":10295},[15,61973,10299],{},[74,61975,61977],{"className":76,"code":10302,"filename":10092,"highlights":61976,"language":79,"meta":80,"style":80},[105,159],[22,61978,61979,61987,61998,62010,62014,62018,62029,62041,62045],{"__ignoreMap":80},[84,61980,61981,61983,61985],{"class":86,"line":87},[84,61982,91],{"class":90},[84,61984,95],{"class":94},[84,61986,102],{"class":90},[84,61988,61990,61992,61994,61996],{"class":61989,"line":105},[86,10151],[84,61991,10319],{"class":98},[84,61993,2992],{"class":90},[84,61995,172],{"class":108},[84,61997,175],{"class":90},[84,61999,62000,62002,62004,62006,62008],{"class":86,"line":122},[84,62001,3135],{"class":90},[84,62003,3138],{"class":98},[84,62005,145],{"class":90},[84,62007,10336],{"class":118},[84,62009,151],{"class":90},[84,62011,62012],{"class":86,"line":129},[84,62013,1492],{"class":90},[84,62015,62016],{"class":86,"line":154},[84,62017,126],{"emptyLinePlaceholder":125},[84,62019,62021,62023,62025,62027],{"class":62020,"line":159},[86,10151],[84,62022,10154],{"class":98},[84,62024,2992],{"class":90},[84,62026,172],{"class":108},[84,62028,175],{"class":90},[84,62030,62031,62033,62035,62037,62039],{"class":86,"line":178},[84,62032,3135],{"class":90},[84,62034,3138],{"class":98},[84,62036,145],{"class":90},[84,62038,10368],{"class":118},[84,62040,151],{"class":90},[84,62042,62043],{"class":86,"line":190},[84,62044,1492],{"class":90},[84,62046,62047,62049,62051],{"class":86,"line":196},[84,62048,274],{"class":90},[84,62050,95],{"class":94},[84,62052,102],{"class":90},[15,62054,10385],{},[74,62056,62057],{"className":76,"code":10388,"filename":873,"language":79,"meta":80,"style":80},[22,62058,62059,62075,62085,62089,62101,62113,62125,62129,62133,62157,62173,62177,62185,62193,62201,62223,62227,62231,62235,62245,62257,62261,62265,62275,62287,62291,62301,62305,62315,62323,62327,62331,62339,62343,62351,62365,62379,62383,62391,62395,62401,62409,62417,62421,62427,62435,62443,62447,62451,62459,62467,62475],{"__ignoreMap":80},[84,62060,62061,62063,62065,62067,62069,62071,62073],{"class":86,"line":87},[84,62062,91],{"class":90},[84,62064,95],{"class":94},[84,62066,99],{"class":98},[84,62068,1161],{"class":98},[84,62070,184],{"class":90},[84,62072,1166],{"class":118},[84,62074,102],{"class":90},[84,62076,62077,62079,62081,62083],{"class":86,"line":105},[84,62078,109],{"class":108},[84,62080,10413],{"class":90},[84,62082,115],{"class":108},[84,62084,119],{"class":118},[84,62086,62087],{"class":86,"line":122},[84,62088,126],{"emptyLinePlaceholder":125},[84,62090,62091,62093,62095,62097,62099],{"class":86,"line":129},[84,62092,132],{"class":108},[84,62094,10428],{"class":135},[84,62096,139],{"class":108},[84,62098,142],{"class":98},[84,62100,2894],{"class":90},[84,62102,62103,62105,62107,62109,62111],{"class":86,"line":154},[84,62104,2899],{"class":90},[84,62106,2862],{"class":135},[84,62108,10443],{"class":90},[84,62110,10446],{"class":118},[84,62112,2921],{"class":90},[84,62114,62115,62117,62119,62121,62123],{"class":86,"line":159},[84,62116,2899],{"class":90},[84,62118,2928],{"class":135},[84,62120,10443],{"class":90},[84,62122,10459],{"class":118},[84,62124,2968],{"class":90},[84,62126,62127],{"class":86,"line":178},[84,62128,2973],{"class":90},[84,62130,62131],{"class":86,"line":190},[84,62132,126],{"emptyLinePlaceholder":125},[84,62134,62135,62137,62139,62141,62143,62145,62147,62149,62151,62153,62155],{"class":86,"line":196},[84,62136,132],{"class":108},[84,62138,10476],{"class":135},[84,62140,139],{"class":108},[84,62142,142],{"class":98},[84,62144,91],{"class":90},[84,62146,10485],{"class":98},[84,62148,1261],{"class":108},[84,62150,1264],{"class":135},[84,62152,1267],{"class":90},[84,62154,1270],{"class":135},[84,62156,151],{"class":90},[84,62158,62159,62161,62163,62165,62167,62169,62171],{"class":86,"line":201},[84,62160,132],{"class":108},[84,62162,10502],{"class":135},[84,62164,139],{"class":108},[84,62166,142],{"class":98},[84,62168,145],{"class":90},[84,62170,4320],{"class":135},[84,62172,151],{"class":90},[84,62174,62175],{"class":86,"line":217},[84,62176,126],{"emptyLinePlaceholder":125},[84,62178,62179,62181,62183],{"class":86,"line":227},[84,62180,3246],{"class":108},[84,62182,10523],{"class":98},[84,62184,1307],{"class":90},[84,62186,62187,62189,62191],{"class":86,"line":232},[84,62188,10530],{"class":90},[84,62190,10533],{"class":98},[84,62192,1876],{"class":90},[84,62194,62195,62197,62199],{"class":86,"line":237},[84,62196,10540],{"class":90},[84,62198,10543],{"class":98},[84,62200,10546],{"class":90},[84,62202,62203,62205,62207,62209,62211,62213,62215,62217,62219,62221],{"class":86,"line":253},[84,62204,10551],{"class":90},[84,62206,10554],{"class":118},[84,62208,10557],{"class":90},[84,62210,764],{"class":118},[84,62212,4663],{"class":90},[84,62214,764],{"class":118},[84,62216,10566],{"class":135},[84,62218,10569],{"class":108},[84,62220,10572],{"class":135},[84,62222,10575],{"class":118},[84,62224,62225],{"class":86,"line":266},[84,62226,3104],{"class":90},[84,62228,62229],{"class":86,"line":271},[84,62230,193],{"class":90},[84,62232,62233],{"class":86,"line":281},[84,62234,126],{"emptyLinePlaceholder":125},[84,62236,62237,62239,62241,62243],{"class":86,"line":286},[84,62238,10319],{"class":98},[84,62240,2992],{"class":90},[84,62242,172],{"class":108},[84,62244,175],{"class":90},[84,62246,62247,62249,62251,62253,62255],{"class":86,"line":296},[84,62248,10602],{"class":90},[84,62250,184],{"class":108},[84,62252,10607],{"class":90},[84,62254,10610],{"class":108},[84,62256,10613],{"class":135},[84,62258,62259],{"class":86,"line":315},[84,62260,1492],{"class":90},[84,62262,62263],{"class":86,"line":321},[84,62264,126],{"emptyLinePlaceholder":125},[84,62266,62267,62269,62271,62273],{"class":86,"line":331},[84,62268,10154],{"class":98},[84,62270,2992],{"class":90},[84,62272,172],{"class":108},[84,62274,175],{"class":90},[84,62276,62277,62279,62281,62283,62285],{"class":86,"line":336},[84,62278,1338],{"class":108},[84,62280,1341],{"class":90},[84,62282,1344],{"class":108},[84,62284,10642],{"class":90},[84,62286,1530],{"class":108},[84,62288,62289],{"class":86,"line":354},[84,62290,126],{"emptyLinePlaceholder":125},[84,62292,62293,62295,62297,62299],{"class":86,"line":360},[84,62294,443],{"class":108},[84,62296,10655],{"class":135},[84,62298,139],{"class":108},[84,62300,10660],{"class":90},[84,62302,62303],{"class":86,"line":369},[84,62304,126],{"emptyLinePlaceholder":125},[84,62306,62307,62309,62311,62313],{"class":86,"line":1453},[84,62308,1338],{"class":108},[84,62310,10671],{"class":90},[84,62312,10674],{"class":108},[84,62314,10677],{"class":90},[84,62316,62317,62319,62321],{"class":86,"line":1462},[84,62318,10682],{"class":90},[84,62320,184],{"class":108},[84,62322,10687],{"class":90},[84,62324,62325],{"class":86,"line":1484},[84,62326,485],{"class":90},[84,62328,62329],{"class":86,"line":1489},[84,62330,1492],{"class":90},[84,62332,62333,62335,62337],{"class":86,"line":1495},[84,62334,274],{"class":90},[84,62336,95],{"class":94},[84,62338,102],{"class":90},[84,62340,62341],{"class":86,"line":1500},[84,62342,126],{"emptyLinePlaceholder":125},[84,62344,62345,62347,62349],{"class":86,"line":1516},[84,62346,91],{"class":90},[84,62348,291],{"class":94},[84,62350,102],{"class":90},[84,62352,62353,62355,62357,62359,62361,62363],{"class":86,"line":1533},[84,62354,299],{"class":90},[84,62356,4898],{"class":94},[84,62358,1629],{"class":98},[84,62360,184],{"class":90},[84,62362,10728],{"class":118},[84,62364,102],{"class":90},[84,62366,62367,62369,62371,62373,62375,62377],{"class":86,"line":1538},[84,62368,1642],{"class":90},[84,62370,302],{"class":94},[84,62372,305],{"class":98},[84,62374,184],{"class":90},[84,62376,10743],{"class":118},[84,62378,102],{"class":90},[84,62380,62381],{"class":86,"line":1545},[84,62382,10750],{"class":90},[84,62384,62385,62387,62389],{"class":86,"line":1554},[84,62386,1734],{"class":90},[84,62388,302],{"class":94},[84,62390,102],{"class":90},[84,62392,62393],{"class":86,"line":1563},[84,62394,126],{"emptyLinePlaceholder":125},[84,62396,62397,62399],{"class":86,"line":1570},[84,62398,1642],{"class":90},[84,62400,10769],{"class":94},[84,62402,62403,62405,62407],{"class":86,"line":1588},[84,62404,10774],{"class":98},[84,62406,184],{"class":90},[84,62408,10779],{"class":118},[84,62410,62411,62413,62415],{"class":86,"line":1593},[84,62412,10784],{"class":98},[84,62414,184],{"class":90},[84,62416,10789],{"class":118},[84,62418,62419],{"class":86,"line":1598},[84,62420,10794],{"class":90},[84,62422,62423,62425],{"class":86,"line":1607},[84,62424,1691],{"class":90},[84,62426,7273],{"class":94},[84,62428,62429,62431,62433],{"class":86,"line":1612},[84,62430,7278],{"class":98},[84,62432,184],{"class":90},[84,62434,10809],{"class":118},[84,62436,62437,62439,62441],{"class":86,"line":1621},[84,62438,7288],{"class":98},[84,62440,184],{"class":90},[84,62442,10818],{"class":118},[84,62444,62445],{"class":86,"line":1639},[84,62446,5318],{"class":90},[84,62448,62449],{"class":86,"line":1661},[84,62450,10827],{"class":90},[84,62452,62453,62455,62457],{"class":86,"line":1666},[84,62454,4952],{"class":90},[84,62456,740],{"class":94},[84,62458,102],{"class":90},[84,62460,62461,62463,62465],{"class":86,"line":1688},[84,62462,1734],{"class":90},[84,62464,10842],{"class":94},[84,62466,102],{"class":90},[84,62468,62469,62471,62473],{"class":86,"line":1703},[84,62470,324],{"class":90},[84,62472,4898],{"class":94},[84,62474,102],{"class":90},[84,62476,62477,62479,62481],{"class":86,"line":1717},[84,62478,274],{"class":90},[84,62480,291],{"class":94},[84,62482,102],{"class":90},[74,62484,62485],{"className":76,"code":10863,"filename":7338,"language":79,"meta":80,"style":80},[22,62486,62487,62495,62503,62509,62515,62519,62531,62543,62547,62553,62557,62561,62565,62569,62575,62585,62593,62615,62619,62623,62627,62631,62637,62653,62665,62669,62673,62677,62683,62703,62707,62711,62715,62727,62731,62743,62753,62757,62761,62765,62773,62777,62785,62799,62813,62817,62825,62829,62835,62843,62851,62855,62861,62869,62877,62881,62885,62893,62901,62909],{"__ignoreMap":80},[84,62488,62489,62491,62493],{"class":86,"line":87},[84,62490,91],{"class":90},[84,62492,95],{"class":94},[84,62494,102],{"class":90},[84,62496,62497,62499,62501],{"class":86,"line":105},[84,62498,418],{"class":108},[84,62500,1870],{"class":108},[84,62502,175],{"class":90},[84,62504,62505,62507],{"class":86,"line":122},[84,62506,1896],{"class":98},[84,62508,1307],{"class":90},[84,62510,62511,62513],{"class":86,"line":129},[84,62512,1903],{"class":108},[84,62514,175],{"class":90},[84,62516,62517],{"class":86,"line":154},[84,62518,10898],{"class":90},[84,62520,62521,62523,62525,62527,62529],{"class":86,"line":159},[84,62522,3449],{"class":90},[84,62524,2862],{"class":135},[84,62526,10443],{"class":90},[84,62528,10446],{"class":118},[84,62530,2921],{"class":90},[84,62532,62533,62535,62537,62539,62541],{"class":86,"line":178},[84,62534,3449],{"class":90},[84,62536,2928],{"class":135},[84,62538,10443],{"class":90},[84,62540,10459],{"class":118},[84,62542,2968],{"class":90},[84,62544,62545],{"class":86,"line":190},[84,62546,10927],{"class":90},[84,62548,62549,62551],{"class":86,"line":196},[84,62550,10932],{"class":90},[84,62552,5467],{"class":135},[84,62554,62555],{"class":86,"line":201},[84,62556,1936],{"class":90},[84,62558,62559],{"class":86,"line":217},[84,62560,1941],{"class":90},[84,62562,62563],{"class":86,"line":227},[84,62564,126],{"emptyLinePlaceholder":125},[84,62566,62567],{"class":86,"line":232},[84,62568,1950],{"class":90},[84,62570,62571,62573],{"class":86,"line":237},[84,62572,10955],{"class":98},[84,62574,1307],{"class":90},[84,62576,62577,62579,62581,62583],{"class":86,"line":253},[84,62578,2022],{"class":135},[84,62580,10964],{"class":90},[84,62582,10533],{"class":98},[84,62584,1876],{"class":90},[84,62586,62587,62589,62591],{"class":86,"line":266},[84,62588,10973],{"class":90},[84,62590,10543],{"class":98},[84,62592,10546],{"class":90},[84,62594,62595,62597,62599,62601,62603,62605,62607,62609,62611,62613],{"class":86,"line":271},[84,62596,10982],{"class":90},[84,62598,10554],{"class":118},[84,62600,2151],{"class":135},[84,62602,764],{"class":118},[84,62604,10557],{"class":90},[84,62606,764],{"class":118},[84,62608,10566],{"class":135},[84,62610,10569],{"class":108},[84,62612,10572],{"class":135},[84,62614,10575],{"class":118},[84,62616,62617],{"class":86,"line":281},[84,62618,3638],{"class":90},[84,62620,62621],{"class":86,"line":286},[84,62622,1936],{"class":90},[84,62624,62625],{"class":86,"line":296},[84,62626,1941],{"class":90},[84,62628,62629],{"class":86,"line":315},[84,62630,126],{"emptyLinePlaceholder":125},[84,62632,62633,62635],{"class":86,"line":321},[84,62634,11021],{"class":98},[84,62636,1307],{"class":90},[84,62638,62639,62641,62643,62645,62647,62649,62651],{"class":86,"line":331},[84,62640,2146],{"class":108},[84,62642,1341],{"class":90},[84,62644,2151],{"class":135},[84,62646,11034],{"class":90},[84,62648,1468],{"class":108},[84,62650,11039],{"class":98},[84,62652,438],{"class":90},[84,62654,62655,62657,62659,62661,62663],{"class":86,"line":336},[84,62656,2022],{"class":135},[84,62658,11048],{"class":90},[84,62660,184],{"class":108},[84,62662,2078],{"class":135},[84,62664,11055],{"class":90},[84,62666,62667],{"class":86,"line":354},[84,62668,1936],{"class":90},[84,62670,62671],{"class":86,"line":360},[84,62672,1941],{"class":90},[84,62674,62675],{"class":86,"line":369},[84,62676,126],{"emptyLinePlaceholder":125},[84,62678,62679,62681],{"class":86,"line":1453},[84,62680,11072],{"class":98},[84,62682,1307],{"class":90},[84,62684,62685,62687,62689,62691,62693,62695,62697,62699,62701],{"class":86,"line":1462},[84,62686,2146],{"class":108},[84,62688,1341],{"class":90},[84,62690,1344],{"class":108},[84,62692,145],{"class":90},[84,62694,2151],{"class":135},[84,62696,11034],{"class":90},[84,62698,1468],{"class":108},[84,62700,11039],{"class":98},[84,62702,11095],{"class":90},[84,62704,62705],{"class":86,"line":1484},[84,62706,8954],{"class":108},[84,62708,62709],{"class":86,"line":1489},[84,62710,1936],{"class":90},[84,62712,62713],{"class":86,"line":1495},[84,62714,126],{"emptyLinePlaceholder":125},[84,62716,62717,62719,62721,62723,62725],{"class":86,"line":1500},[84,62718,3021],{"class":108},[84,62720,10655],{"class":135},[84,62722,139],{"class":108},[84,62724,2078],{"class":135},[84,62726,11055],{"class":90},[84,62728,62729],{"class":86,"line":1516},[84,62730,126],{"emptyLinePlaceholder":125},[84,62732,62733,62735,62737,62739,62741],{"class":86,"line":1533},[84,62734,2146],{"class":108},[84,62736,10671],{"class":90},[84,62738,10674],{"class":108},[84,62740,2078],{"class":135},[84,62742,11136],{"class":90},[84,62744,62745,62747,62749,62751],{"class":86,"line":1538},[84,62746,2022],{"class":135},[84,62748,11143],{"class":90},[84,62750,184],{"class":108},[84,62752,10687],{"class":90},[84,62754,62755],{"class":86,"line":1545},[84,62756,1936],{"class":90},[84,62758,62759],{"class":86,"line":1554},[84,62760,485],{"class":90},[84,62762,62763],{"class":86,"line":1563},[84,62764,193],{"class":90},[84,62766,62767,62769,62771],{"class":86,"line":1570},[84,62768,274],{"class":90},[84,62770,95],{"class":94},[84,62772,102],{"class":90},[84,62774,62775],{"class":86,"line":1588},[84,62776,126],{"emptyLinePlaceholder":125},[84,62778,62779,62781,62783],{"class":86,"line":1593},[84,62780,91],{"class":90},[84,62782,291],{"class":94},[84,62784,102],{"class":90},[84,62786,62787,62789,62791,62793,62795,62797],{"class":86,"line":1598},[84,62788,299],{"class":90},[84,62790,4898],{"class":94},[84,62792,1629],{"class":98},[84,62794,184],{"class":90},[84,62796,10728],{"class":118},[84,62798,102],{"class":90},[84,62800,62801,62803,62805,62807,62809,62811],{"class":86,"line":1607},[84,62802,1642],{"class":90},[84,62804,302],{"class":94},[84,62806,305],{"class":98},[84,62808,184],{"class":90},[84,62810,10743],{"class":118},[84,62812,102],{"class":90},[84,62814,62815],{"class":86,"line":1612},[84,62816,10750],{"class":90},[84,62818,62819,62821,62823],{"class":86,"line":1621},[84,62820,1734],{"class":90},[84,62822,302],{"class":94},[84,62824,102],{"class":90},[84,62826,62827],{"class":86,"line":1639},[84,62828,126],{"emptyLinePlaceholder":125},[84,62830,62831,62833],{"class":86,"line":1661},[84,62832,1642],{"class":90},[84,62834,10769],{"class":94},[84,62836,62837,62839,62841],{"class":86,"line":1666},[84,62838,10774],{"class":98},[84,62840,184],{"class":90},[84,62842,10779],{"class":118},[84,62844,62845,62847,62849],{"class":86,"line":1688},[84,62846,10784],{"class":98},[84,62848,184],{"class":90},[84,62850,10789],{"class":118},[84,62852,62853],{"class":86,"line":1703},[84,62854,10794],{"class":90},[84,62856,62857,62859],{"class":86,"line":1717},[84,62858,1691],{"class":90},[84,62860,7273],{"class":94},[84,62862,62863,62865,62867],{"class":86,"line":1731},[84,62864,7278],{"class":98},[84,62866,184],{"class":90},[84,62868,10809],{"class":118},[84,62870,62871,62873,62875],{"class":86,"line":1741},[84,62872,7288],{"class":98},[84,62874,184],{"class":90},[84,62876,10818],{"class":118},[84,62878,62879],{"class":86,"line":1746},[84,62880,5318],{"class":90},[84,62882,62883],{"class":86,"line":1763},[84,62884,10827],{"class":90},[84,62886,62887,62889,62891],{"class":86,"line":1772},[84,62888,4952],{"class":90},[84,62890,740],{"class":94},[84,62892,102],{"class":90},[84,62894,62895,62897,62899],{"class":86,"line":2283},[84,62896,1734],{"class":90},[84,62898,10842],{"class":94},[84,62900,102],{"class":90},[84,62902,62903,62905,62907],{"class":86,"line":2288},[84,62904,324],{"class":90},[84,62906,4898],{"class":94},[84,62908,102],{"class":90},[84,62910,62911,62913,62915],{"class":86,"line":2307},[84,62912,274],{"class":90},[84,62914,291],{"class":94},[84,62916,102],{"class":90},[737,62918,62919,62923],{},[740,62920,62921,11318],{},[22,62922,9896],{},[740,62924,62925,11323],{},[22,62926,9901],{},[11,62928,2406],{"id":2405},[737,62930,62931,62937,62943,62949,62953],{},[740,62932,62933,11332,62935,764],{},[22,62934,9841],{},[958,62936,11335],{},[740,62938,62939,11340,62941,11344],{},[22,62940,9844],{},[958,62942,11343],{},[740,62944,11347,62945,764],{},[958,62946,62947,11352],{},[22,62948,2526],{},[740,62950,11355,62951,11359],{},[958,62952,11358],{},[740,62954,11362,62955],{},[958,62956,11365,62957,11368],{},[22,62958,9844],{},[835,62960,11371],{},{"title":80,"searchDepth":105,"depth":105,"links":62962},[62963,62964,62965,62966,62967,62968,62969],{"id":10044,"depth":105,"text":11375},{"id":10081,"depth":105,"text":11377},{"id":10206,"depth":105,"text":11379},{"id":10228,"depth":105,"text":10229},{"id":10266,"depth":105,"text":10267},{"id":10279,"depth":105,"text":10280},{"id":10295,"depth":105,"text":10296},{"updatedAt":11389,"coverCaption":11390,"author":868,"keywords":62971},[870,9841,9844,10154,11392],[62973],{"headline":9832,"author":62974,"datePublished":11389,"@type":880},{"name":868,"@type":879},{"title":9832,"description":11387},[62977,62978,62979,62980,62981],{"tag":2453,"color":2454},{"tag":888,"color":889},{"tag":3942,"color":3943},{"tag":3945,"color":3946},{"tag":894,"color":895},{"id":11407,"title":11408,"body":62983,"cover":12645,"coverAlt":12646,"date":12647,"description":12648,"draft":852,"extension":853,"lab":882,"locale":864,"meta":64055,"navigation":125,"path":12654,"schemaOrg":64057,"seo":64060,"series":2447,"seriesDescription":2448,"seriesOrder":122,"seriesTitle":2449,"slug":882,"stem":12659,"tags":64061,"__hash__":12665},{"type":8,"value":62984,"toc":64037},[62985,62991,62995,62997,62999,63003,63005,63015,63017,63027,63029,63049,63057,63059,63061,63063,63073,63077,63085,63087,63089,63095,63117,63119,63121,63161,63171,63173,63177,63181,63183,63195,63199,63203,63209,63215,63219,63333,63339,63343,63345,63347,63363,63371,63501,63507,63509,63513,63519,63523,63525,63527,63531,63533,63537,63539,63541,63775,64007,64017,64019,64035],[11,62986,11414,62987,754,62989,909],{"id":11413},[22,62988,11417],{},[22,62990,1085],{},[15,62992,11422,62993,11425],{},[22,62994,1085],{},[15,62996,11428],{},[34,62998,947],{"id":946},[15,63000,11433,63001,764],{},[958,63002,11436],{},[15,63004,11439],{},[737,63006,63007,63011],{},[740,63008,63009,11446],{},[22,63010,11417],{},[740,63012,63013,11451],{},[22,63014,1085],{},[15,63016,11454],{},[737,63018,63019,63023],{},[740,63020,63021],{},[22,63022,11461],{},[740,63024,63025],{},[22,63026,1092],{},[15,63028,11468],{},[737,63030,63031,63037,63043],{},[740,63032,11473,63033,11477,63035,764],{},[958,63034,11476],{},[22,63036,11480],{},[740,63038,8403,63039,11486,63041,764],{},[958,63040,11485],{},[22,63042,1085],{},[740,63044,11491,63045,11494,63047,764],{},[22,63046,11417],{},[22,63048,11480],{},[15,63050,11499,63051,11508],{},[958,63052,11502,63053,1110,63055,11507],{},[22,63054,11417],{},[22,63056,1085],{},[34,63058,1013],{"id":1012},[15,63060,11513],{},[15,63062,4083],{},[737,63064,63065,63067,63069,63071],{},[740,63066,11520],{},[740,63068,11523],{},[740,63070,11526],{},[740,63072,11529],{},[15,63074,63075,11534],{},[22,63076,11417],{},[737,63078,63079,63081,63083],{},[740,63080,11539],{},[740,63082,11542],{},[740,63084,11545],{},[34,63086,1040],{"id":1039},[15,63088,11550],{},[15,63090,8425,63091,2488,63093,8430],{},[22,63092,11417],{},[22,63094,1085],{},[737,63096,63097,63101,63109,63113],{},[740,63098,11561,63099,764],{},[958,63100,11564],{},[740,63102,11567,63103,11570,63105,11573,63107,764],{},[22,63104,2526],{},[22,63106,2523],{},[958,63108,11576],{},[740,63110,11579,63111,11582],{},[22,63112,1085],{},[740,63114,11585,63115,764],{},[958,63116,11588],{},[15,63118,11591],{},[34,63120,8476],{"id":8475},[6160,63122,63123,63135],{},[6163,63124,63125],{},[6166,63126,63127,63129,63131,63133],{},[6169,63128,6171],{},[6169,63130,11604],{},[6169,63132,11607],{},[6169,63134,11610],{},[6182,63136,63137,63149],{},[6166,63138,63139,63143,63145,63147],{},[6187,63140,63141],{},[22,63142,11417],{},[6187,63144,11621],{},[6187,63146,11624],{},[6187,63148,11627],{},[6166,63150,63151,63155,63157,63159],{},[6187,63152,63153],{},[22,63154,1085],{},[6187,63156,11636],{},[6187,63158,11639],{},[6187,63160,11642],{},[15,63162,11645,63163,11648,63165,11651,63167,11654,63169,764],{},[22,63164,1085],{},[22,63166,11417],{},[22,63168,11417],{},[958,63170,11657],{},[34,63172,784],{"id":783},[1074,63174,11663,63175],{"id":11662},[22,63176,11417],{},[15,63178,11668,63179,11671],{},[22,63180,11417],{},[15,63182,11674],{},[737,63184,63185,63189,63193],{},[740,63186,63187],{},[22,63188,11681],{},[740,63190,63191],{},[22,63192,11686],{},[740,63194,11689],{},[15,63196,11692,63197,764],{},[22,63198,1085],{},[1074,63200,11698,63201,11701],{"id":11697},[22,63202,1085],{},[15,63204,11704,63205,11708,63207,11711],{},[22,63206,11707],{},[22,63208,1085],{},[15,63210,63211,11716,63213,11720],{},[22,63212,1085],{},[958,63214,11719],{},[15,63216,11723,63217,1203],{},[22,63218,1085],{},[74,63220,63221],{"className":76,"code":11728,"filename":10092,"language":79,"meta":80,"style":80},[22,63222,63223,63239,63249,63253,63265,63269,63279,63297,63311,63315,63319,63325],{"__ignoreMap":80},[84,63224,63225,63227,63229,63231,63233,63235,63237],{"class":86,"line":87},[84,63226,91],{"class":90},[84,63228,95],{"class":94},[84,63230,99],{"class":98},[84,63232,1161],{"class":98},[84,63234,184],{"class":90},[84,63236,1166],{"class":118},[84,63238,102],{"class":90},[84,63240,63241,63243,63245,63247],{"class":86,"line":105},[84,63242,109],{"class":108},[84,63244,112],{"class":90},[84,63246,115],{"class":108},[84,63248,119],{"class":118},[84,63250,63251],{"class":86,"line":122},[84,63252,126],{"emptyLinePlaceholder":125},[84,63254,63255,63257,63259,63261,63263],{"class":86,"line":129},[84,63256,132],{"class":108},[84,63258,11767],{"class":135},[84,63260,139],{"class":108},[84,63262,142],{"class":98},[84,63264,11774],{"class":90},[84,63266,63267],{"class":86,"line":154},[84,63268,126],{"emptyLinePlaceholder":125},[84,63270,63271,63273,63275,63277],{"class":86,"line":159},[84,63272,1299],{"class":108},[84,63274,421],{"class":108},[84,63276,11787],{"class":98},[84,63278,1307],{"class":90},[84,63280,63281,63283,63285,63287,63289,63291,63293,63295],{"class":86,"line":178},[84,63282,443],{"class":108},[84,63284,11796],{"class":135},[84,63286,139],{"class":108},[84,63288,1319],{"class":108},[84,63290,1322],{"class":98},[84,63292,145],{"class":90},[84,63294,11807],{"class":118},[84,63296,151],{"class":90},[84,63298,63299,63301,63303,63305,63307,63309],{"class":86,"line":190},[84,63300,11814],{"class":90},[84,63302,184],{"class":108},[84,63304,1319],{"class":108},[84,63306,11821],{"class":90},[84,63308,1391],{"class":98},[84,63310,635],{"class":90},[84,63312,63313],{"class":86,"line":196},[84,63314,193],{"class":90},[84,63316,63317],{"class":86,"line":201},[84,63318,126],{"emptyLinePlaceholder":125},[84,63320,63321,63323],{"class":86,"line":217},[84,63322,11838],{"class":98},[84,63324,635],{"class":90},[84,63326,63327,63329,63331],{"class":86,"line":227},[84,63328,274],{"class":90},[84,63330,95],{"class":94},[84,63332,102],{"class":90},[823,63334,63335],{},[15,63336,11853,63337,764],{},[22,63338,11480],{},[1074,63340,11859,63341,11862],{"id":11858},[22,63342,1085],{},[15,63344,11865],{},[15,63346,11868],{},[737,63348,63349,63351,63355,63359],{},[740,63350,11873],{},[740,63352,63353],{},[22,63354,6276],{},[740,63356,63357],{},[22,63358,8389],{},[740,63360,63361],{},[22,63362,8564],{},[15,63364,11888,63365,11891,63367,50,63369,764],{},[22,63366,1085],{},[22,63368,8275],{},[22,63370,9056],{},[74,63372,63373],{"className":76,"code":11898,"filename":10092,"language":79,"meta":80,"style":80},[22,63374,63375,63391,63401,63405,63415,63419,63429,63445,63457,63465,63469,63473,63483,63489,63493],{"__ignoreMap":80},[84,63376,63377,63379,63381,63383,63385,63387,63389],{"class":86,"line":87},[84,63378,91],{"class":90},[84,63380,95],{"class":94},[84,63382,99],{"class":98},[84,63384,1161],{"class":98},[84,63386,184],{"class":90},[84,63388,1166],{"class":118},[84,63390,102],{"class":90},[84,63392,63393,63395,63397,63399],{"class":86,"line":105},[84,63394,109],{"class":108},[84,63396,11923],{"class":90},[84,63398,115],{"class":108},[84,63400,119],{"class":118},[84,63402,63403],{"class":86,"line":122},[84,63404,126],{"emptyLinePlaceholder":125},[84,63406,63407,63409,63411,63413],{"class":86,"line":129},[84,63408,8751],{"class":108},[84,63410,11938],{"class":90},[84,63412,1203],{"class":108},[84,63414,1206],{"class":135},[84,63416,63417],{"class":86,"line":154},[84,63418,126],{"emptyLinePlaceholder":125},[84,63420,63421,63423,63425,63427],{"class":86,"line":159},[84,63422,1503],{"class":98},[84,63424,2992],{"class":90},[84,63426,172],{"class":108},[84,63428,175],{"class":90},[84,63430,63431,63433,63435,63437,63439,63441,63443],{"class":86,"line":178},[84,63432,11961],{"class":90},[84,63434,184],{"class":108},[84,63436,11966],{"class":90},[84,63438,6276],{"class":98},[84,63440,2992],{"class":90},[84,63442,172],{"class":108},[84,63444,175],{"class":90},[84,63446,63447,63449,63451,63453,63455],{"class":86,"line":190},[84,63448,3666],{"class":90},[84,63450,3138],{"class":98},[84,63452,145],{"class":90},[84,63454,11985],{"class":118},[84,63456,151],{"class":90},[84,63458,63459,63461,63463],{"class":86,"line":196},[84,63460,6888],{"class":90},[84,63462,11994],{"class":135},[84,63464,151],{"class":90},[84,63466,63467],{"class":86,"line":201},[84,63468,1492],{"class":90},[84,63470,63471],{"class":86,"line":217},[84,63472,126],{"emptyLinePlaceholder":125},[84,63474,63475,63477,63479,63481],{"class":86,"line":227},[84,63476,9056],{"class":98},[84,63478,2992],{"class":90},[84,63480,172],{"class":108},[84,63482,175],{"class":90},[84,63484,63485,63487],{"class":86,"line":232},[84,63486,6933],{"class":98},[84,63488,12021],{"class":90},[84,63490,63491],{"class":86,"line":237},[84,63492,1492],{"class":90},[84,63494,63495,63497,63499],{"class":86,"line":253},[84,63496,274],{"class":90},[84,63498,95],{"class":94},[84,63500,102],{"class":90},[823,63502,63503],{},[15,63504,12038,63505,764],{},[958,63506,12041],{},[1074,63508,12045],{"id":12044},[15,63510,12048,63511,764],{},[958,63512,12051],{},[15,63514,12054,63515,12057,63517,764],{},[22,63516,1085],{},[958,63518,12060],{},[15,63520,12063,63521,764],{},[22,63522,12066],{},[34,63524,2736],{"id":2735},[1074,63526,12072],{"id":12071},[15,63528,12075,63529,764],{},[22,63530,11681],{},[1074,63532,12081],{"id":12080},[15,63534,12084,63535,764],{},[22,63536,1085],{},[1074,63538,12090],{"id":12089},[15,63540,12093],{},[74,63542,63543],{"className":76,"code":12096,"filename":873,"language":79,"meta":80,"style":80},[22,63544,63545,63561,63571,63575,63599,63615,63619,63629,63637,63641,63645,63655,63663,63671,63675,63683,63687,63695,63709,63721,63725,63731,63739,63747,63755,63759,63767],{"__ignoreMap":80},[84,63546,63547,63549,63551,63553,63555,63557,63559],{"class":86,"line":87},[84,63548,91],{"class":90},[84,63550,95],{"class":94},[84,63552,99],{"class":98},[84,63554,1161],{"class":98},[84,63556,184],{"class":90},[84,63558,1166],{"class":118},[84,63560,102],{"class":90},[84,63562,63563,63565,63567,63569],{"class":86,"line":105},[84,63564,109],{"class":108},[84,63566,12121],{"class":90},[84,63568,115],{"class":108},[84,63570,119],{"class":118},[84,63572,63573],{"class":86,"line":122},[84,63574,126],{"emptyLinePlaceholder":125},[84,63576,63577,63579,63581,63583,63585,63587,63589,63591,63593,63595,63597],{"class":86,"line":129},[84,63578,132],{"class":108},[84,63580,12136],{"class":135},[84,63582,139],{"class":108},[84,63584,142],{"class":98},[84,63586,91],{"class":90},[84,63588,12145],{"class":98},[84,63590,1261],{"class":108},[84,63592,1264],{"class":135},[84,63594,1267],{"class":90},[84,63596,1270],{"class":135},[84,63598,151],{"class":90},[84,63600,63601,63603,63605,63607,63609,63611,63613],{"class":86,"line":154},[84,63602,132],{"class":108},[84,63604,6494],{"class":135},[84,63606,139],{"class":108},[84,63608,142],{"class":98},[84,63610,145],{"class":90},[84,63612,12170],{"class":118},[84,63614,151],{"class":90},[84,63616,63617],{"class":86,"line":159},[84,63618,126],{"emptyLinePlaceholder":125},[84,63620,63621,63623,63625,63627],{"class":86,"line":178},[84,63622,12181],{"class":98},[84,63624,2992],{"class":90},[84,63626,172],{"class":108},[84,63628,175],{"class":90},[84,63630,63631,63633,63635],{"class":86,"line":190},[84,63632,6711],{"class":90},[84,63634,184],{"class":108},[84,63636,12196],{"class":118},[84,63638,63639],{"class":86,"line":196},[84,63640,1492],{"class":90},[84,63642,63643],{"class":86,"line":201},[84,63644,126],{"emptyLinePlaceholder":125},[84,63646,63647,63649,63651,63653],{"class":86,"line":217},[84,63648,1503],{"class":98},[84,63650,2992],{"class":90},[84,63652,172],{"class":108},[84,63654,175],{"class":90},[84,63656,63657,63659,63661],{"class":86,"line":227},[84,63658,12219],{"class":90},[84,63660,12222],{"class":98},[84,63662,635],{"class":90},[84,63664,63665,63667,63669],{"class":86,"line":232},[84,63666,6711],{"class":90},[84,63668,184],{"class":108},[84,63670,12233],{"class":118},[84,63672,63673],{"class":86,"line":237},[84,63674,1492],{"class":90},[84,63676,63677,63679,63681],{"class":86,"line":253},[84,63678,274],{"class":90},[84,63680,95],{"class":94},[84,63682,102],{"class":90},[84,63684,63685],{"class":86,"line":266},[84,63686,126],{"emptyLinePlaceholder":125},[84,63688,63689,63691,63693],{"class":86,"line":271},[84,63690,91],{"class":90},[84,63692,291],{"class":94},[84,63694,102],{"class":90},[84,63696,63697,63699,63701,63703,63705,63707],{"class":86,"line":281},[84,63698,299],{"class":90},[84,63700,4898],{"class":94},[84,63702,1629],{"class":98},[84,63704,184],{"class":90},[84,63706,12270],{"class":118},[84,63708,102],{"class":90},[84,63710,63711,63713,63715,63717,63719],{"class":86,"line":286},[84,63712,1642],{"class":90},[84,63714,15],{"class":94},[84,63716,7135],{"class":90},[84,63718,15],{"class":94},[84,63720,102],{"class":90},[84,63722,63723],{"class":86,"line":296},[84,63724,126],{"emptyLinePlaceholder":125},[84,63726,63727,63729],{"class":86,"line":315},[84,63728,1642],{"class":90},[84,63730,12295],{"class":94},[84,63732,63733,63735,63737],{"class":86,"line":321},[84,63734,10774],{"class":98},[84,63736,184],{"class":90},[84,63738,12304],{"class":118},[84,63740,63741,63743,63745],{"class":86,"line":331},[84,63742,12309],{"class":98},[84,63744,184],{"class":90},[84,63746,12314],{"class":118},[84,63748,63749,63751,63753],{"class":86,"line":336},[84,63750,12319],{"class":98},[84,63752,184],{"class":90},[84,63754,12324],{"class":118},[84,63756,63757],{"class":86,"line":354},[84,63758,10794],{"class":90},[84,63760,63761,63763,63765],{"class":86,"line":360},[84,63762,324],{"class":90},[84,63764,4898],{"class":94},[84,63766,102],{"class":90},[84,63768,63769,63771,63773],{"class":86,"line":369},[84,63770,274],{"class":90},[84,63772,291],{"class":94},[84,63774,102],{"class":90},[74,63776,63777],{"className":76,"code":12347,"filename":1782,"language":79,"meta":80,"style":80},[22,63778,63779,63787,63795,63801,63807,63813,63817,63821,63825,63831,63841,63845,63849,63855,63865,63869,63885,63895,63899,63903,63907,63915,63919,63927,63941,63953,63957,63963,63971,63979,63987,63991,63999],{"__ignoreMap":80},[84,63780,63781,63783,63785],{"class":86,"line":87},[84,63782,91],{"class":90},[84,63784,95],{"class":94},[84,63786,102],{"class":90},[84,63788,63789,63791,63793],{"class":86,"line":105},[84,63790,418],{"class":108},[84,63792,1870],{"class":108},[84,63794,175],{"class":90},[84,63796,63797,63799],{"class":86,"line":122},[84,63798,1896],{"class":98},[84,63800,1307],{"class":90},[84,63802,63803,63805],{"class":86,"line":129},[84,63804,1903],{"class":108},[84,63806,175],{"class":90},[84,63808,63809,63811],{"class":86,"line":154},[84,63810,7387],{"class":90},[84,63812,12384],{"class":118},[84,63814,63815],{"class":86,"line":159},[84,63816,1936],{"class":90},[84,63818,63819],{"class":86,"line":178},[84,63820,1941],{"class":90},[84,63822,63823],{"class":86,"line":190},[84,63824,126],{"emptyLinePlaceholder":125},[84,63826,63827,63829],{"class":86,"line":196},[84,63828,12401],{"class":98},[84,63830,1307],{"class":90},[84,63832,63833,63835,63837,63839],{"class":86,"line":201},[84,63834,5499],{"class":135},[84,63836,7588],{"class":90},[84,63838,184],{"class":108},[84,63840,12414],{"class":118},[84,63842,63843],{"class":86,"line":217},[84,63844,1941],{"class":90},[84,63846,63847],{"class":86,"line":227},[84,63848,126],{"emptyLinePlaceholder":125},[84,63850,63851,63853],{"class":86,"line":232},[84,63852,7551],{"class":98},[84,63854,1307],{"class":90},[84,63856,63857,63859,63861,63863],{"class":86,"line":237},[84,63858,5499],{"class":135},[84,63860,7588],{"class":90},[84,63862,184],{"class":108},[84,63864,12233],{"class":118},[84,63866,63867],{"class":86,"line":253},[84,63868,126],{"emptyLinePlaceholder":125},[84,63870,63871,63873,63875,63877,63879,63881,63883],{"class":86,"line":266},[84,63872,2146],{"class":108},[84,63874,1341],{"class":90},[84,63876,2151],{"class":135},[84,63878,12453],{"class":90},[84,63880,1468],{"class":108},[84,63882,12458],{"class":98},[84,63884,438],{"class":90},[84,63886,63887,63889,63891,63893],{"class":86,"line":271},[84,63888,2022],{"class":135},[84,63890,12467],{"class":90},[84,63892,12222],{"class":98},[84,63894,635],{"class":90},[84,63896,63897],{"class":86,"line":281},[84,63898,1936],{"class":90},[84,63900,63901],{"class":86,"line":286},[84,63902,485],{"class":90},[84,63904,63905],{"class":86,"line":296},[84,63906,193],{"class":90},[84,63908,63909,63911,63913],{"class":86,"line":315},[84,63910,274],{"class":90},[84,63912,95],{"class":94},[84,63914,102],{"class":90},[84,63916,63917],{"class":86,"line":321},[84,63918,126],{"emptyLinePlaceholder":125},[84,63920,63921,63923,63925],{"class":86,"line":331},[84,63922,91],{"class":90},[84,63924,291],{"class":94},[84,63926,102],{"class":90},[84,63928,63929,63931,63933,63935,63937,63939],{"class":86,"line":336},[84,63930,299],{"class":90},[84,63932,4898],{"class":94},[84,63934,1629],{"class":98},[84,63936,184],{"class":90},[84,63938,12270],{"class":118},[84,63940,102],{"class":90},[84,63942,63943,63945,63947,63949,63951],{"class":86,"line":354},[84,63944,1642],{"class":90},[84,63946,15],{"class":94},[84,63948,7135],{"class":90},[84,63950,15],{"class":94},[84,63952,102],{"class":90},[84,63954,63955],{"class":86,"line":360},[84,63956,126],{"emptyLinePlaceholder":125},[84,63958,63959,63961],{"class":86,"line":369},[84,63960,1642],{"class":90},[84,63962,12295],{"class":94},[84,63964,63965,63967,63969],{"class":86,"line":1453},[84,63966,10774],{"class":98},[84,63968,184],{"class":90},[84,63970,12304],{"class":118},[84,63972,63973,63975,63977],{"class":86,"line":1462},[84,63974,12309],{"class":98},[84,63976,184],{"class":90},[84,63978,12314],{"class":118},[84,63980,63981,63983,63985],{"class":86,"line":1484},[84,63982,12319],{"class":98},[84,63984,184],{"class":90},[84,63986,12324],{"class":118},[84,63988,63989],{"class":86,"line":1489},[84,63990,10794],{"class":90},[84,63992,63993,63995,63997],{"class":86,"line":1495},[84,63994,324],{"class":90},[84,63996,4898],{"class":94},[84,63998,102],{"class":90},[84,64000,64001,64003,64005],{"class":86,"line":1500},[84,64002,274],{"class":90},[84,64004,291],{"class":94},[84,64006,102],{"class":90},[823,64008,64009],{},[15,64010,12588,64011,12591,64013,12594,64015,12597],{},[22,64012,11461],{},[22,64014,11681],{},[22,64016,1092],{},[34,64018,2406],{"id":2405},[737,64020,64021,64025,64031],{},[740,64022,64023,12606],{},[22,64024,11417],{},[740,64026,64027,12611,64029,12615],{},[22,64028,1085],{},[958,64030,12614],{},[740,64032,12618,64033,764],{},[958,64034,12621],{},[835,64036,11371],{},{"title":80,"searchDepth":105,"depth":105,"links":64038},[64039,64040,64041,64042,64043,64049,64054],{"id":946,"depth":105,"text":947},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":8475,"depth":105,"text":8476},{"id":783,"depth":105,"text":784,"children":64044},[64045,64046,64047,64048],{"id":11662,"depth":122,"text":12633},{"id":11697,"depth":122,"text":12635},{"id":11858,"depth":122,"text":12637},{"id":12044,"depth":122,"text":12045},{"id":2735,"depth":105,"text":2736,"children":64050},[64051,64052,64053],{"id":12071,"depth":122,"text":12072},{"id":12080,"depth":122,"text":12081},{"id":12089,"depth":122,"text":12090},{"id":2405,"depth":105,"text":2406},{"updatedAt":12650,"coverCaption":12651,"author":868,"keywords":64056},[870,11417,1085,1503,12653],[64058],{"headline":11408,"author":64059,"datePublished":12650,"@type":880},{"name":868,"@type":879},{"title":11408,"description":12648},[64062,64063,64064,64065],{"tag":2453,"color":2454},{"tag":888,"color":889},{"tag":3942,"color":3943},{"tag":894,"color":895},{"id":12667,"title":12668,"body":64067,"cover":13799,"coverAlt":13800,"date":13801,"description":13802,"draft":852,"extension":853,"lab":882,"locale":864,"meta":65047,"navigation":125,"path":13807,"schemaOrg":65049,"seo":65052,"series":2447,"seriesDescription":2448,"seriesOrder":105,"seriesTitle":2449,"slug":882,"stem":13812,"tags":65053,"__hash__":13818},{"type":8,"value":64068,"toc":65033},[64069,64077,64081,64087,64093,64095,64099,64115,64127,64129,64149,64153,64159,64161,64175,64179,64183,64241,64245,64253,64255,64263,64369,64373,64379,64383,64403,64409,64547,64555,64607,64609,64615,64621,64623,64633,64637,64645,64647,64651,64653,64657,64837,65007,65009,65031],[11,64070,12674,64071,754,64073,754,64075,909],{"id":12673},[22,64072,12677],{},[22,64074,12680],{},[22,64076,11480],{},[15,64078,12685,64079],{},[958,64080,12688],{},[15,64082,12691,64083,12694,64085,764],{},[958,64084,1782],{},[958,64086,873],{},[15,64088,12699,64089,12703,64091,764],{},[958,64090,12702],{},[958,64092,12706],{},[34,64094,12710],{"id":12709},[15,64096,12713,64097,12716],{},[958,64098,1782],{},[10842,64100,64101,64105,64109],{},[740,64102,64103],{},[22,64104,12677],{},[740,64106,64107],{},[22,64108,12680],{},[740,64110,12729,64111,6014,64113,909],{},[22,64112,11417],{},[22,64114,1085],{},[15,64116,12736,64117,12739,64119,12742,64121,12746,64123,2488,64125,764],{},[958,64118,873],{},[22,64120,4013],{},[958,64122,12745],{},[22,64124,12677],{},[22,64126,12680],{},[15,64128,12753],{},[737,64130,64131,64137,64143],{},[740,64132,64133,12762],{},[958,64134,64135],{},[22,64136,12677],{},[740,64138,64139,12769],{},[958,64140,64141],{},[22,64142,12680],{},[740,64144,64145,12776],{},[958,64146,64147],{},[22,64148,11480],{},[34,64150,64151,12782],{"id":12779},[22,64152,12677],{},[15,64154,64155,10058,64157,764],{},[22,64156,12677],{},[958,64158,12789],{},[15,64160,12792],{},[737,64162,64163,64167,64171],{},[740,64164,64165],{},[22,64166,12799],{},[740,64168,64169],{},[22,64170,2523],{},[740,64172,64173],{},[22,64174,12808],{},[15,64176,12811,64177,12815],{},[958,64178,12814],{},[15,64180,12818,64181,764],{},[958,64182,12821],{},[74,64184,64186],{"className":76,"code":12824,"filename":10092,"highlights":64185,"language":79,"meta":80,"style":80},[122,129,154],[22,64187,64188,64196,64204,64211,64224,64229,64233],{"__ignoreMap":80},[84,64189,64190,64192,64194],{"class":86,"line":87},[84,64191,91],{"class":90},[84,64193,95],{"class":94},[84,64195,102],{"class":90},[84,64197,64198,64200,64202],{"class":86,"line":105},[84,64199,418],{"class":108},[84,64201,1870],{"class":108},[84,64203,175],{"class":90},[84,64205,64207,64209],{"class":64206,"line":122},[86,10151],[84,64208,12849],{"class":98},[84,64210,1307],{"class":90},[84,64212,64214,64216,64218,64220,64222],{"class":64213,"line":129},[86,10151],[84,64215,3666],{"class":90},[84,64217,3138],{"class":98},[84,64219,145],{"class":90},[84,64221,12863],{"class":118},[84,64223,151],{"class":90},[84,64225,64227],{"class":64226,"line":154},[86,10151],[84,64228,485],{"class":90},[84,64230,64231],{"class":86,"line":159},[84,64232,193],{"class":90},[84,64234,64235,64237,64239],{"class":86,"line":178},[84,64236,274],{"class":90},[84,64238,95],{"class":94},[84,64240,102],{"class":90},[34,64242,64243,12888],{"id":12885},[22,64244,12680],{},[15,64246,12891,64247,12894,64249,12898,64251,764],{},[22,64248,12680],{},[958,64250,12897],{},[958,64252,12901],{},[15,64254,12904],{},[737,64256,64257,64259,64261],{},[740,64258,12909],{},[740,64260,12912],{},[740,64262,12915],{},[74,64264,64266],{"className":76,"code":12918,"filename":10092,"highlights":64265,"language":79,"meta":80,"style":80},[190,196,201],[22,64267,64268,64276,64284,64290,64296,64300,64304,64308,64317,64352,64357,64361],{"__ignoreMap":80},[84,64269,64270,64272,64274],{"class":86,"line":87},[84,64271,91],{"class":90},[84,64273,95],{"class":94},[84,64275,102],{"class":90},[84,64277,64278,64280,64282],{"class":86,"line":105},[84,64279,418],{"class":108},[84,64281,1870],{"class":108},[84,64283,175],{"class":90},[84,64285,64286,64288],{"class":86,"line":122},[84,64287,1896],{"class":98},[84,64289,1307],{"class":90},[84,64291,64292,64294],{"class":86,"line":129},[84,64293,1903],{"class":108},[84,64295,175],{"class":90},[84,64297,64298],{"class":86,"line":154},[84,64299,12954],{"class":90},[84,64301,64302],{"class":86,"line":159},[84,64303,1936],{"class":90},[84,64305,64306],{"class":86,"line":178},[84,64307,1941],{"class":90},[84,64309,64311,64313,64315],{"class":64310,"line":190},[86,10151],[84,64312,2058],{"class":108},[84,64314,12970],{"class":98},[84,64316,1307],{"class":90},[84,64318,64320,64322,64324,64326,64328,64330,64332,64334,64336,64338,64340,64342,64344,64346,64348,64350],{"class":64319,"line":196},[86,10151],[84,64321,5499],{"class":135},[84,64323,12980],{"class":90},[84,64325,184],{"class":108},[84,64327,1319],{"class":108},[84,64329,1322],{"class":98},[84,64331,145],{"class":90},[84,64333,11807],{"class":118},[84,64335,2686],{"class":90},[84,64337,12995],{"class":98},[84,64339,3120],{"class":90},[84,64341,13000],{"class":429},[84,64343,3126],{"class":90},[84,64345,172],{"class":108},[84,64347,13007],{"class":90},[84,64349,1391],{"class":98},[84,64351,3054],{"class":90},[84,64353,64355],{"class":64354,"line":201},[86,10151],[84,64356,485],{"class":90},[84,64358,64359],{"class":86,"line":217},[84,64360,193],{"class":90},[84,64362,64363,64365,64367],{"class":86,"line":227},[84,64364,274],{"class":90},[84,64366,95],{"class":94},[84,64368,102],{"class":90},[34,64370,64371,13034],{"id":13031},[22,64372,11480],{},[15,64374,13037,64375,754,64377,13042],{},[958,64376,873],{},[22,64378,4013],{},[15,64380,13045,64381,13048],{},[22,64382,11480],{},[737,64384,64385,64389,64393,64397,64401],{},[740,64386,64387],{},[22,64388,24],{},[740,64390,64391],{},[22,64392,13059],{},[740,64394,64395],{},[22,64396,2523],{},[740,64398,64399],{},[22,64400,2526],{},[740,64402,13070],{},[15,64404,13073,64405,10058,64407,13079],{},[22,64406,11480],{},[958,64408,13078],{},[74,64410,64412],{"className":76,"code":13082,"filename":10092,"highlights":64411,"language":79,"meta":80,"style":80},[178],[22,64413,64414,64424,64434,64438,64454,64476,64480,64493,64501,64505,64513,64527,64531,64539],{"__ignoreMap":80},[84,64415,64416,64418,64420,64422],{"class":86,"line":87},[84,64417,91],{"class":90},[84,64419,95],{"class":94},[84,64421,99],{"class":98},[84,64423,102],{"class":90},[84,64425,64426,64428,64430,64432],{"class":86,"line":105},[84,64427,109],{"class":108},[84,64429,13102],{"class":90},[84,64431,115],{"class":108},[84,64433,119],{"class":118},[84,64435,64436],{"class":86,"line":122},[84,64437,126],{"emptyLinePlaceholder":125},[84,64439,64440,64442,64444,64446,64448,64450,64452],{"class":86,"line":129},[84,64441,132],{"class":108},[84,64443,10133],{"class":135},[84,64445,139],{"class":108},[84,64447,142],{"class":98},[84,64449,145],{"class":90},[84,64451,4320],{"class":135},[84,64453,151],{"class":90},[84,64455,64456,64458,64460,64462,64464,64466,64468,64470,64472,64474],{"class":86,"line":154},[84,64457,132],{"class":108},[84,64459,13133],{"class":135},[84,64461,139],{"class":108},[84,64463,2989],{"class":98},[84,64465,2992],{"class":90},[84,64467,172],{"class":108},[84,64469,13144],{"class":90},[84,64471,13147],{"class":108},[84,64473,13150],{"class":135},[84,64475,151],{"class":90},[84,64477,64478],{"class":86,"line":159},[84,64479,126],{"emptyLinePlaceholder":125},[84,64481,64483,64485,64487,64489,64491],{"class":64482,"line":178},[86,10151],[84,64484,13162],{"class":90},[84,64486,3138],{"class":98},[84,64488,145],{"class":90},[84,64490,13169],{"class":118},[84,64492,151],{"class":90},[84,64494,64495,64497,64499],{"class":86,"line":190},[84,64496,274],{"class":90},[84,64498,95],{"class":94},[84,64500,102],{"class":90},[84,64502,64503],{"class":86,"line":196},[84,64504,126],{"emptyLinePlaceholder":125},[84,64506,64507,64509,64511],{"class":86,"line":201},[84,64508,91],{"class":90},[84,64510,291],{"class":94},[84,64512,102],{"class":90},[84,64514,64515,64517,64519,64521,64523,64525],{"class":86,"line":217},[84,64516,299],{"class":90},[84,64518,302],{"class":94},[84,64520,305],{"class":98},[84,64522,184],{"class":90},[84,64524,13204],{"class":118},[84,64526,102],{"class":90},[84,64528,64529],{"class":86,"line":227},[84,64530,13211],{"class":90},[84,64532,64533,64535,64537],{"class":86,"line":232},[84,64534,324],{"class":90},[84,64536,302],{"class":94},[84,64538,102],{"class":90},[84,64540,64541,64543,64545],{"class":86,"line":237},[84,64542,274],{"class":90},[84,64544,291],{"class":94},[84,64546,102],{"class":90},[34,64548,13231,64549,13234,64551,13234,64553],{"id":13230},[22,64550,12677],{},[22,64552,12680],{},[22,64554,11480],{},[6160,64556,64557,64569],{},[6163,64558,64559],{},[6166,64560,64561,64563,64565,64567],{},[6169,64562,13247],{},[6169,64564,13250],{},[6169,64566,13253],{},[6169,64568,13256],{},[6182,64570,64571,64583,64595],{},[6166,64572,64573,64577,64579,64581],{},[6187,64574,64575],{},[22,64576,12677],{},[6187,64578,13267],{},[6187,64580,13270],{},[6187,64582,13273],{},[6166,64584,64585,64589,64591,64593],{},[6187,64586,64587],{},[22,64588,12680],{},[6187,64590,13267],{},[6187,64592,13284],{},[6187,64594,13287],{},[6166,64596,64597,64601,64603,64605],{},[6187,64598,64599],{},[22,64600,11480],{},[6187,64602,13296],{},[6187,64604,13299],{},[6187,64606,13302],{},[34,64608,13306],{"id":13305},[1074,64610,13310,64611,13313,64613],{"id":13309},[22,64612,12680],{},[22,64614,11480],{},[15,64616,13318,64617,13321,64619,13324],{},[22,64618,12680],{},[22,64620,11480],{},[15,64622,13327],{},[737,64624,64625,64629],{},[740,64626,64627,13334],{},[22,64628,1085],{},[740,64630,64631,13339],{},[22,64632,1503],{},[1074,64634,13343,64635,13346],{"id":13342},[22,64636,12677],{},[15,64638,13349,64639,13353,64641,13356,64643,13359],{},[958,64640,13352],{},[22,64642,11480],{},[22,64644,12680],{},[1074,64646,13363],{"id":13362},[15,64648,13366,64649,13370],{},[958,64650,13369],{},[34,64652,13374],{"id":13373},[15,64654,13377,64655,13381],{},[958,64656,13380],{},[74,64658,64659],{"className":76,"code":13384,"filename":873,"language":79,"meta":80,"style":80},[22,64660,64661,64671,64681,64685,64697,64701,64711,64743,64747,64751,64755,64761,64769,64773,64781,64789,64809,64813,64821,64829],{"__ignoreMap":80},[84,64662,64663,64665,64667,64669],{"class":86,"line":87},[84,64664,91],{"class":90},[84,64666,95],{"class":94},[84,64668,99],{"class":98},[84,64670,102],{"class":90},[84,64672,64673,64675,64677,64679],{"class":86,"line":105},[84,64674,109],{"class":108},[84,64676,112],{"class":90},[84,64678,115],{"class":108},[84,64680,119],{"class":118},[84,64682,64683],{"class":86,"line":122},[84,64684,126],{"emptyLinePlaceholder":125},[84,64686,64687,64689,64691,64693,64695],{"class":86,"line":129},[84,64688,132],{"class":108},[84,64690,11767],{"class":135},[84,64692,139],{"class":108},[84,64694,142],{"class":98},[84,64696,11774],{"class":90},[84,64698,64699],{"class":86,"line":154},[84,64700,126],{"emptyLinePlaceholder":125},[84,64702,64703,64705,64707,64709],{"class":86,"line":159},[84,64704,1299],{"class":108},[84,64706,421],{"class":108},[84,64708,11787],{"class":98},[84,64710,1307],{"class":90},[84,64712,64713,64715,64717,64719,64721,64723,64725,64727,64729,64731,64733,64735,64737,64739,64741],{"class":86,"line":178},[84,64714,11814],{"class":90},[84,64716,184],{"class":108},[84,64718,1319],{"class":108},[84,64720,1322],{"class":98},[84,64722,145],{"class":90},[84,64724,11807],{"class":118},[84,64726,2686],{"class":90},[84,64728,12995],{"class":98},[84,64730,3120],{"class":90},[84,64732,13000],{"class":429},[84,64734,3126],{"class":90},[84,64736,172],{"class":108},[84,64738,13007],{"class":90},[84,64740,1391],{"class":98},[84,64742,3054],{"class":90},[84,64744,64745],{"class":86,"line":190},[84,64746,193],{"class":90},[84,64748,64749],{"class":86,"line":196},[84,64750,126],{"emptyLinePlaceholder":125},[84,64752,64753],{"class":86,"line":201},[84,64754,13482],{"class":13481},[84,64756,64757,64759],{"class":86,"line":217},[84,64758,11838],{"class":98},[84,64760,635],{"class":90},[84,64762,64763,64765,64767],{"class":86,"line":227},[84,64764,274],{"class":90},[84,64766,95],{"class":94},[84,64768,102],{"class":90},[84,64770,64771],{"class":86,"line":232},[84,64772,126],{"emptyLinePlaceholder":125},[84,64774,64775,64777,64779],{"class":86,"line":237},[84,64776,91],{"class":90},[84,64778,291],{"class":94},[84,64780,102],{"class":90},[84,64782,64783,64785,64787],{"class":86,"line":253},[84,64784,299],{"class":90},[84,64786,737],{"class":94},[84,64788,102],{"class":90},[84,64790,64791,64793,64795,64797,64799,64801,64803,64805,64807],{"class":86,"line":266},[84,64792,1642],{"class":90},[84,64794,740],{"class":94},[84,64796,13525],{"class":98},[84,64798,184],{"class":90},[84,64800,13530],{"class":118},[84,64802,5092],{"class":98},[84,64804,184],{"class":90},[84,64806,13537],{"class":118},[84,64808,102],{"class":90},[84,64810,64811],{"class":86,"line":271},[84,64812,13544],{"class":90},[84,64814,64815,64817,64819],{"class":86,"line":281},[84,64816,1734],{"class":90},[84,64818,740],{"class":94},[84,64820,102],{"class":90},[84,64822,64823,64825,64827],{"class":86,"line":286},[84,64824,324],{"class":90},[84,64826,737],{"class":94},[84,64828,102],{"class":90},[84,64830,64831,64833,64835],{"class":86,"line":296},[84,64832,274],{"class":90},[84,64834,291],{"class":94},[84,64836,102],{"class":90},[74,64838,64839],{"className":76,"code":13571,"filename":1782,"language":79,"meta":80,"style":80},[22,64840,64841,64849,64857,64863,64869,64873,64877,64881,64889,64923,64927,64931,64939,64943,64951,64959,64979,64983,64991,64999],{"__ignoreMap":80},[84,64842,64843,64845,64847],{"class":86,"line":87},[84,64844,91],{"class":90},[84,64846,95],{"class":94},[84,64848,102],{"class":90},[84,64850,64851,64853,64855],{"class":86,"line":105},[84,64852,418],{"class":108},[84,64854,1870],{"class":108},[84,64856,175],{"class":90},[84,64858,64859,64861],{"class":86,"line":122},[84,64860,1896],{"class":98},[84,64862,1307],{"class":90},[84,64864,64865,64867],{"class":86,"line":129},[84,64866,1903],{"class":108},[84,64868,175],{"class":90},[84,64870,64871],{"class":86,"line":154},[84,64872,12954],{"class":90},[84,64874,64875],{"class":86,"line":159},[84,64876,1936],{"class":90},[84,64878,64879],{"class":86,"line":178},[84,64880,1941],{"class":90},[84,64882,64883,64885,64887],{"class":86,"line":190},[84,64884,2058],{"class":108},[84,64886,12970],{"class":98},[84,64888,1307],{"class":90},[84,64890,64891,64893,64895,64897,64899,64901,64903,64905,64907,64909,64911,64913,64915,64917,64919,64921],{"class":86,"line":196},[84,64892,5499],{"class":135},[84,64894,12980],{"class":90},[84,64896,184],{"class":108},[84,64898,1319],{"class":108},[84,64900,1322],{"class":98},[84,64902,145],{"class":90},[84,64904,11807],{"class":118},[84,64906,2686],{"class":90},[84,64908,12995],{"class":98},[84,64910,3120],{"class":90},[84,64912,13000],{"class":429},[84,64914,3126],{"class":90},[84,64916,172],{"class":108},[84,64918,13007],{"class":90},[84,64920,1391],{"class":98},[84,64922,3054],{"class":90},[84,64924,64925],{"class":86,"line":201},[84,64926,485],{"class":90},[84,64928,64929],{"class":86,"line":217},[84,64930,193],{"class":90},[84,64932,64933,64935,64937],{"class":86,"line":227},[84,64934,274],{"class":90},[84,64936,95],{"class":94},[84,64938,102],{"class":90},[84,64940,64941],{"class":86,"line":232},[84,64942,126],{"emptyLinePlaceholder":125},[84,64944,64945,64947,64949],{"class":86,"line":237},[84,64946,91],{"class":90},[84,64948,291],{"class":94},[84,64950,102],{"class":90},[84,64952,64953,64955,64957],{"class":86,"line":253},[84,64954,299],{"class":90},[84,64956,737],{"class":94},[84,64958,102],{"class":90},[84,64960,64961,64963,64965,64967,64969,64971,64973,64975,64977],{"class":86,"line":266},[84,64962,1642],{"class":90},[84,64964,740],{"class":94},[84,64966,13525],{"class":98},[84,64968,184],{"class":90},[84,64970,13530],{"class":118},[84,64972,5092],{"class":98},[84,64974,184],{"class":90},[84,64976,13537],{"class":118},[84,64978,102],{"class":90},[84,64980,64981],{"class":86,"line":271},[84,64982,13544],{"class":90},[84,64984,64985,64987,64989],{"class":86,"line":281},[84,64986,1734],{"class":90},[84,64988,740],{"class":94},[84,64990,102],{"class":90},[84,64992,64993,64995,64997],{"class":86,"line":286},[84,64994,324],{"class":90},[84,64996,737],{"class":94},[84,64998,102],{"class":90},[84,65000,65001,65003,65005],{"class":86,"line":296},[84,65002,274],{"class":90},[84,65004,291],{"class":94},[84,65006,102],{"class":90},[34,65008,13743],{"id":13742},[737,65010,65011,65017,65025],{},[740,65012,13748,65013,13754],{},[958,65014,65015,13753],{},[22,65016,11480],{},[740,65018,13757,65019,13760,65021,13766],{},[958,65020,1782],{},[958,65022,65023,13765],{},[22,65024,12680],{},[740,65026,13769,65027,13775],{},[958,65028,65029,13774],{},[22,65030,12677],{},[835,65032,13778],{},{"title":80,"searchDepth":105,"depth":105,"links":65034},[65035,65036,65037,65038,65039,65040,65045,65046],{"id":12709,"depth":105,"text":12710},{"id":12779,"depth":105,"text":13783},{"id":12885,"depth":105,"text":13785},{"id":13031,"depth":105,"text":13787},{"id":13230,"depth":105,"text":13789},{"id":13305,"depth":105,"text":13306,"children":65041},[65042,65043,65044],{"id":13309,"depth":122,"text":13793},{"id":13342,"depth":122,"text":13795},{"id":13362,"depth":122,"text":13363},{"id":13373,"depth":105,"text":13374},{"id":13742,"depth":105,"text":13743},{"updatedAt":13804,"coverCaption":13805,"author":868,"keywords":65048},[870,12677,12680,11480,873],[65050],{"headline":12668,"author":65051,"datePublished":13804,"@type":880},{"name":868,"@type":879},{"title":12668,"description":13802},[65054,65055,65056,65057],{"tag":2453,"color":2454},{"tag":888,"color":889},{"tag":3945,"color":3946},{"tag":894,"color":895},{"id":13820,"title":13821,"body":65059,"cover":16412,"coverAlt":13821,"date":16413,"description":16414,"draft":852,"extension":853,"lab":882,"locale":864,"meta":67410,"navigation":125,"path":16421,"schemaOrg":67412,"seo":67415,"series":2447,"seriesDescription":2448,"seriesOrder":87,"seriesTitle":2449,"slug":882,"stem":16426,"tags":67416,"__hash__":16432},{"type":8,"value":65060,"toc":67389},[65061,65063,65065,65071,65073,65077,65095,65097,65111,65115,65117,65119,65153,65155,65161,65163,65167,65171,65227,65235,65239,65243,65245,65253,65355,65363,65367,65371,65373,65383,65453,65459,65461,65465,65467,65475,65481,65485,65487,65551,65607,65613,65617,65621,65623,65633,65697,65753,65755,65759,65761,65767,65771,65773,65837,65893,65899,65903,65905,65911,65975,66031,66033,66035,66039,66045,66049,66113,66169,66175,66179,66181,66189,66310,66411,66415,66421,66427,66431,66495,66551,66557,66561,66625,66681,66683,66689,66693,66767,66833,66835,66839,66841,66845,66849,66917,66977,66981,66985,67053,67113,67115,67121,67125,67127,67195,67253,67255,67257,67281,67283,67301,67305,67307,67311,67381,67387],[11,65062,13827],{"id":13826},[34,65064,921],{"id":920},[15,65066,13832,65067,13836,65069,13840],{},[958,65068,13835],{},[958,65070,13839],{},[11,65072,947],{"id":946},[15,65074,13845,65075,13848],{},[958,65076,871],{},[10842,65078,65079,65083,65087,65091],{},[740,65080,65081],{},[958,65082,13855],{},[740,65084,65085],{},[958,65086,13860],{},[740,65088,65089],{},[958,65090,13865],{},[740,65092,65093],{},[958,65094,13870],{},[15,65096,13873],{},[737,65098,65099,65103,65105,65107],{},[740,65100,13878,65101],{},[22,65102,5945],{},[740,65104,13883],{},[740,65106,13886],{},[740,65108,65109],{},[958,65110,13891],{},[15,65112,13894,65113,13898],{},[958,65114,13897],{},[34,65116,13902],{"id":13901},[15,65118,13905],{},[737,65120,65121,65125,65129,65133,65137,65141,65145,65149],{},[740,65122,65123],{},[13911,65124,12668],{"href":13913},[740,65126,65127],{},[13911,65128,11408],{"href":13918},[740,65130,65131],{},[13911,65132,9832],{"href":13923},[740,65134,65135],{},[13911,65136,8266],{"href":13928},[740,65138,65139],{},[13911,65140,13934],{"href":13933},[740,65142,65143],{},[13911,65144,3951],{"href":13939},[740,65146,65147],{},[13911,65148,2467],{"href":13944},[740,65150,65151],{},[13911,65152,899],{"href":13949},[11,65154,13953],{"id":13952},[15,65156,13956,65157,13960,65159,764],{},[958,65158,13959],{},[958,65160,13963],{},[15,65162,13966],{},[34,65164,65165],{"id":13969},[22,65166,12677],{},[15,65168,13974,65169,764],{},[958,65170,13977],{},[74,65172,65174],{"className":76,"code":13980,"filename":10092,"highlights":65173,"language":79,"meta":80,"style":80},[122],[22,65175,65176,65184,65192,65199,65211,65215,65219],{"__ignoreMap":80},[84,65177,65178,65180,65182],{"class":86,"line":87},[84,65179,91],{"class":90},[84,65181,95],{"class":94},[84,65183,102],{"class":90},[84,65185,65186,65188,65190],{"class":86,"line":105},[84,65187,418],{"class":108},[84,65189,1870],{"class":108},[84,65191,175],{"class":90},[84,65193,65195,65197],{"class":65194,"line":122},[86,10151],[84,65196,12849],{"class":98},[84,65198,1307],{"class":90},[84,65200,65201,65203,65205,65207,65209],{"class":86,"line":129},[84,65202,3666],{"class":90},[84,65204,3138],{"class":98},[84,65206,145],{"class":90},[84,65208,14017],{"class":118},[84,65210,151],{"class":90},[84,65212,65213],{"class":86,"line":154},[84,65214,485],{"class":90},[84,65216,65217],{"class":86,"line":159},[84,65218,193],{"class":90},[84,65220,65221,65223,65225],{"class":86,"line":178},[84,65222,274],{"class":90},[84,65224,95],{"class":94},[84,65226,102],{"class":90},[823,65228,65229],{},[15,65230,14040,65231,14043,65233,14046],{},[22,65232,12677],{},[22,65234,4013],{},[34,65236,65237],{"id":12680},[22,65238,12680],{},[15,65240,14053,65241,764],{},[958,65242,14056],{},[15,65244,14059],{},[737,65246,65247,65249,65251],{},[740,65248,14064],{},[740,65250,14067],{},[740,65252,14070],{},[74,65254,65256],{"className":76,"code":14073,"filename":10092,"highlights":65255,"language":79,"meta":80,"style":80},[190],[22,65257,65258,65266,65274,65280,65286,65290,65294,65298,65307,65339,65343,65347],{"__ignoreMap":80},[84,65259,65260,65262,65264],{"class":86,"line":87},[84,65261,91],{"class":90},[84,65263,95],{"class":94},[84,65265,102],{"class":90},[84,65267,65268,65270,65272],{"class":86,"line":105},[84,65269,418],{"class":108},[84,65271,1870],{"class":108},[84,65273,175],{"class":90},[84,65275,65276,65278],{"class":86,"line":122},[84,65277,1896],{"class":98},[84,65279,1307],{"class":90},[84,65281,65282,65284],{"class":86,"line":129},[84,65283,1903],{"class":108},[84,65285,175],{"class":90},[84,65287,65288],{"class":86,"line":154},[84,65289,12954],{"class":90},[84,65291,65292],{"class":86,"line":159},[84,65293,1936],{"class":90},[84,65295,65296],{"class":86,"line":178},[84,65297,1941],{"class":90},[84,65299,65301,65303,65305],{"class":65300,"line":190},[86,10151],[84,65302,2058],{"class":108},[84,65304,12970],{"class":98},[84,65306,1307],{"class":90},[84,65308,65309,65311,65313,65315,65317,65319,65321,65323,65325,65327,65329,65331,65333,65335,65337],{"class":86,"line":196},[84,65310,5499],{"class":135},[84,65312,12980],{"class":90},[84,65314,184],{"class":108},[84,65316,1319],{"class":108},[84,65318,1322],{"class":98},[84,65320,145],{"class":90},[84,65322,11807],{"class":118},[84,65324,2686],{"class":90},[84,65326,12995],{"class":98},[84,65328,145],{"class":90},[84,65330,13000],{"class":429},[84,65332,3014],{"class":108},[84,65334,13007],{"class":90},[84,65336,1391],{"class":98},[84,65338,3054],{"class":90},[84,65340,65341],{"class":86,"line":201},[84,65342,485],{"class":90},[84,65344,65345],{"class":86,"line":217},[84,65346,193],{"class":90},[84,65348,65349,65351,65353],{"class":86,"line":227},[84,65350,274],{"class":90},[84,65352,95],{"class":94},[84,65354,102],{"class":90},[823,65356,65357],{},[15,65358,14040,65359,14043,65361,14046],{},[22,65360,12680],{},[22,65362,4013],{},[34,65364,65365],{"id":11480},[22,65366,4013],{},[15,65368,14188,65369,764],{},[958,65370,14191],{},[15,65372,14194],{},[737,65374,65375,65377,65379,65381],{},[740,65376,14199],{},[740,65378,872],{},[740,65380,4016],{},[740,65382,14206],{},[74,65384,65386],{"className":76,"code":14209,"filename":10092,"highlights":65385,"language":79,"meta":80,"style":80},[87],[22,65387,65388,65399,65409,65413,65429,65433,65445],{"__ignoreMap":80},[84,65389,65391,65393,65395,65397],{"class":65390,"line":87},[86,10151],[84,65392,91],{"class":90},[84,65394,95],{"class":94},[84,65396,99],{"class":98},[84,65398,102],{"class":90},[84,65400,65401,65403,65405,65407],{"class":86,"line":105},[84,65402,109],{"class":108},[84,65404,112],{"class":90},[84,65406,115],{"class":108},[84,65408,119],{"class":118},[84,65410,65411],{"class":86,"line":122},[84,65412,126],{"emptyLinePlaceholder":125},[84,65414,65415,65417,65419,65421,65423,65425,65427],{"class":86,"line":129},[84,65416,132],{"class":108},[84,65418,10133],{"class":135},[84,65420,139],{"class":108},[84,65422,142],{"class":98},[84,65424,145],{"class":90},[84,65426,4320],{"class":135},[84,65428,151],{"class":90},[84,65430,65431],{"class":86,"line":154},[84,65432,126],{"emptyLinePlaceholder":125},[84,65434,65435,65437,65439,65441,65443],{"class":86,"line":159},[84,65436,13162],{"class":90},[84,65438,3138],{"class":98},[84,65440,145],{"class":90},[84,65442,14268],{"class":118},[84,65444,151],{"class":90},[84,65446,65447,65449,65451],{"class":86,"line":178},[84,65448,274],{"class":90},[84,65450,95],{"class":94},[84,65452,102],{"class":90},[823,65454,65455],{},[15,65456,14040,65457,14285],{},[22,65458,4013],{},[11,65460,14289],{"id":14288},[15,65462,13956,65463,764],{},[958,65464,14294],{},[15,65466,14297],{},[737,65468,65469,65471,65473],{},[740,65470,14302],{},[740,65472,14305],{},[740,65474,14308],{},[34,65476,65477,6014,65479],{"id":14311},[22,65478,12181],{},[22,65480,11417],{},[15,65482,13974,65483,764],{},[958,65484,14320],{},[15,65486,14323],{},[74,65488,65490],{"className":76,"code":14326,"filename":873,"highlights":65489,"language":79,"meta":80,"style":80},[129],[22,65491,65492,65502,65512,65516,65527,65539,65543],{"__ignoreMap":80},[84,65493,65494,65496,65498,65500],{"class":86,"line":87},[84,65495,91],{"class":90},[84,65497,95],{"class":94},[84,65499,99],{"class":98},[84,65501,102],{"class":90},[84,65503,65504,65506,65508,65510],{"class":86,"line":105},[84,65505,109],{"class":108},[84,65507,14346],{"class":90},[84,65509,115],{"class":108},[84,65511,119],{"class":118},[84,65513,65514],{"class":86,"line":122},[84,65515,126],{"emptyLinePlaceholder":125},[84,65517,65519,65521,65523,65525],{"class":65518,"line":129},[86,10151],[84,65520,12181],{"class":98},[84,65522,2992],{"class":90},[84,65524,172],{"class":108},[84,65526,175],{"class":90},[84,65528,65529,65531,65533,65535,65537],{"class":86,"line":154},[84,65530,3135],{"class":90},[84,65532,3138],{"class":98},[84,65534,145],{"class":90},[84,65536,14376],{"class":118},[84,65538,151],{"class":90},[84,65540,65541],{"class":86,"line":159},[84,65542,1492],{"class":90},[84,65544,65545,65547,65549],{"class":86,"line":178},[84,65546,274],{"class":90},[84,65548,95],{"class":94},[84,65550,102],{"class":90},[74,65552,65554],{"className":76,"code":14393,"filename":1782,"highlights":65553,"language":79,"meta":80,"style":80},[122],[22,65555,65556,65564,65572,65579,65591,65595,65599],{"__ignoreMap":80},[84,65557,65558,65560,65562],{"class":86,"line":87},[84,65559,91],{"class":90},[84,65561,95],{"class":94},[84,65563,102],{"class":90},[84,65565,65566,65568,65570],{"class":86,"line":105},[84,65567,418],{"class":108},[84,65569,1870],{"class":108},[84,65571,175],{"class":90},[84,65573,65575,65577],{"class":65574,"line":122},[86,10151],[84,65576,12401],{"class":98},[84,65578,1307],{"class":90},[84,65580,65581,65583,65585,65587,65589],{"class":86,"line":129},[84,65582,3666],{"class":90},[84,65584,3138],{"class":98},[84,65586,145],{"class":90},[84,65588,14430],{"class":118},[84,65590,151],{"class":90},[84,65592,65593],{"class":86,"line":154},[84,65594,485],{"class":90},[84,65596,65597],{"class":86,"line":159},[84,65598,193],{"class":90},[84,65600,65601,65603,65605],{"class":86,"line":178},[84,65602,274],{"class":90},[84,65604,95],{"class":94},[84,65606,102],{"class":90},[34,65608,65609,6014,65611],{"id":14451},[22,65610,1503],{},[22,65612,1085],{},[15,65614,13974,65615,764],{},[958,65616,14460],{},[15,65618,14463,65619,764],{},[958,65620,14466],{},[15,65622,14469],{},[737,65624,65625,65627,65629,65631],{},[740,65626,14474],{},[740,65628,14477],{},[740,65630,14480],{},[740,65632,14483],{},[74,65634,65636],{"className":76,"code":14486,"filename":873,"highlights":65635,"language":79,"meta":80,"style":80},[129],[22,65637,65638,65648,65658,65662,65673,65685,65689],{"__ignoreMap":80},[84,65639,65640,65642,65644,65646],{"class":86,"line":87},[84,65641,91],{"class":90},[84,65643,95],{"class":94},[84,65645,99],{"class":98},[84,65647,102],{"class":90},[84,65649,65650,65652,65654,65656],{"class":86,"line":105},[84,65651,109],{"class":108},[84,65653,14506],{"class":90},[84,65655,115],{"class":108},[84,65657,119],{"class":118},[84,65659,65660],{"class":86,"line":122},[84,65661,126],{"emptyLinePlaceholder":125},[84,65663,65665,65667,65669,65671],{"class":65664,"line":129},[86,10151],[84,65666,1503],{"class":98},[84,65668,2992],{"class":90},[84,65670,172],{"class":108},[84,65672,175],{"class":90},[84,65674,65675,65677,65679,65681,65683],{"class":86,"line":154},[84,65676,3135],{"class":90},[84,65678,3138],{"class":98},[84,65680,145],{"class":90},[84,65682,14536],{"class":118},[84,65684,151],{"class":90},[84,65686,65687],{"class":86,"line":159},[84,65688,1492],{"class":90},[84,65690,65691,65693,65695],{"class":86,"line":178},[84,65692,274],{"class":90},[84,65694,95],{"class":94},[84,65696,102],{"class":90},[74,65698,65700],{"className":76,"code":14553,"filename":1782,"highlights":65699,"language":79,"meta":80,"style":80},[122],[22,65701,65702,65710,65718,65725,65737,65741,65745],{"__ignoreMap":80},[84,65703,65704,65706,65708],{"class":86,"line":87},[84,65705,91],{"class":90},[84,65707,95],{"class":94},[84,65709,102],{"class":90},[84,65711,65712,65714,65716],{"class":86,"line":105},[84,65713,418],{"class":108},[84,65715,1870],{"class":108},[84,65717,175],{"class":90},[84,65719,65721,65723],{"class":65720,"line":122},[86,10151],[84,65722,7551],{"class":98},[84,65724,1307],{"class":90},[84,65726,65727,65729,65731,65733,65735],{"class":86,"line":129},[84,65728,3666],{"class":90},[84,65730,3138],{"class":98},[84,65732,145],{"class":90},[84,65734,14590],{"class":118},[84,65736,151],{"class":90},[84,65738,65739],{"class":86,"line":154},[84,65740,485],{"class":90},[84,65742,65743],{"class":86,"line":159},[84,65744,193],{"class":90},[84,65746,65747,65749,65751],{"class":86,"line":178},[84,65748,274],{"class":90},[84,65750,95],{"class":94},[84,65752,102],{"class":90},[11,65754,14612],{"id":14611},[15,65756,14615,65757,764],{},[958,65758,14618],{},[15,65760,14621],{},[34,65762,65763,6014,65765],{"id":14624},[22,65764,10319],{},[22,65766,9841],{},[15,65768,13974,65769,764],{},[958,65770,14633],{},[15,65772,14636],{},[74,65774,65776],{"className":76,"code":14639,"filename":873,"highlights":65775,"language":79,"meta":80,"style":80},[129],[22,65777,65778,65788,65798,65802,65813,65825,65829],{"__ignoreMap":80},[84,65779,65780,65782,65784,65786],{"class":86,"line":87},[84,65781,91],{"class":90},[84,65783,95],{"class":94},[84,65785,99],{"class":98},[84,65787,102],{"class":90},[84,65789,65790,65792,65794,65796],{"class":86,"line":105},[84,65791,109],{"class":108},[84,65793,14659],{"class":90},[84,65795,115],{"class":108},[84,65797,119],{"class":118},[84,65799,65800],{"class":86,"line":122},[84,65801,126],{"emptyLinePlaceholder":125},[84,65803,65805,65807,65809,65811],{"class":65804,"line":129},[86,10151],[84,65806,10319],{"class":98},[84,65808,2992],{"class":90},[84,65810,172],{"class":108},[84,65812,175],{"class":90},[84,65814,65815,65817,65819,65821,65823],{"class":86,"line":154},[84,65816,3135],{"class":90},[84,65818,3138],{"class":98},[84,65820,145],{"class":90},[84,65822,14689],{"class":118},[84,65824,151],{"class":90},[84,65826,65827],{"class":86,"line":159},[84,65828,1492],{"class":90},[84,65830,65831,65833,65835],{"class":86,"line":178},[84,65832,274],{"class":90},[84,65834,95],{"class":94},[84,65836,102],{"class":90},[74,65838,65840],{"className":76,"code":14706,"filename":1782,"highlights":65839,"language":79,"meta":80,"style":80},[122],[22,65841,65842,65850,65858,65865,65877,65881,65885],{"__ignoreMap":80},[84,65843,65844,65846,65848],{"class":86,"line":87},[84,65845,91],{"class":90},[84,65847,95],{"class":94},[84,65849,102],{"class":90},[84,65851,65852,65854,65856],{"class":86,"line":105},[84,65853,418],{"class":108},[84,65855,1870],{"class":108},[84,65857,175],{"class":90},[84,65859,65861,65863],{"class":65860,"line":122},[86,10151],[84,65862,11021],{"class":98},[84,65864,1307],{"class":90},[84,65866,65867,65869,65871,65873,65875],{"class":86,"line":129},[84,65868,3666],{"class":90},[84,65870,3138],{"class":98},[84,65872,145],{"class":90},[84,65874,14743],{"class":118},[84,65876,151],{"class":90},[84,65878,65879],{"class":86,"line":154},[84,65880,485],{"class":90},[84,65882,65883],{"class":86,"line":159},[84,65884,193],{"class":90},[84,65886,65887,65889,65891],{"class":86,"line":178},[84,65888,274],{"class":90},[84,65890,95],{"class":94},[84,65892,102],{"class":90},[34,65894,65895,6014,65897],{"id":14764},[22,65896,10154],{},[22,65898,9844],{},[15,65900,13974,65901,764],{},[958,65902,14773],{},[15,65904,14776],{},[823,65906,65907],{},[15,65908,14781,65909,764],{},[22,65910,2526],{},[74,65912,65914],{"className":76,"code":14786,"filename":873,"highlights":65913,"language":79,"meta":80,"style":80},[129],[22,65915,65916,65926,65936,65940,65951,65963,65967],{"__ignoreMap":80},[84,65917,65918,65920,65922,65924],{"class":86,"line":87},[84,65919,91],{"class":90},[84,65921,95],{"class":94},[84,65923,99],{"class":98},[84,65925,102],{"class":90},[84,65927,65928,65930,65932,65934],{"class":86,"line":105},[84,65929,109],{"class":108},[84,65931,14806],{"class":90},[84,65933,115],{"class":108},[84,65935,119],{"class":118},[84,65937,65938],{"class":86,"line":122},[84,65939,126],{"emptyLinePlaceholder":125},[84,65941,65943,65945,65947,65949],{"class":65942,"line":129},[86,10151],[84,65944,10154],{"class":98},[84,65946,2992],{"class":90},[84,65948,172],{"class":108},[84,65950,175],{"class":90},[84,65952,65953,65955,65957,65959,65961],{"class":86,"line":154},[84,65954,3135],{"class":90},[84,65956,3138],{"class":98},[84,65958,145],{"class":90},[84,65960,14836],{"class":118},[84,65962,151],{"class":90},[84,65964,65965],{"class":86,"line":159},[84,65966,1492],{"class":90},[84,65968,65969,65971,65973],{"class":86,"line":178},[84,65970,274],{"class":90},[84,65972,95],{"class":94},[84,65974,102],{"class":90},[74,65976,65978],{"className":76,"code":14853,"filename":1782,"highlights":65977,"language":79,"meta":80,"style":80},[122],[22,65979,65980,65988,65996,66003,66015,66019,66023],{"__ignoreMap":80},[84,65981,65982,65984,65986],{"class":86,"line":87},[84,65983,91],{"class":90},[84,65985,95],{"class":94},[84,65987,102],{"class":90},[84,65989,65990,65992,65994],{"class":86,"line":105},[84,65991,418],{"class":108},[84,65993,1870],{"class":108},[84,65995,175],{"class":90},[84,65997,65999,66001],{"class":65998,"line":122},[86,10151],[84,66000,11072],{"class":98},[84,66002,1307],{"class":90},[84,66004,66005,66007,66009,66011,66013],{"class":86,"line":129},[84,66006,3666],{"class":90},[84,66008,3138],{"class":98},[84,66010,145],{"class":90},[84,66012,14890],{"class":118},[84,66014,151],{"class":90},[84,66016,66017],{"class":86,"line":154},[84,66018,485],{"class":90},[84,66020,66021],{"class":86,"line":159},[84,66022,193],{"class":90},[84,66024,66025,66027,66029],{"class":86,"line":178},[84,66026,274],{"class":90},[84,66028,95],{"class":94},[84,66030,102],{"class":90},[11,66032,14912],{"id":14911},[15,66034,14915],{},[15,66036,14918,66037,764],{},[958,66038,14921],{},[34,66040,66041,6014,66043],{"id":14924},[22,66042,9056],{},[22,66044,8275],{},[15,66046,13974,66047,764],{},[958,66048,14933],{},[74,66050,66052],{"className":76,"code":14936,"filename":873,"highlights":66051,"language":79,"meta":80,"style":80},[129],[22,66053,66054,66064,66074,66078,66089,66101,66105],{"__ignoreMap":80},[84,66055,66056,66058,66060,66062],{"class":86,"line":87},[84,66057,91],{"class":90},[84,66059,95],{"class":94},[84,66061,99],{"class":98},[84,66063,102],{"class":90},[84,66065,66066,66068,66070,66072],{"class":86,"line":105},[84,66067,109],{"class":108},[84,66069,14956],{"class":90},[84,66071,115],{"class":108},[84,66073,119],{"class":118},[84,66075,66076],{"class":86,"line":122},[84,66077,126],{"emptyLinePlaceholder":125},[84,66079,66081,66083,66085,66087],{"class":66080,"line":129},[86,10151],[84,66082,9056],{"class":98},[84,66084,2992],{"class":90},[84,66086,172],{"class":108},[84,66088,175],{"class":90},[84,66090,66091,66093,66095,66097,66099],{"class":86,"line":154},[84,66092,3135],{"class":90},[84,66094,3138],{"class":98},[84,66096,145],{"class":90},[84,66098,14986],{"class":118},[84,66100,151],{"class":90},[84,66102,66103],{"class":86,"line":159},[84,66104,1492],{"class":90},[84,66106,66107,66109,66111],{"class":86,"line":178},[84,66108,274],{"class":90},[84,66110,95],{"class":94},[84,66112,102],{"class":90},[74,66114,66116],{"className":76,"code":15003,"filename":1782,"highlights":66115,"language":79,"meta":80,"style":80},[122],[22,66117,66118,66126,66134,66141,66153,66157,66161],{"__ignoreMap":80},[84,66119,66120,66122,66124],{"class":86,"line":87},[84,66121,91],{"class":90},[84,66123,95],{"class":94},[84,66125,102],{"class":90},[84,66127,66128,66130,66132],{"class":86,"line":105},[84,66129,418],{"class":108},[84,66131,1870],{"class":108},[84,66133,175],{"class":90},[84,66135,66137,66139],{"class":66136,"line":122},[86,10151],[84,66138,9371],{"class":98},[84,66140,1307],{"class":90},[84,66142,66143,66145,66147,66149,66151],{"class":86,"line":129},[84,66144,3666],{"class":90},[84,66146,3138],{"class":98},[84,66148,145],{"class":90},[84,66150,15040],{"class":118},[84,66152,151],{"class":90},[84,66154,66155],{"class":86,"line":154},[84,66156,485],{"class":90},[84,66158,66159],{"class":86,"line":159},[84,66160,193],{"class":90},[84,66162,66163,66165,66167],{"class":86,"line":178},[84,66164,274],{"class":90},[84,66166,95],{"class":94},[84,66168,102],{"class":90},[34,66170,66171,6014,66173],{"id":15061},[22,66172,9110],{},[22,66174,6063],{},[15,66176,13974,66177,764],{},[958,66178,15070],{},[15,66180,15073],{},[737,66182,66183,66185,66187],{},[740,66184,15078],{},[740,66186,15081],{},[740,66188,15084],{},[74,66190,66192],{"className":76,"code":15087,"filename":873,"highlights":66191,"language":79,"meta":80,"style":80},[159,227],[22,66193,66194,66204,66214,66218,66224,66228,66239,66253,66265,66273,66277,66281,66292,66298,66302],{"__ignoreMap":80},[84,66195,66196,66198,66200,66202],{"class":86,"line":87},[84,66197,91],{"class":90},[84,66199,95],{"class":94},[84,66201,99],{"class":98},[84,66203,102],{"class":90},[84,66205,66206,66208,66210,66212],{"class":86,"line":105},[84,66207,109],{"class":108},[84,66209,15107],{"class":90},[84,66211,115],{"class":108},[84,66213,119],{"class":118},[84,66215,66216],{"class":86,"line":122},[84,66217,126],{"emptyLinePlaceholder":125},[84,66219,66220,66222],{"class":86,"line":129},[84,66221,8751],{"class":108},[84,66223,15122],{"class":90},[84,66225,66226],{"class":86,"line":154},[84,66227,126],{"emptyLinePlaceholder":125},[84,66229,66231,66233,66235,66237],{"class":66230,"line":159},[86,10151],[84,66232,1503],{"class":98},[84,66234,2992],{"class":90},[84,66236,172],{"class":108},[84,66238,175],{"class":90},[84,66240,66241,66243,66245,66247,66249,66251],{"class":86,"line":178},[84,66242,15142],{"class":90},[84,66244,184],{"class":108},[84,66246,6868],{"class":98},[84,66248,2992],{"class":90},[84,66250,172],{"class":108},[84,66252,175],{"class":90},[84,66254,66255,66257,66259,66261,66263],{"class":86,"line":190},[84,66256,3666],{"class":90},[84,66258,3138],{"class":98},[84,66260,145],{"class":90},[84,66262,11985],{"class":118},[84,66264,151],{"class":90},[84,66266,66267,66269,66271],{"class":86,"line":196},[84,66268,6888],{"class":90},[84,66270,11994],{"class":135},[84,66272,151],{"class":90},[84,66274,66275],{"class":86,"line":201},[84,66276,1492],{"class":90},[84,66278,66279],{"class":86,"line":217},[84,66280,126],{"emptyLinePlaceholder":125},[84,66282,66284,66286,66288,66290],{"class":66283,"line":227},[86,10151],[84,66285,9110],{"class":98},[84,66287,2992],{"class":90},[84,66289,172],{"class":108},[84,66291,175],{"class":90},[84,66293,66294,66296],{"class":86,"line":232},[84,66295,6933],{"class":98},[84,66297,15198],{"class":90},[84,66299,66300],{"class":86,"line":237},[84,66301,1492],{"class":90},[84,66303,66304,66306,66308],{"class":86,"line":253},[84,66305,274],{"class":90},[84,66307,95],{"class":94},[84,66309,102],{"class":90},[74,66311,66313],{"className":76,"code":15213,"filename":1782,"highlights":66312,"language":79,"meta":80,"style":80},[122,190],[22,66314,66315,66323,66331,66338,66354,66366,66374,66378,66385,66395,66399,66403],{"__ignoreMap":80},[84,66316,66317,66319,66321],{"class":86,"line":87},[84,66318,91],{"class":90},[84,66320,95],{"class":94},[84,66322,102],{"class":90},[84,66324,66325,66327,66329],{"class":86,"line":105},[84,66326,418],{"class":108},[84,66328,1870],{"class":108},[84,66330,175],{"class":90},[84,66332,66334,66336],{"class":66333,"line":122},[86,10151],[84,66335,7551],{"class":98},[84,66337,1307],{"class":90},[84,66339,66340,66342,66344,66346,66348,66350,66352],{"class":86,"line":129},[84,66341,5499],{"class":135},[84,66343,15246],{"class":90},[84,66345,184],{"class":108},[84,66347,6868],{"class":98},[84,66349,2992],{"class":90},[84,66351,172],{"class":108},[84,66353,175],{"class":90},[84,66355,66356,66358,66360,66362,66364],{"class":86,"line":154},[84,66357,15261],{"class":90},[84,66359,3138],{"class":98},[84,66361,145],{"class":90},[84,66363,11985],{"class":118},[84,66365,151],{"class":90},[84,66367,66368,66370,66372],{"class":86,"line":159},[84,66369,15274],{"class":90},[84,66371,11994],{"class":135},[84,66373,151],{"class":90},[84,66375,66376],{"class":86,"line":178},[84,66377,1941],{"class":90},[84,66379,66381,66383],{"class":66380,"line":190},[86,10151],[84,66382,9429],{"class":98},[84,66384,1307],{"class":90},[84,66386,66387,66389,66391,66393],{"class":86,"line":196},[84,66388,15294],{"class":98},[84,66390,145],{"class":90},[84,66392,2151],{"class":135},[84,66394,15301],{"class":90},[84,66396,66397],{"class":86,"line":201},[84,66398,485],{"class":90},[84,66400,66401],{"class":86,"line":217},[84,66402,193],{"class":90},[84,66404,66405,66407,66409],{"class":86,"line":227},[84,66406,274],{"class":90},[84,66408,95],{"class":94},[84,66410,102],{"class":90},[11,66412,15321,66413],{"id":15320},[22,66414,5945],{},[15,66416,15326,66417,754,66419,15332],{},[22,66418,5945],{},[958,66420,15331],{},[34,66422,66423,6014,66425],{"id":15335},[22,66424,6985],{},[22,66426,5948],{},[15,66428,15342,66429,764],{},[958,66430,15345],{},[74,66432,66434],{"className":76,"code":15348,"filename":873,"highlights":66433,"language":79,"meta":80,"style":80},[129],[22,66435,66436,66446,66456,66460,66471,66483,66487],{"__ignoreMap":80},[84,66437,66438,66440,66442,66444],{"class":86,"line":87},[84,66439,91],{"class":90},[84,66441,95],{"class":94},[84,66443,99],{"class":98},[84,66445,102],{"class":90},[84,66447,66448,66450,66452,66454],{"class":86,"line":105},[84,66449,109],{"class":108},[84,66451,15368],{"class":90},[84,66453,115],{"class":108},[84,66455,119],{"class":118},[84,66457,66458],{"class":86,"line":122},[84,66459,126],{"emptyLinePlaceholder":125},[84,66461,66463,66465,66467,66469],{"class":66462,"line":129},[86,10151],[84,66464,6985],{"class":98},[84,66466,2992],{"class":90},[84,66468,172],{"class":108},[84,66470,175],{"class":90},[84,66472,66473,66475,66477,66479,66481],{"class":86,"line":154},[84,66474,3135],{"class":90},[84,66476,3138],{"class":98},[84,66478,145],{"class":90},[84,66480,15398],{"class":118},[84,66482,151],{"class":90},[84,66484,66485],{"class":86,"line":159},[84,66486,1492],{"class":90},[84,66488,66489,66491,66493],{"class":86,"line":178},[84,66490,274],{"class":90},[84,66492,95],{"class":94},[84,66494,102],{"class":90},[74,66496,66498],{"className":76,"code":15415,"filename":1782,"highlights":66497,"language":79,"meta":80,"style":80},[122],[22,66499,66500,66508,66516,66523,66535,66539,66543],{"__ignoreMap":80},[84,66501,66502,66504,66506],{"class":86,"line":87},[84,66503,91],{"class":90},[84,66505,95],{"class":94},[84,66507,102],{"class":90},[84,66509,66510,66512,66514],{"class":86,"line":105},[84,66511,418],{"class":108},[84,66513,1870],{"class":108},[84,66515,175],{"class":90},[84,66517,66519,66521],{"class":66518,"line":122},[86,10151],[84,66520,15440],{"class":98},[84,66522,1307],{"class":90},[84,66524,66525,66527,66529,66531,66533],{"class":86,"line":129},[84,66526,3666],{"class":90},[84,66528,3138],{"class":98},[84,66530,145],{"class":90},[84,66532,15398],{"class":118},[84,66534,151],{"class":90},[84,66536,66537],{"class":86,"line":154},[84,66538,485],{"class":90},[84,66540,66541],{"class":86,"line":159},[84,66542,193],{"class":90},[84,66544,66545,66547,66549],{"class":86,"line":178},[84,66546,274],{"class":90},[84,66548,95],{"class":94},[84,66550,102],{"class":90},[34,66552,66553,6014,66555],{"id":15473},[22,66554,7044],{},[22,66556,5951],{},[15,66558,15342,66559,764],{},[958,66560,15482],{},[74,66562,66564],{"className":76,"code":15485,"filename":873,"highlights":66563,"language":79,"meta":80,"style":80},[129],[22,66565,66566,66576,66586,66590,66601,66613,66617],{"__ignoreMap":80},[84,66567,66568,66570,66572,66574],{"class":86,"line":87},[84,66569,91],{"class":90},[84,66571,95],{"class":94},[84,66573,99],{"class":98},[84,66575,102],{"class":90},[84,66577,66578,66580,66582,66584],{"class":86,"line":105},[84,66579,109],{"class":108},[84,66581,15505],{"class":90},[84,66583,115],{"class":108},[84,66585,119],{"class":118},[84,66587,66588],{"class":86,"line":122},[84,66589,126],{"emptyLinePlaceholder":125},[84,66591,66593,66595,66597,66599],{"class":66592,"line":129},[86,10151],[84,66594,7044],{"class":98},[84,66596,2992],{"class":90},[84,66598,172],{"class":108},[84,66600,175],{"class":90},[84,66602,66603,66605,66607,66609,66611],{"class":86,"line":154},[84,66604,3135],{"class":90},[84,66606,3138],{"class":98},[84,66608,145],{"class":90},[84,66610,15535],{"class":118},[84,66612,151],{"class":90},[84,66614,66615],{"class":86,"line":159},[84,66616,1492],{"class":90},[84,66618,66619,66621,66623],{"class":86,"line":178},[84,66620,274],{"class":90},[84,66622,95],{"class":94},[84,66624,102],{"class":90},[74,66626,66628],{"className":76,"code":15552,"filename":1782,"highlights":66627,"language":79,"meta":80,"style":80},[122],[22,66629,66630,66638,66646,66653,66665,66669,66673],{"__ignoreMap":80},[84,66631,66632,66634,66636],{"class":86,"line":87},[84,66633,91],{"class":90},[84,66635,95],{"class":94},[84,66637,102],{"class":90},[84,66639,66640,66642,66644],{"class":86,"line":105},[84,66641,418],{"class":108},[84,66643,1870],{"class":108},[84,66645,175],{"class":90},[84,66647,66649,66651],{"class":66648,"line":122},[86,10151],[84,66650,7639],{"class":98},[84,66652,1307],{"class":90},[84,66654,66655,66657,66659,66661,66663],{"class":86,"line":129},[84,66656,3666],{"class":90},[84,66658,3138],{"class":98},[84,66660,145],{"class":90},[84,66662,15535],{"class":118},[84,66664,151],{"class":90},[84,66666,66667],{"class":86,"line":154},[84,66668,485],{"class":90},[84,66670,66671],{"class":86,"line":159},[84,66672,193],{"class":90},[84,66674,66675,66677,66679],{"class":86,"line":178},[84,66676,274],{"class":90},[84,66678,95],{"class":94},[84,66680,102],{"class":90},[11,66682,13883],{"id":15609},[34,66684,66685,6014,66687],{"id":15612},[22,66686,4700],{},[22,66688,3960],{},[15,66690,15619,66691,764],{},[958,66692,15622],{},[74,66694,66696],{"className":76,"code":15625,"filename":873,"highlights":66695,"language":79,"meta":80,"style":80},[129],[22,66697,66698,66708,66718,66722,66737,66749,66755,66759],{"__ignoreMap":80},[84,66699,66700,66702,66704,66706],{"class":86,"line":87},[84,66701,91],{"class":90},[84,66703,95],{"class":94},[84,66705,99],{"class":98},[84,66707,102],{"class":90},[84,66709,66710,66712,66714,66716],{"class":86,"line":105},[84,66711,109],{"class":108},[84,66713,15645],{"class":90},[84,66715,115],{"class":108},[84,66717,119],{"class":118},[84,66719,66720],{"class":86,"line":122},[84,66721,126],{"emptyLinePlaceholder":125},[84,66723,66725,66727,66729,66731,66733,66735],{"class":66724,"line":129},[86,10151],[84,66726,4700],{"class":98},[84,66728,3120],{"class":90},[84,66730,4127],{"class":429},[84,66732,3126],{"class":90},[84,66734,172],{"class":108},[84,66736,175],{"class":90},[84,66738,66739,66741,66743,66745,66747],{"class":86,"line":154},[84,66740,3135],{"class":90},[84,66742,4127],{"class":98},[84,66744,145],{"class":90},[84,66746,15679],{"class":118},[84,66748,8976],{"class":90},[84,66750,66751,66753],{"class":86,"line":159},[84,66752,557],{"class":108},[84,66754,224],{"class":135},[84,66756,66757],{"class":86,"line":178},[84,66758,1492],{"class":90},[84,66760,66761,66763,66765],{"class":86,"line":190},[84,66762,274],{"class":90},[84,66764,95],{"class":94},[84,66766,102],{"class":90},[74,66768,66770],{"className":76,"code":15702,"filename":1782,"highlights":66769,"language":79,"meta":80,"style":80},[122],[22,66771,66772,66780,66788,66799,66811,66817,66821,66825],{"__ignoreMap":80},[84,66773,66774,66776,66778],{"class":86,"line":87},[84,66775,91],{"class":90},[84,66777,95],{"class":94},[84,66779,102],{"class":90},[84,66781,66782,66784,66786],{"class":86,"line":105},[84,66783,418],{"class":108},[84,66785,1870],{"class":108},[84,66787,175],{"class":90},[84,66789,66791,66793,66795,66797],{"class":66790,"line":122},[86,10151],[84,66792,5480],{"class":98},[84,66794,145],{"class":90},[84,66796,4127],{"class":429},[84,66798,438],{"class":90},[84,66800,66801,66803,66805,66807,66809],{"class":86,"line":129},[84,66802,3666],{"class":90},[84,66804,4127],{"class":98},[84,66806,145],{"class":90},[84,66808,15679],{"class":118},[84,66810,8976],{"class":90},[84,66812,66813,66815],{"class":86,"line":154},[84,66814,1903],{"class":108},[84,66816,224],{"class":135},[84,66818,66819],{"class":86,"line":159},[84,66820,485],{"class":90},[84,66822,66823],{"class":86,"line":178},[84,66824,193],{"class":90},[84,66826,66827,66829,66831],{"class":86,"line":190},[84,66828,274],{"class":90},[84,66830,95],{"class":94},[84,66832,102],{"class":90},[11,66834,15770],{"id":15769},[15,66836,15773,66837,764],{},[958,66838,15776],{},[15,66840,15779],{},[34,66842,66843],{"id":15782},[22,66844,3117],{},[15,66846,15787,66847,764],{},[958,66848,15790],{},[74,66850,66852],{"className":76,"code":15793,"filename":873,"highlights":66851,"language":79,"meta":80,"style":80},[129],[22,66853,66854,66864,66874,66878,66893,66905,66909],{"__ignoreMap":80},[84,66855,66856,66858,66860,66862],{"class":86,"line":87},[84,66857,91],{"class":90},[84,66859,95],{"class":94},[84,66861,99],{"class":98},[84,66863,102],{"class":90},[84,66865,66866,66868,66870,66872],{"class":86,"line":105},[84,66867,109],{"class":108},[84,66869,15813],{"class":90},[84,66871,115],{"class":108},[84,66873,119],{"class":118},[84,66875,66876],{"class":86,"line":122},[84,66877,126],{"emptyLinePlaceholder":125},[84,66879,66881,66883,66885,66887,66889,66891],{"class":66880,"line":129},[86,10151],[84,66882,3117],{"class":98},[84,66884,3120],{"class":90},[84,66886,3123],{"class":429},[84,66888,3126],{"class":90},[84,66890,172],{"class":108},[84,66892,175],{"class":90},[84,66894,66895,66897,66899,66901,66903],{"class":86,"line":154},[84,66896,3135],{"class":90},[84,66898,15843],{"class":98},[84,66900,145],{"class":90},[84,66902,15848],{"class":118},[84,66904,15851],{"class":90},[84,66906,66907],{"class":86,"line":159},[84,66908,1492],{"class":90},[84,66910,66911,66913,66915],{"class":86,"line":178},[84,66912,274],{"class":90},[84,66914,95],{"class":94},[84,66916,102],{"class":90},[74,66918,66920],{"className":76,"code":15866,"filename":1782,"highlights":66919,"language":79,"meta":80,"style":80},[122],[22,66921,66922,66930,66938,66949,66961,66965,66969],{"__ignoreMap":80},[84,66923,66924,66926,66928],{"class":86,"line":87},[84,66925,91],{"class":90},[84,66927,95],{"class":94},[84,66929,102],{"class":90},[84,66931,66932,66934,66936],{"class":86,"line":105},[84,66933,418],{"class":108},[84,66935,1870],{"class":108},[84,66937,175],{"class":90},[84,66939,66941,66943,66945,66947],{"class":66940,"line":122},[86,10151],[84,66942,3655],{"class":98},[84,66944,145],{"class":90},[84,66946,3123],{"class":429},[84,66948,438],{"class":90},[84,66950,66951,66953,66955,66957,66959],{"class":86,"line":129},[84,66952,3666],{"class":90},[84,66954,15843],{"class":98},[84,66956,145],{"class":90},[84,66958,15848],{"class":118},[84,66960,15851],{"class":90},[84,66962,66963],{"class":86,"line":154},[84,66964,485],{"class":90},[84,66966,66967],{"class":86,"line":159},[84,66968,193],{"class":90},[84,66970,66971,66973,66975],{"class":86,"line":178},[84,66972,274],{"class":90},[84,66974,95],{"class":94},[84,66976,102],{"class":90},[34,66978,66979],{"id":15927},[22,66980,3184],{},[15,66982,15932,66983,764],{},[958,66984,15935],{},[74,66986,66988],{"className":76,"code":15938,"filename":873,"highlights":66987,"language":79,"meta":80,"style":80},[129],[22,66989,66990,67000,67010,67014,67029,67041,67045],{"__ignoreMap":80},[84,66991,66992,66994,66996,66998],{"class":86,"line":87},[84,66993,91],{"class":90},[84,66995,95],{"class":94},[84,66997,99],{"class":98},[84,66999,102],{"class":90},[84,67001,67002,67004,67006,67008],{"class":86,"line":105},[84,67003,109],{"class":108},[84,67005,15958],{"class":90},[84,67007,115],{"class":108},[84,67009,119],{"class":118},[84,67011,67012],{"class":86,"line":122},[84,67013,126],{"emptyLinePlaceholder":125},[84,67015,67017,67019,67021,67023,67025,67027],{"class":67016,"line":129},[86,10151],[84,67018,3184],{"class":98},[84,67020,3120],{"class":90},[84,67022,3123],{"class":429},[84,67024,3126],{"class":90},[84,67026,172],{"class":108},[84,67028,175],{"class":90},[84,67030,67031,67033,67035,67037,67039],{"class":86,"line":154},[84,67032,3135],{"class":90},[84,67034,15843],{"class":98},[84,67036,145],{"class":90},[84,67038,15992],{"class":118},[84,67040,15851],{"class":90},[84,67042,67043],{"class":86,"line":159},[84,67044,1492],{"class":90},[84,67046,67047,67049,67051],{"class":86,"line":178},[84,67048,274],{"class":90},[84,67050,95],{"class":94},[84,67052,102],{"class":90},[74,67054,67056],{"className":76,"code":16009,"filename":1782,"highlights":67055,"language":79,"meta":80,"style":80},[122],[22,67057,67058,67066,67074,67085,67097,67101,67105],{"__ignoreMap":80},[84,67059,67060,67062,67064],{"class":86,"line":87},[84,67061,91],{"class":90},[84,67063,95],{"class":94},[84,67065,102],{"class":90},[84,67067,67068,67070,67072],{"class":86,"line":105},[84,67069,418],{"class":108},[84,67071,1870],{"class":108},[84,67073,175],{"class":90},[84,67075,67077,67079,67081,67083],{"class":67076,"line":122},[86,10151],[84,67078,3711],{"class":98},[84,67080,145],{"class":90},[84,67082,3123],{"class":429},[84,67084,438],{"class":90},[84,67086,67087,67089,67091,67093,67095],{"class":86,"line":129},[84,67088,3666],{"class":90},[84,67090,15843],{"class":98},[84,67092,145],{"class":90},[84,67094,15992],{"class":118},[84,67096,15851],{"class":90},[84,67098,67099],{"class":86,"line":154},[84,67100,485],{"class":90},[84,67102,67103],{"class":86,"line":159},[84,67104,193],{"class":90},[84,67106,67107,67109,67111],{"class":86,"line":178},[84,67108,274],{"class":90},[84,67110,95],{"class":94},[84,67112,102],{"class":90},[11,67114,16071],{"id":16070},[34,67116,67117,6014,67119],{"id":16074},[22,67118,1413],{},[22,67120,908],{},[15,67122,16081,67123,764],{},[958,67124,16084],{},[15,67126,16087],{},[74,67128,67130],{"className":76,"code":16090,"filename":873,"highlights":67129,"language":79,"meta":80,"style":80},[129],[22,67131,67132,67142,67152,67156,67171,67183,67187],{"__ignoreMap":80},[84,67133,67134,67136,67138,67140],{"class":86,"line":87},[84,67135,91],{"class":90},[84,67137,95],{"class":94},[84,67139,99],{"class":98},[84,67141,102],{"class":90},[84,67143,67144,67146,67148,67150],{"class":86,"line":105},[84,67145,109],{"class":108},[84,67147,16110],{"class":90},[84,67149,115],{"class":108},[84,67151,119],{"class":118},[84,67153,67154],{"class":86,"line":122},[84,67155,126],{"emptyLinePlaceholder":125},[84,67157,67159,67161,67163,67165,67167,67169],{"class":67158,"line":129},[86,10151],[84,67160,1413],{"class":98},[84,67162,145],{"class":90},[84,67164,1299],{"class":108},[84,67166,169],{"class":90},[84,67168,172],{"class":108},[84,67170,175],{"class":90},[84,67172,67173,67175,67177,67179,67181],{"class":86,"line":154},[84,67174,7020],{"class":108},[84,67176,1322],{"class":98},[84,67178,145],{"class":90},[84,67180,16144],{"class":118},[84,67182,151],{"class":90},[84,67184,67185],{"class":86,"line":159},[84,67186,1492],{"class":90},[84,67188,67189,67191,67193],{"class":86,"line":178},[84,67190,274],{"class":90},[84,67192,95],{"class":94},[84,67194,102],{"class":90},[74,67196,67198],{"className":76,"code":16161,"filename":1782,"highlights":67197,"language":79,"meta":80,"style":80},[122],[22,67199,67200,67208,67216,67225,67237,67241,67245],{"__ignoreMap":80},[84,67201,67202,67204,67206],{"class":86,"line":87},[84,67203,91],{"class":90},[84,67205,95],{"class":94},[84,67207,102],{"class":90},[84,67209,67210,67212,67214],{"class":86,"line":105},[84,67211,418],{"class":108},[84,67213,1870],{"class":108},[84,67215,175],{"class":90},[84,67217,67219,67221,67223],{"class":67218,"line":122},[86,10151],[84,67220,2058],{"class":108},[84,67222,2061],{"class":98},[84,67224,1307],{"class":90},[84,67226,67227,67229,67231,67233,67235],{"class":86,"line":129},[84,67228,1435],{"class":108},[84,67230,1322],{"class":98},[84,67232,145],{"class":90},[84,67234,16144],{"class":118},[84,67236,151],{"class":90},[84,67238,67239],{"class":86,"line":154},[84,67240,485],{"class":90},[84,67242,67243],{"class":86,"line":159},[84,67244,193],{"class":90},[84,67246,67247,67249,67251],{"class":86,"line":178},[84,67248,274],{"class":90},[84,67250,95],{"class":94},[84,67252,102],{"class":90},[11,67254,16221],{"id":16220},[34,67256,16225],{"id":16224},[737,67258,67259,67265,67271,67277],{},[740,67260,16230,67261,1341,67263,909],{},[958,67262,16233],{},[22,67264,1503],{},[740,67266,16238,67267,1341,67269,909],{},[958,67268,16241],{},[22,67270,9110],{},[740,67272,16246,67273,1341,67275,909],{},[958,67274,2440],{},[22,67276,1413],{},[740,67278,16253,67279],{},[958,67280,16256],{},[34,67282,2665],{"id":16259},[737,67284,67285,67291,67297],{},[740,67286,2651,67287,16268],{},[958,67288,67289],{},[22,67290,2523],{},[740,67292,2651,67293,16275],{},[958,67294,67295],{},[22,67296,2526],{},[740,67298,16278,67299],{},[958,67300,16281],{},[15,67302,16284,67303,16288],{},[958,67304,16287],{},[11,67306,2406],{"id":2405},[15,67308,16293,67309,1203],{},[958,67310,16296],{},[6160,67312,67313,67321],{},[6163,67314,67315],{},[6166,67316,67317,67319],{},[6169,67318,16305],{},[6169,67320,16308],{},[6182,67322,67323,67333,67343,67353,67363,67373],{},[6166,67324,67325,67327],{},[6187,67326,13855],{},[6187,67328,67329,754,67331],{},[22,67330,11480],{},[22,67332,12680],{},[6166,67334,67335,67337],{},[6187,67336,13860],{},[6187,67338,67339,754,67341],{},[22,67340,1503],{},[22,67342,1085],{},[6166,67344,67345,67347],{},[6187,67346,13865],{},[6187,67348,67349,754,67351],{},[22,67350,10154],{},[22,67352,9844],{},[6166,67354,67355,67357],{},[6187,67356,13870],{},[6187,67358,67359,754,67361],{},[22,67360,9110],{},[22,67362,6063],{},[6166,67364,67365,67367],{},[6187,67366,16355],{},[6187,67368,67369,754,67371],{},[22,67370,6985],{},[22,67372,7044],{},[6166,67374,67375,67377],{},[6187,67376,2440],{},[6187,67378,67379],{},[22,67380,1413],{},[823,67382,67383],{},[15,67384,16374,67385],{},[958,67386,16377],{},[835,67388,16380],{},{"title":80,"searchDepth":105,"depth":105,"links":67390},[67391,67392,67393,67394,67395,67396,67397,67398,67399,67400,67401,67402,67403,67404,67405,67406,67407,67408,67409],{"id":920,"depth":105,"text":921},{"id":13901,"depth":105,"text":13902},{"id":13969,"depth":105,"text":12677},{"id":12680,"depth":105,"text":12680},{"id":11480,"depth":105,"text":4013},{"id":14311,"depth":105,"text":16389},{"id":14451,"depth":105,"text":16391},{"id":14624,"depth":105,"text":16393},{"id":14764,"depth":105,"text":16395},{"id":14924,"depth":105,"text":16397},{"id":15061,"depth":105,"text":16399},{"id":15335,"depth":105,"text":16401},{"id":15473,"depth":105,"text":16403},{"id":15612,"depth":105,"text":16405},{"id":15782,"depth":105,"text":3117},{"id":15927,"depth":105,"text":3184},{"id":16074,"depth":105,"text":16409},{"id":16224,"depth":105,"text":16225},{"id":16259,"depth":105,"text":2665},{"updatedAt":16416,"readingTime":190,"coverCaption":16417,"author":868,"keywords":67411},[870,16419,873,1782,16420],[67413],{"headline":13821,"author":67414,"datePublished":16416,"@type":880},{"name":868,"@type":879},{"title":13821,"description":16414},[67417,67418,67419,67420],{"tag":2453,"color":2454},{"tag":888,"color":889},{"tag":3945,"color":3946},{"tag":894,"color":895},{"id":16434,"title":16435,"body":67422,"cover":18472,"coverAlt":16435,"date":18473,"description":18474,"draft":852,"extension":853,"lab":882,"locale":864,"meta":69118,"navigation":125,"path":18482,"schemaOrg":69120,"seo":69123,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":18487,"tags":69124,"__hash__":18495},{"type":8,"value":67423,"toc":69094},[67424,67426,67436,67438,67442,67450,67452,67458,67460,67462,67468,67476,67480,67482,67484,67502,67530,67532,67542,67546,67550,67552,67582,67586,67588,67594,67608,68398,68480,68482,68520,68522,68524,68530,68544,68564,68568,68572,68574,68694,68696,68706,68712,68718,68734,68736,68748,68750,68752,68760,68762,68900,68902,68904,68906,68942,68944,68954,68956,68964,68970,68976,69024,69026,69034,69036,69038,69056,69058,69060,69068,69070,69088,69092],[11,67425,16435],{"id":16440},[15,67427,16443,67428,754,67430,754,67432,754,67434,16452],{},[22,67429,24],{},[22,67431,13059],{},[22,67433,2523],{},[22,67435,2526],{},[34,67437,16456],{"id":16455},[15,67439,16459,67440,16462],{},[22,67441,24],{},[737,67443,67444,67446,67448],{},[740,67445,16467],{},[740,67447,16470],{},[740,67449,16473],{},[15,67451,16476],{},[15,67453,16479,67454,50,67456,16485],{},[22,67455,2523],{},[22,67457,16484],{},[34,67459,16489],{"id":16488},[1074,67461,16493],{"id":16492},[15,67463,16496,67464,754,67466,16501],{},[22,67465,2523],{},[22,67467,16484],{},[74,67469,67470],{"className":16504,"code":16505,"filename":16506,"language":16507,"meta":80,"style":80},[22,67471,67472],{"__ignoreMap":80},[84,67473,67474],{"class":86,"line":87},[84,67475,16505],{},[15,67477,16516,67478,16520],{},[22,67479,16519],{},[1074,67481,16524],{"id":16523},[15,67483,16527],{},[737,67485,67486,67492,67498],{},[740,67487,67488,16535,67490,2686],{},[22,67489,16534],{},[22,67491,2574],{},[740,67493,67494,16543,67496,2686],{},[22,67495,16542],{},[22,67497,2580],{},[740,67499,67500,16551],{},[22,67501,16550],{},[74,67503,67504],{"className":16504,"code":16554,"filename":16555,"language":16507,"meta":80,"style":80},[22,67505,67506,67510,67514,67518,67522,67526],{"__ignoreMap":80},[84,67507,67508],{"class":86,"line":87},[84,67509,16562],{},[84,67511,67512],{"class":86,"line":105},[84,67513,16567],{},[84,67515,67516],{"class":86,"line":122},[84,67517,16572],{},[84,67519,67520],{"class":86,"line":129},[84,67521,16577],{},[84,67523,67524],{"class":86,"line":154},[84,67525,16582],{},[84,67527,67528],{"class":86,"line":159},[84,67529,16587],{},[15,67531,16590],{},[737,67533,67534,67538,67540],{},[740,67535,16595,67536,2686],{},[22,67537,16534],{},[740,67539,16600],{},[740,67541,16603],{},[1074,67543,67544,16610],{"id":16606},[22,67545,16609],{},[15,67547,16613,67548,764],{},[22,67549,16609],{},[15,67551,16618],{},[10842,67553,67554,67560,67566,67576],{},[740,67555,16623,67556,16627,67558,764],{},[22,67557,16626],{},[22,67559,16630],{},[740,67561,13045,67562,16636,67564,764],{},[22,67563,16635],{},[22,67565,16639],{},[740,67567,67568,16645,67570,16648,67572,16651,67574,764],{},[22,67569,16644],{},[22,67571,16609],{},[22,67573,16550],{},[22,67575,16519],{},[740,67577,16656,67578,754,67580,16661],{},[22,67579,16635],{},[22,67581,16609],{},[15,67583,16664,67584,16667],{},[22,67585,16609],{},[34,67587,16671],{"id":16670},[15,67589,16674,67590,16677,67592,16680],{},[22,67591,16542],{},[22,67593,16550],{},[737,67595,67596,67600,67604],{},[740,67597,67598],{},[22,67599,16639],{},[740,67601,67602],{},[22,67603,16691],{},[740,67605,67606],{},[22,67607,16626],{},[74,67609,67610],{"className":394,"code":16698,"filename":16699,"language":397,"meta":80,"style":80},[22,67611,67612,67616,67630,67634,67638,67648,67658,67662,67674,67688,67696,67700,67710,67714,67718,67736,67750,67756,67764,67772,67784,67792,67812,67818,67822,67826,67834,67842,67846,67856,67862,67866,67870,67876,67880,67884,67900,67912,67916,67930,67940,67952,67960,67964,67968,67982,67992,68004,68012,68016,68020,68034,68042,68050,68054,68058,68062,68078,68092,68104,68108,68122,68134,68138,68152,68168,68182,68186,68190,68206,68212,68220,68228,68234,68238,68242,68246,68250,68262,68272,68290,68296,68306,68310,68332,68342,68356,68370,68376,68380,68386,68390,68394],{"__ignoreMap":80},[84,67613,67614],{"class":86,"line":87},[84,67615,16706],{"class":13481},[84,67617,67618,67620,67622,67624,67626,67628],{"class":86,"line":105},[84,67619,132],{"class":108},[84,67621,16713],{"class":135},[84,67623,139],{"class":108},[84,67625,1355],{"class":108},[84,67627,16720],{"class":98},[84,67629,635],{"class":90},[84,67631,67632],{"class":86,"line":122},[84,67633,126],{"emptyLinePlaceholder":125},[84,67635,67636],{"class":86,"line":129},[84,67637,16731],{"class":13481},[84,67639,67640,67642,67644,67646],{"class":86,"line":154},[84,67641,8751],{"class":108},[84,67643,16738],{"class":90},[84,67645,184],{"class":108},[84,67647,6945],{"class":135},[84,67649,67650,67652,67654,67656],{"class":86,"line":159},[84,67651,132],{"class":108},[84,67653,16749],{"class":135},[84,67655,139],{"class":108},[84,67657,16754],{"class":90},[84,67659,67660],{"class":86,"line":178},[84,67661,126],{"emptyLinePlaceholder":125},[84,67663,67664,67666,67668,67670,67672],{"class":86,"line":190},[84,67665,3246],{"class":108},[84,67667,16765],{"class":98},[84,67669,145],{"class":90},[84,67671,16770],{"class":429},[84,67673,438],{"class":90},[84,67675,67676,67678,67680,67682,67684,67686],{"class":86,"line":196},[84,67677,16777],{"class":108},[84,67679,1341],{"class":90},[84,67681,132],{"class":108},[84,67683,16784],{"class":135},[84,67685,16787],{"class":108},[84,67687,16790],{"class":90},[84,67689,67690,67692,67694],{"class":86,"line":201},[84,67691,16795],{"class":90},[84,67693,2598],{"class":98},[84,67695,16800],{"class":90},[84,67697,67698],{"class":86,"line":217},[84,67699,485],{"class":90},[84,67701,67702,67704,67706,67708],{"class":86,"line":227},[84,67703,16809],{"class":90},[84,67705,10566],{"class":135},[84,67707,139],{"class":108},[84,67709,10613],{"class":135},[84,67711,67712],{"class":86,"line":232},[84,67713,193],{"class":90},[84,67715,67716],{"class":86,"line":237},[84,67717,126],{"emptyLinePlaceholder":125},[84,67719,67720,67722,67724,67726,67728,67730,67732,67734],{"class":86,"line":253},[84,67721,3246],{"class":108},[84,67723,16830],{"class":98},[84,67725,145],{"class":90},[84,67727,16635],{"class":429},[84,67729,754],{"class":90},[84,67731,16839],{"class":429},[84,67733,139],{"class":108},[84,67735,16844],{"class":90},[84,67737,67738,67740,67742,67744,67746,67748],{"class":86,"line":266},[84,67739,443],{"class":108},[84,67741,16851],{"class":98},[84,67743,139],{"class":108},[84,67745,169],{"class":90},[84,67747,172],{"class":108},[84,67749,175],{"class":90},[84,67751,67752,67754],{"class":86,"line":271},[84,67753,16864],{"class":98},[84,67755,16800],{"class":90},[84,67757,67758,67760,67762],{"class":86,"line":281},[84,67759,16871],{"class":90},[84,67761,184],{"class":108},[84,67763,16876],{"class":90},[84,67765,67766,67768,67770],{"class":86,"line":286},[84,67767,16881],{"class":90},[84,67769,10533],{"class":98},[84,67771,16800],{"class":90},[84,67773,67774,67776,67778,67780,67782],{"class":86,"line":296},[84,67775,3021],{"class":108},[84,67777,16892],{"class":135},[84,67779,139],{"class":108},[84,67781,16897],{"class":98},[84,67783,635],{"class":90},[84,67785,67786,67788,67790],{"class":86,"line":315},[84,67787,16881],{"class":90},[84,67789,16906],{"class":98},[84,67791,635],{"class":90},[84,67793,67794,67796,67798,67800,67802,67804,67806,67808,67810],{"class":86,"line":321},[84,67795,16871],{"class":90},[84,67797,184],{"class":108},[84,67799,16917],{"class":90},[84,67801,10566],{"class":135},[84,67803,16922],{"class":108},[84,67805,10572],{"class":135},[84,67807,16927],{"class":90},[84,67809,10610],{"class":108},[84,67811,6945],{"class":135},[84,67813,67814,67816],{"class":86,"line":331},[84,67815,1903],{"class":108},[84,67817,16938],{"class":90},[84,67819,67820],{"class":86,"line":336},[84,67821,485],{"class":90},[84,67823,67824],{"class":86,"line":354},[84,67825,126],{"emptyLinePlaceholder":125},[84,67827,67828,67830,67832],{"class":86,"line":360},[84,67829,16951],{"class":90},[84,67831,184],{"class":108},[84,67833,16754],{"class":90},[84,67835,67836,67838,67840],{"class":86,"line":369},[84,67837,16960],{"class":90},[84,67839,184],{"class":108},[84,67841,16965],{"class":90},[84,67843,67844],{"class":86,"line":1453},[84,67845,126],{"emptyLinePlaceholder":125},[84,67847,67848,67850,67852,67854],{"class":86,"line":1462},[84,67849,1338],{"class":108},[84,67851,1341],{"class":90},[84,67853,1344],{"class":108},[84,67855,16980],{"class":90},[84,67857,67858,67860],{"class":86,"line":1484},[84,67859,16985],{"class":98},[84,67861,635],{"class":90},[84,67863,67864],{"class":86,"line":1489},[84,67865,485],{"class":90},[84,67867,67868],{"class":86,"line":1495},[84,67869,126],{"emptyLinePlaceholder":125},[84,67871,67872,67874],{"class":86,"line":1500},[84,67873,557],{"class":108},[84,67875,16876],{"class":90},[84,67877,67878],{"class":86,"line":1516},[84,67879,193],{"class":90},[84,67881,67882],{"class":86,"line":1533},[84,67883,126],{"emptyLinePlaceholder":125},[84,67885,67886,67888,67890,67892,67894,67896,67898],{"class":86,"line":1538},[84,67887,3246],{"class":108},[84,67889,17016],{"class":98},[84,67891,145],{"class":90},[84,67893,2574],{"class":429},[84,67895,754],{"class":90},[84,67897,2580],{"class":429},[84,67899,438],{"class":90},[84,67901,67902,67904,67906,67908,67910],{"class":86,"line":1545},[84,67903,1338],{"class":108},[84,67905,1341],{"class":90},[84,67907,1344],{"class":108},[84,67909,17037],{"class":90},[84,67911,1530],{"class":108},[84,67913,67914],{"class":86,"line":1554},[84,67915,126],{"emptyLinePlaceholder":125},[84,67917,67918,67920,67922,67924,67926,67928],{"class":86,"line":1563},[84,67919,17048],{"class":108},[84,67921,17051],{"class":90},[84,67923,184],{"class":108},[84,67925,17056],{"class":90},[84,67927,2589],{"class":98},[84,67929,17061],{"class":90},[84,67931,67932,67934,67936,67938],{"class":86,"line":1570},[84,67933,1338],{"class":108},[84,67935,1341],{"class":90},[84,67937,1344],{"class":108},[84,67939,17072],{"class":90},[84,67941,67942,67944,67946,67948,67950],{"class":86,"line":1588},[84,67943,17077],{"class":90},[84,67945,184],{"class":108},[84,67947,1355],{"class":108},[84,67949,17084],{"class":98},[84,67951,635],{"class":90},[84,67953,67954,67956,67958],{"class":86,"line":1593},[84,67955,17091],{"class":90},[84,67957,2592],{"class":98},[84,67959,17096],{"class":90},[84,67961,67962],{"class":86,"line":1598},[84,67963,485],{"class":90},[84,67965,67966],{"class":86,"line":1607},[84,67967,126],{"emptyLinePlaceholder":125},[84,67969,67970,67972,67974,67976,67978,67980],{"class":86,"line":1612},[84,67971,17048],{"class":108},[84,67973,17111],{"class":90},[84,67975,184],{"class":108},[84,67977,17116],{"class":90},[84,67979,2589],{"class":98},[84,67981,17121],{"class":90},[84,67983,67984,67986,67988,67990],{"class":86,"line":1621},[84,67985,1338],{"class":108},[84,67987,1341],{"class":90},[84,67989,1344],{"class":108},[84,67991,17132],{"class":90},[84,67993,67994,67996,67998,68000,68002],{"class":86,"line":1639},[84,67995,17137],{"class":90},[84,67997,184],{"class":108},[84,67999,1355],{"class":108},[84,68001,17144],{"class":98},[84,68003,635],{"class":90},[84,68005,68006,68008,68010],{"class":86,"line":1661},[84,68007,17151],{"class":90},[84,68009,2592],{"class":98},[84,68011,17156],{"class":90},[84,68013,68014],{"class":86,"line":1666},[84,68015,485],{"class":90},[84,68017,68018],{"class":86,"line":1688},[84,68019,126],{"emptyLinePlaceholder":125},[84,68021,68022,68024,68026,68028,68030,68032],{"class":86,"line":1703},[84,68023,1338],{"class":108},[84,68025,1341],{"class":90},[84,68027,1344],{"class":108},[84,68029,17175],{"class":90},[84,68031,17178],{"class":98},[84,68033,17181],{"class":90},[84,68035,68036,68038,68040],{"class":86,"line":1717},[84,68037,16795],{"class":90},[84,68039,2595],{"class":98},[84,68041,17190],{"class":90},[84,68043,68044,68046,68048],{"class":86,"line":1731},[84,68045,17195],{"class":90},[84,68047,10533],{"class":98},[84,68049,17200],{"class":90},[84,68051,68052],{"class":86,"line":1741},[84,68053,485],{"class":90},[84,68055,68056],{"class":86,"line":1746},[84,68057,193],{"class":90},[84,68059,68060],{"class":86,"line":1763},[84,68061,126],{"emptyLinePlaceholder":125},[84,68063,68064,68066,68068,68070,68072,68074,68076],{"class":86,"line":1772},[84,68065,3246],{"class":108},[84,68067,17219],{"class":98},[84,68069,145],{"class":90},[84,68071,2574],{"class":429},[84,68073,754],{"class":90},[84,68075,2580],{"class":429},[84,68077,438],{"class":90},[84,68079,68080,68082,68084,68086,68088,68090],{"class":86,"line":2283},[84,68081,443],{"class":108},[84,68083,17236],{"class":135},[84,68085,139],{"class":108},[84,68087,17056],{"class":90},[84,68089,2589],{"class":98},[84,68091,17061],{"class":90},[84,68093,68094,68096,68098,68100,68102],{"class":86,"line":2288},[84,68095,1338],{"class":108},[84,68097,1341],{"class":90},[84,68099,1344],{"class":108},[84,68101,17255],{"class":90},[84,68103,1530],{"class":108},[84,68105,68106],{"class":86,"line":2307},[84,68107,126],{"emptyLinePlaceholder":125},[84,68109,68110,68112,68114,68116,68118,68120],{"class":86,"line":2320},[84,68111,443],{"class":108},[84,68113,16784],{"class":135},[84,68115,139],{"class":108},[84,68117,17116],{"class":90},[84,68119,2589],{"class":98},[84,68121,17121],{"class":90},[84,68123,68124,68126,68128,68130,68132],{"class":86,"line":2333},[84,68125,1338],{"class":108},[84,68127,1341],{"class":90},[84,68129,1344],{"class":108},[84,68131,17286],{"class":90},[84,68133,1530],{"class":108},[84,68135,68136],{"class":86,"line":2346},[84,68137,126],{"emptyLinePlaceholder":125},[84,68139,68140,68142,68144,68146,68148,68150],{"class":86,"line":2355},[84,68141,443],{"class":108},[84,68143,17299],{"class":135},[84,68145,139],{"class":108},[84,68147,1355],{"class":108},[84,68149,17144],{"class":98},[84,68151,635],{"class":90},[84,68153,68154,68156,68158,68160,68162,68164,68166],{"class":86,"line":2360},[84,68155,17312],{"class":90},[84,68157,17315],{"class":98},[84,68159,3120],{"class":90},[84,68161,16770],{"class":429},[84,68163,3126],{"class":90},[84,68165,172],{"class":108},[84,68167,175],{"class":90},[84,68169,68170,68172,68174,68176,68178,68180],{"class":86,"line":2375},[84,68171,2146],{"class":108},[84,68173,17332],{"class":90},[84,68175,6848],{"class":108},[84,68177,17337],{"class":90},[84,68179,2595],{"class":98},[84,68181,16800],{"class":90},[84,68183,68184],{"class":86,"line":2384},[84,68185,3104],{"class":90},[84,68187,68188],{"class":86,"line":4853},[84,68189,126],{"emptyLinePlaceholder":125},[84,68191,68192,68194,68196,68198,68200,68202,68204],{"class":86,"line":4865},[84,68193,17354],{"class":90},[84,68195,17315],{"class":98},[84,68197,3120],{"class":90},[84,68199,16770],{"class":429},[84,68201,3126],{"class":90},[84,68203,172],{"class":108},[84,68205,175],{"class":90},[84,68207,68208,68210],{"class":86,"line":4870},[84,68209,2146],{"class":108},[84,68211,17373],{"class":90},[84,68213,68214,68216,68218],{"class":86,"line":4879},[84,68215,17378],{"class":90},[84,68217,17381],{"class":98},[84,68219,16800],{"class":90},[84,68221,68222,68224,68226],{"class":86,"line":4884},[84,68223,2090],{"class":90},[84,68225,17390],{"class":108},[84,68227,175],{"class":90},[84,68229,68230,68232],{"class":86,"line":4893},[84,68231,17397],{"class":98},[84,68233,635],{"class":90},[84,68235,68236],{"class":86,"line":4910},[84,68237,1936],{"class":90},[84,68239,68240],{"class":86,"line":4920},[84,68241,3104],{"class":90},[84,68243,68244],{"class":86,"line":4934},[84,68245,193],{"class":90},[84,68247,68248],{"class":86,"line":4943},[84,68249,126],{"emptyLinePlaceholder":125},[84,68251,68252,68254,68256,68258,68260],{"class":86,"line":4949},[84,68253,3246],{"class":108},[84,68255,2814],{"class":98},[84,68257,145],{"class":90},[84,68259,17426],{"class":429},[84,68261,438],{"class":90},[84,68263,68264,68266,68268,68270],{"class":86,"line":4959},[84,68265,557],{"class":108},[84,68267,1355],{"class":108},[84,68269,17437],{"class":98},[84,68271,17440],{"class":90},[84,68273,68274,68276,68278,68280,68282,68284,68286,68288],{"class":86,"line":4968},[84,68275,17445],{"class":98},[84,68277,145],{"class":90},[84,68279,2574],{"class":429},[84,68281,754],{"class":90},[84,68283,2580],{"class":429},[84,68285,754],{"class":90},[84,68287,17458],{"class":429},[84,68289,438],{"class":90},[84,68291,68292,68294],{"class":86,"line":4973},[84,68293,17465],{"class":98},[84,68295,17468],{"class":90},[84,68297,68298,68300,68302,68304],{"class":86,"line":4997},[84,68299,3539],{"class":108},[84,68301,17475],{"class":90},[84,68303,2589],{"class":98},[84,68305,17480],{"class":90},[84,68307,68308],{"class":86,"line":5011},[84,68309,7783],{"class":90},[84,68311,68312,68314,68316,68318,68320,68322,68324,68326,68328,68330],{"class":86,"line":5024},[84,68313,17489],{"class":98},[84,68315,145],{"class":90},[84,68317,2574],{"class":429},[84,68319,754],{"class":90},[84,68321,2580],{"class":429},[84,68323,754],{"class":90},[84,68325,4663],{"class":429},[84,68327,754],{"class":90},[84,68329,17458],{"class":429},[84,68331,438],{"class":90},[84,68333,68334,68336,68338,68340],{"class":86,"line":5039},[84,68335,1964],{"class":108},[84,68337,17514],{"class":135},[84,68339,139],{"class":108},[84,68341,17519],{"class":90},[84,68343,68344,68346,68348,68350,68352,68354],{"class":86,"line":5068},[84,68345,1964],{"class":108},[84,68347,16892],{"class":135},[84,68349,139],{"class":108},[84,68351,17475],{"class":90},[84,68353,2592],{"class":98},[84,68355,17534],{"class":90},[84,68357,68358,68360,68362,68364,68366,68368],{"class":86,"line":5077},[84,68359,1987],{"class":108},[84,68361,1341],{"class":90},[84,68363,1344],{"class":108},[84,68365,17545],{"class":90},[84,68367,17548],{"class":98},[84,68369,17551],{"class":90},[84,68371,68372,68374],{"class":86,"line":5082},[84,68373,17556],{"class":98},[84,68375,17468],{"class":90},[84,68377,68378],{"class":86,"line":5103},[84,68379,2013],{"class":90},[84,68381,68382,68384],{"class":86,"line":5112},[84,68383,3539],{"class":108},[84,68385,16938],{"class":90},[84,68387,68388],{"class":86,"line":5768},[84,68389,1936],{"class":90},[84,68391,68392],{"class":86,"line":5781},[84,68393,3104],{"class":90},[84,68395,68396],{"class":86,"line":5794},[84,68397,193],{"class":90},[74,68399,68400],{"className":394,"code":17583,"filename":17584,"language":397,"meta":80,"style":80},[22,68401,68402,68422,68426,68436,68458,68462,68466,68472],{"__ignoreMap":80},[84,68403,68404,68406,68408,68410,68412,68414,68416,68418,68420],{"class":86,"line":87},[84,68405,132],{"class":108},[84,68407,17593],{"class":135},[84,68409,139],{"class":108},[84,68411,2814],{"class":98},[84,68413,17600],{"class":90},[84,68415,4320],{"class":135},[84,68417,17605],{"class":90},[84,68419,2938],{"class":135},[84,68421,17610],{"class":90},[84,68423,68424],{"class":86,"line":105},[84,68425,126],{"emptyLinePlaceholder":125},[84,68427,68428,68430,68432,68434],{"class":86,"line":122},[84,68429,17619],{"class":98},[84,68431,2992],{"class":90},[84,68433,172],{"class":108},[84,68435,175],{"class":90},[84,68437,68438,68440,68442,68444,68446,68448,68450,68452,68454,68456],{"class":86,"line":129},[84,68439,3135],{"class":90},[84,68441,3138],{"class":98},[84,68443,145],{"class":90},[84,68445,17636],{"class":118},[84,68447,17639],{"class":90},[84,68449,3073],{"class":108},[84,68451,17644],{"class":90},[84,68453,1203],{"class":108},[84,68455,17649],{"class":118},[84,68457,151],{"class":90},[84,68459,68460],{"class":86,"line":154},[84,68461,1492],{"class":90},[84,68463,68464],{"class":86,"line":159},[84,68465,126],{"emptyLinePlaceholder":125},[84,68467,68468,68470],{"class":86,"line":178},[84,68469,17664],{"class":90},[84,68471,10168],{"class":108},[84,68473,68474,68476,68478],{"class":86,"line":190},[84,68475,17671],{"class":90},[84,68477,184],{"class":108},[84,68479,224],{"class":135},[1074,68481,17679],{"id":17678},[10842,68483,68484,68488,68500,68506,68514],{},[740,68485,68486,17686],{},[22,68487,17619],{},[740,68489,17689,68490,2488,68492,17695,68494,17698,68496,17702,68498,764],{},[22,68491,17692],{},[22,68493,17664],{},[22,68495,2589],{},[22,68497,17701],{},[22,68499,16644],{},[740,68501,68502,17709,68504,764],{},[22,68503,16644],{},[22,68505,17712],{},[740,68507,17715,68508,17695,68510,17702,68512,764],{},[22,68509,17664],{},[22,68511,2592],{},[22,68513,17722],{},[740,68515,68516,17727,68518,17730],{},[22,68517,17722],{},[22,68519,16550],{},[15,68521,17733],{},[34,68523,17737],{"id":17736},[1074,68525,68526,17743,68528],{"id":17740},[22,68527,13059],{},[22,68529,17701],{},[15,68531,68532,17750,68534,17753,68536,754,68538,754,68540,754,68542,17763],{},[22,68533,13059],{},[22,68535,17701],{},[22,68537,2589],{},[22,68539,2592],{},[22,68541,17178],{},[22,68543,17762],{},[737,68545,68546,68550,68554],{},[740,68547,995,68548,17770],{},[22,68549,2589],{},[740,68551,995,68552,17775],{},[22,68553,2592],{},[740,68555,17778,68556,754,68558,754,68560,754,68562,17788],{},[22,68557,16542],{},[22,68559,16550],{},[22,68561,16534],{},[22,68563,17787],{},[1074,68565,68566,17794],{"id":17791},[22,68567,24],{},[15,68569,17797,68570,764],{},[22,68571,17800],{},[15,68573,17803],{},[74,68575,68576],{"className":394,"code":17806,"filename":17807,"language":397,"meta":80,"style":80},[22,68577,68578,68590,68600,68608,68618,68624,68628,68640,68654,68662,68672,68676,68680,68684,68690],{"__ignoreMap":80},[84,68579,68580,68582,68584,68586,68588],{"class":86,"line":87},[84,68581,3246],{"class":108},[84,68583,142],{"class":98},[84,68585,145],{"class":90},[84,68587,17820],{"class":429},[84,68589,438],{"class":90},[84,68591,68592,68594,68596,68598],{"class":86,"line":105},[84,68593,443],{"class":108},[84,68595,17829],{"class":135},[84,68597,139],{"class":108},[84,68599,175],{"class":90},[84,68601,68602,68604,68606],{"class":86,"line":122},[84,68603,17445],{"class":108},[84,68605,17840],{"class":98},[84,68607,1307],{"class":90},[84,68609,68610,68612,68614,68616],{"class":86,"line":129},[84,68611,17465],{"class":98},[84,68613,17849],{"class":90},[84,68615,17852],{"class":118},[84,68617,151],{"class":90},[84,68619,68620,68622],{"class":86,"line":154},[84,68621,3539],{"class":108},[84,68623,17861],{"class":90},[84,68625,68626],{"class":86,"line":159},[84,68627,7783],{"class":90},[84,68629,68630,68632,68634,68636,68638],{"class":86,"line":178},[84,68631,17489],{"class":108},[84,68633,17840],{"class":98},[84,68635,145],{"class":90},[84,68637,2604],{"class":429},[84,68639,438],{"class":90},[84,68641,68642,68644,68646,68648,68650,68652],{"class":86,"line":190},[84,68643,1987],{"class":108},[84,68645,1341],{"class":90},[84,68647,1344],{"class":108},[84,68649,17545],{"class":90},[84,68651,17548],{"class":98},[84,68653,17892],{"class":90},[84,68655,68656,68658,68660],{"class":86,"line":196},[84,68657,17897],{"class":90},[84,68659,184],{"class":108},[84,68661,17902],{"class":90},[84,68663,68664,68666,68668,68670],{"class":86,"line":201},[84,68665,17556],{"class":98},[84,68667,17849],{"class":90},[84,68669,17852],{"class":118},[84,68671,151],{"class":90},[84,68673,68674],{"class":86,"line":217},[84,68675,2013],{"class":90},[84,68677,68678],{"class":86,"line":227},[84,68679,1936],{"class":90},[84,68681,68682],{"class":86,"line":232},[84,68683,485],{"class":90},[84,68685,68686,68688],{"class":86,"line":237},[84,68687,557],{"class":108},[84,68689,17931],{"class":90},[84,68691,68692],{"class":86,"line":253},[84,68693,193],{"class":90},[15,68695,17938],{},[737,68697,68698,68702],{},[740,68699,17943,68700,17946],{},[22,68701,24],{},[740,68703,17949,68704,17952],{},[22,68705,17800],{},[1074,68707,68708,17958,68710],{"id":17955},[22,68709,2523],{},[22,68711,17619],{},[15,68713,68714,17965,68716,17968],{},[22,68715,2523],{},[22,68717,17619],{},[10842,68719,68720,68724,68726,68728],{},[740,68721,17973,68722,764],{},[22,68723,17800],{},[740,68725,17978],{},[740,68727,17981],{},[740,68729,17984,68730,16677,68732,17989],{},[22,68731,16644],{},[22,68733,17722],{},[15,68735,17992],{},[737,68737,68738,68742,68746],{},[740,68739,17997,68740],{},[22,68741,18000],{},[740,68743,18003,68744],{},[22,68745,18006],{},[740,68747,18009],{},[1074,68749,18013],{"id":18012},[15,68751,18016],{},[10842,68753,68754,68756,68758],{},[740,68755,18021],{},[740,68757,18024],{},[740,68759,18027],{},[15,68761,18030],{},[74,68763,68764],{"className":394,"code":18033,"filename":18034,"language":397,"meta":80,"style":80},[22,68765,68766,68780,68790,68806,68810,68822,68830,68838,68846,68858,68876,68884,68892,68896],{"__ignoreMap":80},[84,68767,68768,68770,68772,68774,68776,68778],{"class":86,"line":87},[84,68769,132],{"class":108},[84,68771,18043],{"class":135},[84,68773,139],{"class":108},[84,68775,1355],{"class":108},[84,68777,17144],{"class":98},[84,68779,635],{"class":90},[84,68781,68782,68784,68786,68788],{"class":86,"line":105},[84,68783,8751],{"class":108},[84,68785,18058],{"class":90},[84,68787,184],{"class":108},[84,68789,224],{"class":135},[84,68791,68792,68794,68796,68798,68800,68802,68804],{"class":86,"line":122},[84,68793,132],{"class":108},[84,68795,18069],{"class":135},[84,68797,139],{"class":108},[84,68799,18074],{"class":135},[84,68801,764],{"class":90},[84,68803,18079],{"class":98},[84,68805,635],{"class":90},[84,68807,68808],{"class":86,"line":129},[84,68809,126],{"emptyLinePlaceholder":125},[84,68811,68812,68814,68816,68818,68820],{"class":86,"line":154},[84,68813,3246],{"class":108},[84,68815,18092],{"class":98},[84,68817,145],{"class":90},[84,68819,18097],{"class":429},[84,68821,438],{"class":90},[84,68823,68824,68826,68828],{"class":86,"line":159},[84,68825,18104],{"class":90},[84,68827,2595],{"class":98},[84,68829,18109],{"class":90},[84,68831,68832,68834,68836],{"class":86,"line":178},[84,68833,1338],{"class":108},[84,68835,18116],{"class":90},[84,68837,1530],{"class":108},[84,68839,68840,68842,68844],{"class":86,"line":190},[84,68841,18123],{"class":90},[84,68843,184],{"class":108},[84,68845,187],{"class":135},[84,68847,68848,68850,68852,68854,68856],{"class":86,"line":196},[84,68849,18132],{"class":90},[84,68851,12995],{"class":98},[84,68853,2992],{"class":90},[84,68855,172],{"class":108},[84,68857,175],{"class":90},[84,68859,68860,68862,68864,68866,68868,68870,68872,68874],{"class":86,"line":201},[84,68861,18145],{"class":90},[84,68863,17315],{"class":98},[84,68865,3120],{"class":90},[84,68867,18152],{"class":429},[84,68869,3126],{"class":90},[84,68871,172],{"class":108},[84,68873,18159],{"class":98},[84,68875,3054],{"class":90},[84,68877,68878,68880,68882],{"class":86,"line":217},[84,68879,18145],{"class":90},[84,68881,18168],{"class":98},[84,68883,635],{"class":90},[84,68885,68886,68888,68890],{"class":86,"line":227},[84,68887,18175],{"class":90},[84,68889,184],{"class":108},[84,68891,224],{"class":135},[84,68893,68894],{"class":86,"line":232},[84,68895,3104],{"class":90},[84,68897,68898],{"class":86,"line":237},[84,68899,193],{"class":90},[15,68901,18190],{},[34,68903,784],{"id":783},[1074,68905,18196],{"id":18195},[74,68907,68908],{"className":394,"code":18199,"filename":18200,"language":397,"meta":80,"style":80},[22,68909,68910,68926],{"__ignoreMap":80},[84,68911,68912,68914,68916,68918,68920,68922,68924],{"class":86,"line":87},[84,68913,132],{"class":108},[84,68915,17593],{"class":135},[84,68917,139],{"class":108},[84,68919,2814],{"class":98},[84,68921,17600],{"class":90},[84,68923,4320],{"class":135},[84,68925,17610],{"class":90},[84,68927,68928,68930,68932,68934,68936,68938,68940],{"class":86,"line":105},[84,68929,132],{"class":108},[84,68931,6763],{"class":90},[84,68933,18227],{"class":135},[84,68935,18230],{"class":90},[84,68937,184],{"class":108},[84,68939,18235],{"class":90},[84,68941,18238],{"class":13481},[15,68943,18241],{},[737,68945,68946,68950],{},[740,68947,10045,68948],{},[22,68949,18248],{},[740,68951,18251,68952,764],{},[22,68953,17664],{},[1074,68955,18257],{"id":18256},[15,68957,18260,68958,18263,68960,18266,68962,764],{},[22,68959,17701],{},[22,68961,17722],{},[22,68963,17800],{},[1074,68965,68966,13234,68968],{"id":18271},[22,68967,18274],{},[22,68969,24],{},[15,68971,68972,18281,68974,18284],{},[22,68973,18274],{},[22,68975,17800],{},[74,68977,68978],{"className":394,"code":18287,"filename":18288,"language":397,"meta":80,"style":80},[22,68979,68980,68996,69006],{"__ignoreMap":80},[84,68981,68982,68984,68986,68988,68990,68992,68994],{"class":86,"line":87},[84,68983,132],{"class":108},[84,68985,18297],{"class":135},[84,68987,139],{"class":108},[84,68989,18302],{"class":98},[84,68991,18305],{"class":90},[84,68993,18308],{"class":118},[84,68995,17610],{"class":90},[84,68997,68998,69000,69002,69004],{"class":86,"line":105},[84,68999,18315],{"class":90},[84,69001,184],{"class":108},[84,69003,18320],{"class":118},[84,69005,18323],{"class":13481},[84,69007,69008,69010,69012,69014,69016,69018,69020,69022],{"class":86,"line":122},[84,69009,18328],{"class":90},[84,69011,184],{"class":108},[84,69013,6763],{"class":90},[84,69015,18335],{"class":108},[84,69017,18338],{"class":90},[84,69019,18341],{"class":118},[84,69021,18230],{"class":90},[84,69023,18346],{"class":13481},[15,69025,18349],{},[737,69027,69028,69030,69032],{},[740,69029,18354],{},[740,69031,18357],{},[740,69033,18360],{},[1074,69035,18364],{"id":18363},[15,69037,18367],{},[737,69039,69040,69044,69048,69054],{},[740,69041,18372,69042,18375],{},[22,69043,16484],{},[740,69045,18378,69046,18375],{},[22,69047,2523],{},[740,69049,10045,69050,18385,69052,18388],{},[22,69051,16484],{},[22,69053,2523],{},[740,69055,18391],{},[34,69057,18395],{"id":18394},[15,69059,18398],{},[737,69061,69062,69064,69066],{},[740,69063,18403],{},[740,69065,18406],{},[740,69067,18409],{},[15,69069,18412],{},[737,69071,69072,69074,69076],{},[740,69073,18417],{},[740,69075,18420],{},[740,69077,18423,69078,754,69080,754,69082,754,69084,754,69086,18434],{},[22,69079,24],{},[22,69081,13059],{},[22,69083,18274],{},[22,69085,2523],{},[22,69087,2526],{},[823,69089,69090],{},[15,69091,18439],{},[835,69093,18442],{},{"title":80,"searchDepth":105,"depth":105,"links":69095},[69096,69097,69102,69105,69111,69117],{"id":16455,"depth":105,"text":16456},{"id":16488,"depth":105,"text":16489,"children":69098},[69099,69100,69101],{"id":16492,"depth":122,"text":16493},{"id":16523,"depth":122,"text":16524},{"id":16606,"depth":122,"text":18451},{"id":16670,"depth":105,"text":16671,"children":69103},[69104],{"id":17678,"depth":122,"text":17679},{"id":17736,"depth":105,"text":17737,"children":69106},[69107,69108,69109,69110],{"id":17740,"depth":122,"text":18458},{"id":17791,"depth":122,"text":18460},{"id":17955,"depth":122,"text":18462},{"id":18012,"depth":122,"text":18013},{"id":783,"depth":105,"text":784,"children":69112},[69113,69114,69115,69116],{"id":18195,"depth":122,"text":18196},{"id":18256,"depth":122,"text":18257},{"id":18271,"depth":122,"text":18469},{"id":18363,"depth":122,"text":18364},{"id":18394,"depth":105,"text":18395},{"updatedAt":18476,"coverCaption":18477,"author":868,"keywords":69119},[871,18479,18480,17381,18481,2523],[69121],{"headline":16435,"author":69122,"datePublished":18476,"@type":880},{"name":868,"@type":879},{"title":16435,"description":18474},[69125,69126,69127,69128],{"tag":3945,"color":3946},{"tag":2458,"color":2459},{"tag":18492,"color":18493},{"tag":2462,"color":2463},{"id":18497,"title":18498,"body":69130,"cover":21276,"coverAlt":21277,"date":21278,"description":21279,"draft":852,"extension":853,"lab":882,"locale":864,"meta":71629,"navigation":125,"path":21286,"schemaOrg":71631,"seo":71634,"series":21291,"seriesDescription":21292,"seriesOrder":217,"seriesTitle":21293,"slug":882,"stem":21294,"tags":71635,"__hash__":21305},{"type":8,"value":69131,"toc":71614},[69132,69134,69136,69140,69160,69166,69168,69172,69174,69188,69190,69200,69204,69232,69238,69240,69256,69258,69272,69274,69356,69358,69372,69376,69984,70422,70436,70438,70442,70584,70674,70706,70710,71166,71492,71574,71584,71586,71612],[11,69133,18504],{"id":18503},[34,69135,18508],{"id":18507},[15,69137,18511,69138,18515],{},[958,69139,18514],{},[737,69141,69142,69146,69150,69154],{},[740,69143,18520,69144,909],{},[22,69145,18523],{},[740,69147,18526,69148,909],{},[22,69149,18529],{},[740,69151,18532,69152,909],{},[22,69153,18535],{},[740,69155,18538,69156,754,69158,18543],{},[22,69157,8564],{},[22,69159,8389],{},[15,69161,18546,69162,754,69164,18553],{},[958,69163,18549],{},[958,69165,18552],{},[34,69167,947],{"id":946},[15,69169,18558,69170,764],{},[958,69171,18561],{},[15,69173,18564],{},[737,69175,69176,69180,69184],{},[740,69177,69178,18571],{},[22,69179,1085],{},[740,69181,69182,18576],{},[22,69183,9844],{},[740,69185,69186,18581],{},[22,69187,6063],{},[15,69189,18584],{},[737,69191,69192],{},[740,69193,69194,754,69196,754,69198],{},[22,69195,11417],{},[22,69197,9841],{},[22,69199,8275],{},[15,69201,18597,69202,18601],{},[22,69203,18600],{},[737,69205,69206,69212,69220,69226],{},[740,69207,69208,18609,69210,2686],{},[22,69209,18608],{},[22,69211,18612],{},[740,69213,69214,18618,69216,16677,69218,2686],{},[22,69215,18617],{},[22,69217,9841],{},[22,69219,9844],{},[740,69221,69222,18628,69224,2686],{},[22,69223,18627],{},[22,69225,18631],{},[740,69227,69228,18637,69230,2686],{},[22,69229,18636],{},[22,69231,18640],{},[15,69233,18643,69234,18647,69236,764],{},[958,69235,18646],{},[958,69237,18650],{},[34,69239,18654],{"id":18653},[10842,69241,69242,69244,69250],{},[740,69243,18659],{},[740,69245,18662,69246,754,69248,18667],{},[22,69247,8564],{},[22,69249,8389],{},[740,69251,18670,69252,754,69254,2686],{},[22,69253,18523],{},[22,69255,18535],{},[34,69257,18678],{"id":18677},[10842,69259,69260,69262,69270],{},[740,69261,18683],{},[740,69263,18686,69264,754,69266,754,69268,2686],{},[22,69265,18689],{},[22,69267,18692],{},[22,69269,18695],{},[740,69271,18698],{},[34,69273,784],{"id":783},[10842,69275,69276,69292,69308,69324,69340],{},[740,69277,69278,69282],{},[958,69279,18707,69280,764],{},[22,69281,6063],{},[737,69283,69284,69288],{},[740,69285,18714,69286,18717],{},[22,69287,1085],{},[740,69289,18720,69290,764],{},[22,69291,6063],{},[740,69293,69294,69296],{},[958,69295,18727],{},[737,69297,69298,69300],{},[740,69299,18732],{},[740,69301,18735,69302,754,69304,2488,69306,764],{},[22,69303,4663],{},[22,69305,18740],{},[22,69307,18743],{},[740,69309,69310,69312],{},[958,69311,18748],{},[737,69313,69314,69316],{},[740,69315,18753],{},[740,69317,18756,69318,754,69320,754,69322,18764],{},[22,69319,18759],{},[22,69321,4978],{},[22,69323,302],{},[740,69325,69326,69328],{},[958,69327,18769],{},[737,69329,69330,69336],{},[740,69331,18774,69332,18777,69334,18780],{},[22,69333,1085],{},[22,69335,18608],{},[740,69337,18783,69338,764],{},[22,69339,9844],{},[740,69341,69342,69346],{},[958,69343,18790,69344,764],{},[22,69345,9844],{},[737,69347,69348,69350],{},[740,69349,18797],{},[740,69351,18800,69352,2488,69354,18805],{},[22,69353,18608],{},[22,69355,18617],{},[34,69357,2736],{"id":2735},[737,69359,69360,69364,69368],{},[740,69361,69362,18814],{},[22,69363,18523],{},[740,69365,69366,18819],{},[22,69367,18535],{},[740,69369,69370,18825],{},[22,69371,18824],{},[1074,69373,69374,18831],{"id":18828},[22,69375,18535],{},[74,69377,69378],{"className":76,"code":18834,"filename":873,"language":79,"meta":80,"style":80},[22,69379,69380,69396,69410,69422,69426,69450,69454,69468,69490,69500,69504,69508,69524,69528,69552,69566,69586,69590,69594,69602,69606,69628,69648,69662,69666,69670,69684,69692,69696,69700,69704,69712,69716,69720,69736,69740,69744,69758,69762,69778,69786,69790,69794,69798,69808,69814,69830,69834,69840,69846,69850,69854,69862,69866,69874,69888,69912,69916,69936,69948,69960,69968,69976],{"__ignoreMap":80},[84,69381,69382,69384,69386,69388,69390,69392,69394],{"class":86,"line":87},[84,69383,91],{"class":90},[84,69385,95],{"class":94},[84,69387,99],{"class":98},[84,69389,1161],{"class":98},[84,69391,184],{"class":90},[84,69393,1166],{"class":118},[84,69395,102],{"class":90},[84,69397,69398,69400,69402,69404,69406,69408],{"class":86,"line":105},[84,69399,109],{"class":108},[84,69401,5046],{"class":108},[84,69403,18861],{"class":90},[84,69405,115],{"class":108},[84,69407,18866],{"class":118},[84,69409,18869],{"class":90},[84,69411,69412,69414,69416,69418,69420],{"class":86,"line":122},[84,69413,109],{"class":108},[84,69415,112],{"class":90},[84,69417,115],{"class":108},[84,69419,18866],{"class":118},[84,69421,18869],{"class":90},[84,69423,69424],{"class":86,"line":129},[84,69425,126],{"emptyLinePlaceholder":125},[84,69427,69428,69430,69432,69434,69436,69438,69440,69442,69444,69446,69448],{"class":86,"line":154},[84,69429,1188],{"class":108},[84,69431,18892],{"class":98},[84,69433,139],{"class":108},[84,69435,1341],{"class":90},[84,69437,3123],{"class":429},[84,69439,1203],{"class":108},[84,69441,18903],{"class":98},[84,69443,3126],{"class":90},[84,69445,172],{"class":108},[84,69447,18910],{"class":135},[84,69449,18869],{"class":90},[84,69451,69452],{"class":86,"line":159},[84,69453,126],{"emptyLinePlaceholder":125},[84,69455,69456,69458,69460,69462,69464,69466],{"class":86,"line":178},[84,69457,1188],{"class":108},[84,69459,18923],{"class":98},[84,69461,139],{"class":108},[84,69463,18928],{"class":98},[84,69465,18931],{"class":108},[84,69467,175],{"class":90},[84,69469,69470,69472,69474,69476,69478,69480,69482,69484,69486,69488],{"class":86,"line":190},[84,69471,18938],{"class":98},[84,69473,18941],{"class":108},[84,69475,1341],{"class":90},[84,69477,3123],{"class":429},[84,69479,1203],{"class":108},[84,69481,18903],{"class":98},[84,69483,3126],{"class":90},[84,69485,172],{"class":108},[84,69487,18910],{"class":135},[84,69489,18869],{"class":90},[84,69491,69492,69494,69496,69498],{"class":86,"line":196},[84,69493,18962],{"class":429},[84,69495,18941],{"class":108},[84,69497,18892],{"class":98},[84,69499,18869],{"class":90},[84,69501,69502],{"class":86,"line":201},[84,69503,18973],{"class":90},[84,69505,69506],{"class":86,"line":217},[84,69507,126],{"emptyLinePlaceholder":125},[84,69509,69510,69512,69514,69516,69518,69520,69522],{"class":86,"line":227},[84,69511,132],{"class":108},[84,69513,136],{"class":135},[84,69515,139],{"class":108},[84,69517,142],{"class":98},[84,69519,145],{"class":90},[84,69521,148],{"class":135},[84,69523,18994],{"class":90},[84,69525,69526],{"class":86,"line":232},[84,69527,126],{"emptyLinePlaceholder":125},[84,69529,69530,69532,69534,69536,69538,69540,69542,69544,69546,69548,69550],{"class":86,"line":237},[84,69531,132],{"class":108},[84,69533,19005],{"class":135},[84,69535,1203],{"class":108},[84,69537,19010],{"class":98},[84,69539,91],{"class":90},[84,69541,19015],{"class":98},[84,69543,754],{"class":90},[84,69545,19020],{"class":98},[84,69547,19023],{"class":90},[84,69549,184],{"class":108},[84,69551,175],{"class":90},[84,69553,69554,69556,69558,69560,69562,69564],{"class":86,"line":253},[84,69555,7551],{"class":98},[84,69557,145],{"class":90},[84,69559,19036],{"class":429},[84,69561,754],{"class":90},[84,69563,18600],{"class":429},[84,69565,438],{"class":90},[84,69567,69568,69570,69572,69574,69576,69578,69580,69582,69584],{"class":86,"line":266},[84,69569,2146],{"class":108},[84,69571,1341],{"class":90},[84,69573,6552],{"class":108},[84,69575,19053],{"class":90},[84,69577,6848],{"class":108},[84,69579,19058],{"class":118},[84,69581,3126],{"class":90},[84,69583,19063],{"class":108},[84,69585,18869],{"class":90},[84,69587,69588],{"class":86,"line":271},[84,69589,126],{"emptyLinePlaceholder":125},[84,69591,69592],{"class":86,"line":281},[84,69593,19074],{"class":13481},[84,69595,69596,69598,69600],{"class":86,"line":286},[84,69597,19079],{"class":90},[84,69599,184],{"class":108},[84,69601,19084],{"class":90},[84,69603,69604],{"class":86,"line":296},[84,69605,126],{"emptyLinePlaceholder":125},[84,69607,69608,69610,69612,69614,69616,69618,69620,69622,69624,69626],{"class":86,"line":315},[84,69609,3021],{"class":108},[84,69611,19095],{"class":98},[84,69613,139],{"class":108},[84,69615,1341],{"class":90},[84,69617,3123],{"class":429},[84,69619,1203],{"class":108},[84,69621,18903],{"class":98},[84,69623,3126],{"class":90},[84,69625,172],{"class":108},[84,69627,175],{"class":90},[84,69629,69630,69632,69634,69636,69638,69640,69642,69644,69646],{"class":86,"line":321},[84,69631,1964],{"class":108},[84,69633,19118],{"class":135},[84,69635,139],{"class":108},[84,69637,19123],{"class":90},[84,69639,1397],{"class":108},[84,69641,19128],{"class":98},[84,69643,1261],{"class":108},[84,69645,1264],{"class":135},[84,69647,18869],{"class":90},[84,69649,69650,69652,69654,69656,69658,69660],{"class":86,"line":331},[84,69651,1987],{"class":108},[84,69653,1341],{"class":90},[84,69655,1344],{"class":108},[84,69657,19145],{"class":90},[84,69659,19063],{"class":108},[84,69661,18869],{"class":90},[84,69663,69664],{"class":86,"line":336},[84,69665,126],{"emptyLinePlaceholder":125},[84,69667,69668],{"class":86,"line":354},[84,69669,19158],{"class":13481},[84,69671,69672,69674,69676,69678,69680,69682],{"class":86,"line":360},[84,69673,1987],{"class":108},[84,69675,1341],{"class":90},[84,69677,1344],{"class":108},[84,69679,19169],{"class":90},[84,69681,19172],{"class":98},[84,69683,19175],{"class":90},[84,69685,69686,69688,69690],{"class":86,"line":369},[84,69687,19180],{"class":90},[84,69689,19183],{"class":98},[84,69691,19186],{"class":90},[84,69693,69694],{"class":86,"line":1453},[84,69695,2013],{"class":90},[84,69697,69698],{"class":86,"line":1462},[84,69699,19195],{"class":90},[84,69701,69702],{"class":86,"line":1484},[84,69703,126],{"emptyLinePlaceholder":125},[84,69705,69706,69708,69710],{"class":86,"line":1489},[84,69707,19204],{"class":90},[84,69709,184],{"class":108},[84,69711,19209],{"class":90},[84,69713,69714],{"class":86,"line":1495},[84,69715,126],{"emptyLinePlaceholder":125},[84,69717,69718],{"class":86,"line":1500},[84,69719,19218],{"class":13481},[84,69721,69722,69724,69726,69728,69730,69732,69734],{"class":86,"line":1516},[84,69723,19223],{"class":90},[84,69725,9013],{"class":98},[84,69727,145],{"class":90},[84,69729,19230],{"class":118},[84,69731,19233],{"class":90},[84,69733,2938],{"class":135},[84,69735,18994],{"class":90},[84,69737,69738],{"class":86,"line":1533},[84,69739,1941],{"class":90},[84,69741,69742],{"class":86,"line":1538},[84,69743,126],{"emptyLinePlaceholder":125},[84,69745,69746,69748,69750,69752,69754,69756],{"class":86,"line":1545},[84,69747,11072],{"class":98},[84,69749,145],{"class":90},[84,69751,19036],{"class":429},[84,69753,754],{"class":90},[84,69755,18600],{"class":429},[84,69757,438],{"class":90},[84,69759,69760],{"class":86,"line":1554},[84,69761,19264],{"class":13481},[84,69763,69764,69766,69768,69770,69772,69774,69776],{"class":86,"line":1563},[84,69765,2146],{"class":108},[84,69767,1341],{"class":90},[84,69769,6552],{"class":108},[84,69771,19053],{"class":90},[84,69773,3288],{"class":108},[84,69775,19058],{"class":118},[84,69777,438],{"class":90},[84,69779,69780,69782,69784],{"class":86,"line":1570},[84,69781,19285],{"class":90},[84,69783,184],{"class":108},[84,69785,19084],{"class":90},[84,69787,69788],{"class":86,"line":1588},[84,69789,1936],{"class":90},[84,69791,69792],{"class":86,"line":1593},[84,69793,1941],{"class":90},[84,69795,69796],{"class":86,"line":1598},[84,69797,126],{"emptyLinePlaceholder":125},[84,69799,69800,69802,69804,69806],{"class":86,"line":1607},[84,69801,9429],{"class":98},[84,69803,145],{"class":90},[84,69805,19036],{"class":429},[84,69807,438],{"class":90},[84,69809,69810,69812],{"class":86,"line":1612},[84,69811,2146],{"class":108},[84,69813,19318],{"class":90},[84,69815,69816,69818,69820,69822,69824,69826,69828],{"class":86,"line":1621},[84,69817,19323],{"class":90},[84,69819,9069],{"class":98},[84,69821,145],{"class":90},[84,69823,19230],{"class":118},[84,69825,19332],{"class":90},[84,69827,2938],{"class":135},[84,69829,18994],{"class":90},[84,69831,69832],{"class":86,"line":1639},[84,69833,1936],{"class":90},[84,69835,69836,69838],{"class":86,"line":1661},[84,69837,19345],{"class":108},[84,69839,19348],{"class":90},[84,69841,69842,69844],{"class":86,"line":1666},[84,69843,19345],{"class":108},[84,69845,19355],{"class":90},[84,69847,69848],{"class":86,"line":1688},[84,69849,1941],{"class":90},[84,69851,69852],{"class":86,"line":1703},[84,69853,18973],{"class":90},[84,69855,69856,69858,69860],{"class":86,"line":1717},[84,69857,274],{"class":90},[84,69859,95],{"class":94},[84,69861,102],{"class":90},[84,69863,69864],{"class":86,"line":1731},[84,69865,126],{"emptyLinePlaceholder":125},[84,69867,69868,69870,69872],{"class":86,"line":1741},[84,69869,91],{"class":90},[84,69871,291],{"class":94},[84,69873,102],{"class":90},[84,69875,69876,69878,69880,69882,69884,69886],{"class":86,"line":1746},[84,69877,299],{"class":90},[84,69879,4898],{"class":94},[84,69881,1629],{"class":98},[84,69883,184],{"class":90},[84,69885,19396],{"class":118},[84,69887,102],{"class":90},[84,69889,69890,69892,69894,69896,69898,69900,69902,69904,69906,69908,69910],{"class":86,"line":1763},[84,69891,1642],{"class":90},[84,69893,302],{"class":94},[84,69895,5046],{"class":98},[84,69897,184],{"class":90},[84,69899,5051],{"class":118},[84,69901,305],{"class":98},[84,69903,184],{"class":90},[84,69905,19417],{"class":118},[84,69907,19420],{"class":90},[84,69909,302],{"class":94},[84,69911,102],{"class":90},[84,69913,69914],{"class":86,"line":1772},[84,69915,126],{"emptyLinePlaceholder":125},[84,69917,69918,69920,69922,69924,69926,69928,69930,69932,69934],{"class":86,"line":2283},[84,69919,1642],{"class":90},[84,69921,4978],{"class":94},[84,69923,344],{"class":98},[84,69925,184],{"class":90},[84,69927,349],{"class":118},[84,69929,19443],{"class":98},[84,69931,184],{"class":90},[84,69933,19448],{"class":118},[84,69935,102],{"class":90},[84,69937,69938,69940,69942,69944,69946],{"class":86,"line":2288},[84,69939,1691],{"class":90},[84,69941,15],{"class":94},[84,69943,19459],{"class":90},[84,69945,15],{"class":94},[84,69947,102],{"class":90},[84,69949,69950,69952,69954,69956,69958],{"class":86,"line":2307},[84,69951,1691],{"class":90},[84,69953,15],{"class":94},[84,69955,19472],{"class":90},[84,69957,15],{"class":94},[84,69959,102],{"class":90},[84,69961,69962,69964,69966],{"class":86,"line":2320},[84,69963,1734],{"class":90},[84,69965,4978],{"class":94},[84,69967,102],{"class":90},[84,69969,69970,69972,69974],{"class":86,"line":2333},[84,69971,324],{"class":90},[84,69973,4898],{"class":94},[84,69975,102],{"class":90},[84,69977,69978,69980,69982],{"class":86,"line":2346},[84,69979,274],{"class":90},[84,69981,291],{"class":94},[84,69983,102],{"class":90},[74,69985,69986],{"className":76,"code":19503,"filename":1782,"language":79,"meta":80,"style":80},[22,69987,69988,69996,70004,70012,70018,70024,70032,70036,70040,70044,70048,70062,70082,70086,70094,70098,70116,70126,70142,70150,70154,70158,70162,70178,70182,70196,70212,70220,70224,70228,70238,70244,70260,70264,70270,70276,70280,70284,70288,70292,70300,70304,70312,70326,70350,70354,70374,70386,70398,70406,70414],{"__ignoreMap":80},[84,69989,69990,69992,69994],{"class":86,"line":87},[84,69991,91],{"class":90},[84,69993,95],{"class":94},[84,69995,102],{"class":90},[84,69997,69998,70000,70002],{"class":86,"line":105},[84,69999,418],{"class":108},[84,70001,1870],{"class":108},[84,70003,175],{"class":90},[84,70005,70006,70008,70010],{"class":86,"line":122},[84,70007,1881],{"class":90},[84,70009,19528],{"class":118},[84,70011,1887],{"class":90},[84,70013,70014,70016],{"class":86,"line":129},[84,70015,1896],{"class":98},[84,70017,1307],{"class":90},[84,70019,70020,70022],{"class":86,"line":154},[84,70021,1903],{"class":108},[84,70023,175],{"class":90},[84,70025,70026,70028,70030],{"class":86,"line":159},[84,70027,19547],{"class":90},[84,70029,148],{"class":135},[84,70031,1887],{"class":90},[84,70033,70034],{"class":86,"line":178},[84,70035,19195],{"class":90},[84,70037,70038],{"class":86,"line":190},[84,70039,1941],{"class":90},[84,70041,70042],{"class":86,"line":196},[84,70043,19564],{"class":90},[84,70045,70046],{"class":86,"line":201},[84,70047,19569],{"class":90},[84,70049,70050,70052,70054,70056,70058,70060],{"class":86,"line":217},[84,70051,19574],{"class":98},[84,70053,145],{"class":90},[84,70055,19036],{"class":429},[84,70057,754],{"class":90},[84,70059,18600],{"class":429},[84,70061,438],{"class":90},[84,70063,70064,70066,70068,70070,70072,70074,70076,70078,70080],{"class":86,"line":227},[84,70065,9603],{"class":108},[84,70067,1341],{"class":90},[84,70069,6552],{"class":108},[84,70071,19053],{"class":90},[84,70073,6848],{"class":108},[84,70075,19058],{"class":118},[84,70077,3126],{"class":90},[84,70079,19063],{"class":108},[84,70081,18869],{"class":90},[84,70083,70084],{"class":86,"line":232},[84,70085,126],{"emptyLinePlaceholder":125},[84,70087,70088,70090,70092],{"class":86,"line":237},[84,70089,19613],{"class":90},[84,70091,184],{"class":108},[84,70093,19084],{"class":90},[84,70095,70096],{"class":86,"line":253},[84,70097,126],{"emptyLinePlaceholder":125},[84,70099,70100,70102,70104,70106,70108,70110,70112,70114],{"class":86,"line":266},[84,70101,19180],{"class":90},[84,70103,19628],{"class":98},[84,70105,139],{"class":108},[84,70107,1341],{"class":90},[84,70109,3123],{"class":429},[84,70111,3126],{"class":90},[84,70113,172],{"class":108},[84,70115,175],{"class":90},[84,70117,70118,70120,70122,70124],{"class":86,"line":271},[84,70119,19645],{"class":108},[84,70121,19118],{"class":135},[84,70123,139],{"class":108},[84,70125,19652],{"class":90},[84,70127,70128,70130,70132,70134,70136,70138,70140],{"class":86,"line":281},[84,70129,19657],{"class":108},[84,70131,19660],{"class":90},[84,70133,3096],{"class":108},[84,70135,260],{"class":108},[84,70137,19169],{"class":90},[84,70139,19172],{"class":98},[84,70141,19175],{"class":90},[84,70143,70144,70146,70148],{"class":86,"line":286},[84,70145,19675],{"class":90},[84,70147,19183],{"class":98},[84,70149,19186],{"class":90},[84,70151,70152],{"class":86,"line":296},[84,70153,19684],{"class":90},[84,70155,70156],{"class":86,"line":315},[84,70157,19689],{"class":90},[84,70159,70160],{"class":86,"line":321},[84,70161,126],{"emptyLinePlaceholder":125},[84,70163,70164,70166,70168,70170,70172,70174,70176],{"class":86,"line":331},[84,70165,19698],{"class":90},[84,70167,9013],{"class":98},[84,70169,145],{"class":90},[84,70171,19230],{"class":118},[84,70173,19332],{"class":90},[84,70175,2938],{"class":135},[84,70177,18994],{"class":90},[84,70179,70180],{"class":86,"line":336},[84,70181,3414],{"class":90},[84,70183,70184,70186,70188,70190,70192,70194],{"class":86,"line":354},[84,70185,19719],{"class":98},[84,70187,145],{"class":90},[84,70189,19036],{"class":429},[84,70191,754],{"class":90},[84,70193,18600],{"class":429},[84,70195,438],{"class":90},[84,70197,70198,70200,70202,70204,70206,70208,70210],{"class":86,"line":360},[84,70199,9603],{"class":108},[84,70201,1341],{"class":90},[84,70203,6552],{"class":108},[84,70205,19053],{"class":90},[84,70207,3288],{"class":108},[84,70209,19058],{"class":118},[84,70211,438],{"class":90},[84,70213,70214,70216,70218],{"class":86,"line":369},[84,70215,19750],{"class":90},[84,70217,184],{"class":108},[84,70219,19084],{"class":90},[84,70221,70222],{"class":86,"line":1453},[84,70223,9629],{"class":90},[84,70225,70226],{"class":86,"line":1462},[84,70227,3414],{"class":90},[84,70229,70230,70232,70234,70236],{"class":86,"line":1484},[84,70231,19767],{"class":98},[84,70233,145],{"class":90},[84,70235,19036],{"class":429},[84,70237,438],{"class":90},[84,70239,70240,70242],{"class":86,"line":1489},[84,70241,9603],{"class":108},[84,70243,19318],{"class":90},[84,70245,70246,70248,70250,70252,70254,70256,70258],{"class":86,"line":1495},[84,70247,19784],{"class":90},[84,70249,9069],{"class":98},[84,70251,145],{"class":90},[84,70253,19230],{"class":118},[84,70255,19332],{"class":90},[84,70257,2938],{"class":135},[84,70259,18994],{"class":90},[84,70261,70262],{"class":86,"line":1500},[84,70263,9629],{"class":90},[84,70265,70266,70268],{"class":86,"line":1516},[84,70267,19805],{"class":108},[84,70269,19348],{"class":90},[84,70271,70272,70274],{"class":86,"line":1533},[84,70273,19805],{"class":108},[84,70275,19355],{"class":90},[84,70277,70278],{"class":86,"line":1538},[84,70279,3414],{"class":90},[84,70281,70282],{"class":86,"line":1545},[84,70283,7783],{"class":90},[84,70285,70286],{"class":86,"line":1554},[84,70287,1941],{"class":90},[84,70289,70290],{"class":86,"line":1563},[84,70291,18973],{"class":90},[84,70293,70294,70296,70298],{"class":86,"line":1570},[84,70295,274],{"class":90},[84,70297,95],{"class":94},[84,70299,102],{"class":90},[84,70301,70302],{"class":86,"line":1588},[84,70303,126],{"emptyLinePlaceholder":125},[84,70305,70306,70308,70310],{"class":86,"line":1593},[84,70307,91],{"class":90},[84,70309,291],{"class":94},[84,70311,102],{"class":90},[84,70313,70314,70316,70318,70320,70322,70324],{"class":86,"line":1598},[84,70315,299],{"class":90},[84,70317,4898],{"class":94},[84,70319,1629],{"class":98},[84,70321,184],{"class":90},[84,70323,19396],{"class":118},[84,70325,102],{"class":90},[84,70327,70328,70330,70332,70334,70336,70338,70340,70342,70344,70346,70348],{"class":86,"line":1607},[84,70329,1642],{"class":90},[84,70331,302],{"class":94},[84,70333,5046],{"class":98},[84,70335,184],{"class":90},[84,70337,5051],{"class":118},[84,70339,305],{"class":98},[84,70341,184],{"class":90},[84,70343,19417],{"class":118},[84,70345,19420],{"class":90},[84,70347,302],{"class":94},[84,70349,102],{"class":90},[84,70351,70352],{"class":86,"line":1612},[84,70353,126],{"emptyLinePlaceholder":125},[84,70355,70356,70358,70360,70362,70364,70366,70368,70370,70372],{"class":86,"line":1621},[84,70357,1642],{"class":90},[84,70359,4978],{"class":94},[84,70361,344],{"class":98},[84,70363,184],{"class":90},[84,70365,349],{"class":118},[84,70367,19443],{"class":98},[84,70369,184],{"class":90},[84,70371,19448],{"class":118},[84,70373,102],{"class":90},[84,70375,70376,70378,70380,70382,70384],{"class":86,"line":1639},[84,70377,1691],{"class":90},[84,70379,15],{"class":94},[84,70381,19459],{"class":90},[84,70383,15],{"class":94},[84,70385,102],{"class":90},[84,70387,70388,70390,70392,70394,70396],{"class":86,"line":1661},[84,70389,1691],{"class":90},[84,70391,15],{"class":94},[84,70393,19472],{"class":90},[84,70395,15],{"class":94},[84,70397,102],{"class":90},[84,70399,70400,70402,70404],{"class":86,"line":1666},[84,70401,1734],{"class":90},[84,70403,4978],{"class":94},[84,70405,102],{"class":90},[84,70407,70408,70410,70412],{"class":86,"line":1688},[84,70409,324],{"class":90},[84,70411,4898],{"class":94},[84,70413,102],{"class":90},[84,70415,70416,70418,70420],{"class":86,"line":1703},[84,70417,274],{"class":90},[84,70419,291],{"class":94},[84,70421,102],{"class":90},[823,70423,70424],{},[15,70425,995,70426,19967,70428,19971,70430,19975,70432,16627,70434,2686],{},[22,70427,19966],{},[958,70429,19970],{},[22,70431,19974],{},[22,70433,19978],{},[22,70435,18535],{},[34,70437,19984],{"id":19983},[1074,70439,70440,19990],{"id":19987},[22,70441,18523],{},[74,70443,70444],{"className":19993,"code":19994,"filename":19995,"language":19996,"meta":80,"style":80},[22,70445,70446,70460,70464,70494,70508,70512,70528,70532,70536,70558,70572,70576,70580],{"__ignoreMap":80},[84,70447,70448,70450,70452,70454,70456,70458],{"class":86,"line":87},[84,70449,109],{"class":108},[84,70451,5046],{"class":108},[84,70453,18861],{"class":90},[84,70455,115],{"class":108},[84,70457,18866],{"class":118},[84,70459,18869],{"class":90},[84,70461,70462],{"class":86,"line":105},[84,70463,126],{"emptyLinePlaceholder":125},[84,70465,70466,70468,70470,70472,70474,70476,70478,70480,70482,70484,70486,70488,70490,70492],{"class":86,"line":122},[84,70467,418],{"class":108},[84,70469,20023],{"class":108},[84,70471,20026],{"class":135},[84,70473,1203],{"class":108},[84,70475,19010],{"class":98},[84,70477,91],{"class":90},[84,70479,20035],{"class":98},[84,70481,754],{"class":90},[84,70483,20040],{"class":135},[84,70485,1261],{"class":108},[84,70487,20045],{"class":135},[84,70489,19023],{"class":90},[84,70491,184],{"class":108},[84,70493,175],{"class":90},[84,70495,70496,70498,70500,70502,70504,70506],{"class":86,"line":129},[84,70497,7551],{"class":98},[84,70499,145],{"class":90},[84,70501,19036],{"class":429},[84,70503,754],{"class":90},[84,70505,18600],{"class":429},[84,70507,438],{"class":90},[84,70509,70510],{"class":86,"line":154},[84,70511,20070],{"class":13481},[84,70513,70514,70516,70518,70520,70522,70524,70526],{"class":86,"line":159},[84,70515,2146],{"class":108},[84,70517,20077],{"class":90},[84,70519,3288],{"class":108},[84,70521,435],{"class":135},[84,70523,3126],{"class":90},[84,70525,19063],{"class":108},[84,70527,18869],{"class":90},[84,70529,70530],{"class":86,"line":178},[84,70531,126],{"emptyLinePlaceholder":125},[84,70533,70534],{"class":86,"line":190},[84,70535,20096],{"class":13481},[84,70537,70538,70540,70542,70544,70546,70548,70550,70552,70554,70556],{"class":86,"line":196},[84,70539,2146],{"class":108},[84,70541,1341],{"class":90},[84,70543,6552],{"class":108},[84,70545,20107],{"class":90},[84,70547,1397],{"class":108},[84,70549,20112],{"class":135},[84,70551,20115],{"class":90},[84,70553,3288],{"class":108},[84,70555,19058],{"class":118},[84,70557,438],{"class":90},[84,70559,70560,70562,70564,70566,70568,70570],{"class":86,"line":201},[84,70561,20126],{"class":90},[84,70563,1397],{"class":108},[84,70565,20112],{"class":135},[84,70567,2686],{"class":90},[84,70569,12222],{"class":98},[84,70571,20137],{"class":90},[84,70573,70574],{"class":86,"line":217},[84,70575,1936],{"class":90},[84,70577,70578],{"class":86,"line":227},[84,70579,1941],{"class":90},[84,70581,70582],{"class":86,"line":232},[84,70583,18973],{"class":90},[74,70585,70586],{"className":394,"code":20152,"filename":20153,"language":397,"meta":80,"style":80},[22,70587,70588,70600,70614,70618,70634,70638,70654,70662,70666,70670],{"__ignoreMap":80},[84,70589,70590,70592,70594,70596,70598],{"class":86,"line":87},[84,70591,418],{"class":108},[84,70593,20023],{"class":108},[84,70595,20026],{"class":135},[84,70597,139],{"class":108},[84,70599,175],{"class":90},[84,70601,70602,70604,70606,70608,70610,70612],{"class":86,"line":105},[84,70603,7551],{"class":98},[84,70605,145],{"class":90},[84,70607,19036],{"class":429},[84,70609,754],{"class":90},[84,70611,18600],{"class":429},[84,70613,438],{"class":90},[84,70615,70616],{"class":86,"line":122},[84,70617,20070],{"class":13481},[84,70619,70620,70622,70624,70626,70628,70630,70632],{"class":86,"line":129},[84,70621,2146],{"class":108},[84,70623,20077],{"class":90},[84,70625,3288],{"class":108},[84,70627,435],{"class":135},[84,70629,3126],{"class":90},[84,70631,19063],{"class":108},[84,70633,18869],{"class":90},[84,70635,70636],{"class":86,"line":154},[84,70637,20096],{"class":13481},[84,70639,70640,70642,70644,70646,70648,70650,70652],{"class":86,"line":159},[84,70641,2146],{"class":108},[84,70643,1341],{"class":90},[84,70645,6552],{"class":108},[84,70647,20216],{"class":90},[84,70649,3288],{"class":108},[84,70651,19058],{"class":118},[84,70653,438],{"class":90},[84,70655,70656,70658,70660],{"class":86,"line":178},[84,70657,20227],{"class":90},[84,70659,12222],{"class":98},[84,70661,20137],{"class":90},[84,70663,70664],{"class":86,"line":190},[84,70665,1936],{"class":90},[84,70667,70668],{"class":86,"line":196},[84,70669,1941],{"class":90},[84,70671,70672],{"class":86,"line":201},[84,70673,18973],{"class":90},[74,70675,70676],{"className":76,"code":20246,"filename":10092,"language":79,"meta":80,"style":80},[22,70677,70678,70688],{"__ignoreMap":80},[84,70679,70680,70682,70684,70686],{"class":86,"line":87},[84,70681,91],{"class":90},[84,70683,18759],{"class":94},[84,70685,20257],{"class":98},[84,70687,5100],{"class":90},[84,70689,70690,70692,70694,70696,70698,70700,70702,70704],{"class":86,"line":105},[84,70691,91],{"class":90},[84,70693,18759],{"class":94},[84,70695,20257],{"class":98},[84,70697,184],{"class":90},[84,70699,1678],{"class":118},[84,70701,20274],{"class":90},[84,70703,1678],{"class":118},[84,70705,5100],{"class":90},[1074,70707,70708,20284],{"id":20281},[22,70709,18824],{},[74,70711,70712],{"className":19993,"code":20287,"filename":19995,"language":19996,"meta":80,"style":80},[22,70713,70714,70728,70732,70742,70764,70786,70796,70800,70804,70826,70830,70856,70870,70896,70900,70922,70936,70946,70954,70958,70962,70966,70974,70982,70986,71000,71004,71008,71012,71020,71026,71052,71074,71088,71098,71106,71110,71114,71122,71130,71134,71144,71152,71158,71162],{"__ignoreMap":80},[84,70715,70716,70718,70720,70722,70724,70726],{"class":86,"line":87},[84,70717,109],{"class":108},[84,70719,5046],{"class":108},[84,70721,18861],{"class":90},[84,70723,115],{"class":108},[84,70725,18866],{"class":118},[84,70727,18869],{"class":90},[84,70729,70730],{"class":86,"line":105},[84,70731,126],{"emptyLinePlaceholder":125},[84,70733,70734,70736,70738,70740],{"class":86,"line":122},[84,70735,1188],{"class":108},[84,70737,20314],{"class":98},[84,70739,139],{"class":108},[84,70741,175],{"class":90},[84,70743,70744,70746,70748,70750,70752,70754,70756,70758,70760,70762],{"class":86,"line":129},[84,70745,20323],{"class":98},[84,70747,18941],{"class":108},[84,70749,1341],{"class":90},[84,70751,20330],{"class":429},[84,70753,1203],{"class":108},[84,70755,20335],{"class":98},[84,70757,3126],{"class":90},[84,70759,172],{"class":108},[84,70761,18910],{"class":135},[84,70763,18869],{"class":90},[84,70765,70766,70768,70770,70772,70774,70776,70778,70780,70782,70784],{"class":86,"line":154},[84,70767,20348],{"class":98},[84,70769,18941],{"class":108},[84,70771,1341],{"class":90},[84,70773,20330],{"class":429},[84,70775,1203],{"class":108},[84,70777,20335],{"class":98},[84,70779,3126],{"class":90},[84,70781,172],{"class":108},[84,70783,18910],{"class":135},[84,70785,18869],{"class":90},[84,70787,70788,70790,70792,70794],{"class":86,"line":159},[84,70789,20371],{"class":429},[84,70791,18941],{"class":108},[84,70793,20376],{"class":98},[84,70795,18869],{"class":90},[84,70797,70798],{"class":86,"line":178},[84,70799,18973],{"class":90},[84,70801,70802],{"class":86,"line":190},[84,70803,126],{"emptyLinePlaceholder":125},[84,70805,70806,70808,70810,70812,70814,70816,70818,70820,70822,70824],{"class":86,"line":196},[84,70807,1188],{"class":108},[84,70809,20393],{"class":98},[84,70811,139],{"class":108},[84,70813,18928],{"class":98},[84,70815,18931],{"class":108},[84,70817,6763],{"class":90},[84,70819,20404],{"class":429},[84,70821,18941],{"class":108},[84,70823,20409],{"class":98},[84,70825,20412],{"class":90},[84,70827,70828],{"class":86,"line":201},[84,70829,126],{"emptyLinePlaceholder":125},[84,70831,70832,70834,70836,70838,70840,70842,70844,70846,70848,70850,70852,70854],{"class":86,"line":217},[84,70833,418],{"class":108},[84,70835,20023],{"class":108},[84,70837,20425],{"class":135},[84,70839,1203],{"class":108},[84,70841,19010],{"class":98},[84,70843,91],{"class":90},[84,70845,20434],{"class":98},[84,70847,754],{"class":90},[84,70849,20439],{"class":98},[84,70851,19023],{"class":90},[84,70853,184],{"class":108},[84,70855,175],{"class":90},[84,70857,70858,70860,70862,70864,70866,70868],{"class":86,"line":227},[84,70859,7551],{"class":98},[84,70861,145],{"class":90},[84,70863,19036],{"class":429},[84,70865,754],{"class":90},[84,70867,18600],{"class":429},[84,70869,438],{"class":90},[84,70871,70872,70874,70876,70878,70880,70882,70884,70886,70888,70890,70892,70894],{"class":86,"line":232},[84,70873,3021],{"class":108},[84,70875,6763],{"class":90},[84,70877,20468],{"class":135},[84,70879,754],{"class":90},[84,70881,20473],{"class":135},[84,70883,754],{"class":90},[84,70885,16839],{"class":135},[84,70887,18230],{"class":90},[84,70889,184],{"class":108},[84,70891,19053],{"class":90},[84,70893,10610],{"class":108},[84,70895,20488],{"class":90},[84,70897,70898],{"class":86,"line":237},[84,70899,126],{"emptyLinePlaceholder":125},[84,70901,70902,70904,70906,70908,70910,70912,70914,70916,70918,70920],{"class":86,"line":253},[84,70903,3021],{"class":108},[84,70905,20499],{"class":135},[84,70907,139],{"class":108},[84,70909,1355],{"class":108},[84,70911,20409],{"class":98},[84,70913,3120],{"class":90},[84,70915,20510],{"class":429},[84,70917,3126],{"class":90},[84,70919,172],{"class":108},[84,70921,175],{"class":90},[84,70923,70924,70926,70928,70930,70932,70934],{"class":86,"line":266},[84,70925,20521],{"class":108},[84,70927,1341],{"class":90},[84,70929,132],{"class":108},[84,70931,20528],{"class":135},[84,70933,16787],{"class":108},[84,70935,20533],{"class":90},[84,70937,70938,70940,70942,70944],{"class":86,"line":271},[84,70939,9603],{"class":108},[84,70941,20540],{"class":90},[84,70943,20468],{"class":98},[84,70945,20545],{"class":90},[84,70947,70948,70950,70952],{"class":86,"line":281},[84,70949,20550],{"class":108},[84,70951,20553],{"class":98},[84,70953,20545],{"class":90},[84,70955,70956],{"class":86,"line":286},[84,70957,2013],{"class":90},[84,70959,70960],{"class":86,"line":296},[84,70961,20564],{"class":90},[84,70963,70964],{"class":86,"line":315},[84,70965,126],{"emptyLinePlaceholder":125},[84,70967,70968,70970,70972],{"class":86,"line":321},[84,70969,20573],{"class":90},[84,70971,20576],{"class":98},[84,70973,20579],{"class":90},[84,70975,70976,70978,70980],{"class":86,"line":331},[84,70977,20584],{"class":90},[84,70979,184],{"class":108},[84,70981,20589],{"class":90},[84,70983,70984],{"class":86,"line":336},[84,70985,1941],{"class":90},[84,70987,70988,70990,70992,70994,70996,70998],{"class":86,"line":354},[84,70989,11072],{"class":98},[84,70991,145],{"class":90},[84,70993,19036],{"class":429},[84,70995,754],{"class":90},[84,70997,18600],{"class":429},[84,70999,438],{"class":90},[84,71001,71002],{"class":86,"line":360},[84,71003,20612],{"class":13481},[84,71005,71006],{"class":86,"line":369},[84,71007,20617],{"class":13481},[84,71009,71010],{"class":86,"line":1453},[84,71011,20622],{"class":13481},[84,71013,71014,71016,71018],{"class":86,"line":1462},[84,71015,20627],{"class":90},[84,71017,20630],{"class":98},[84,71019,20137],{"class":90},[84,71021,71022,71024],{"class":86,"line":1484},[84,71023,19345],{"class":108},[84,71025,20639],{"class":90},[84,71027,71028,71030,71032,71034,71036,71038,71040,71042,71044,71046,71048,71050],{"class":86,"line":1489},[84,71029,3021],{"class":108},[84,71031,6763],{"class":90},[84,71033,20468],{"class":135},[84,71035,754],{"class":90},[84,71037,20473],{"class":135},[84,71039,754],{"class":90},[84,71041,16839],{"class":135},[84,71043,18230],{"class":90},[84,71045,184],{"class":108},[84,71047,19053],{"class":90},[84,71049,10610],{"class":108},[84,71051,20488],{"class":90},[84,71053,71054,71056,71058,71060,71062,71064,71066,71068,71070,71072],{"class":86,"line":1495},[84,71055,3021],{"class":108},[84,71057,20499],{"class":135},[84,71059,139],{"class":108},[84,71061,1355],{"class":108},[84,71063,20409],{"class":98},[84,71065,3120],{"class":90},[84,71067,20510],{"class":429},[84,71069,3126],{"class":90},[84,71071,172],{"class":108},[84,71073,175],{"class":90},[84,71075,71076,71078,71080,71082,71084,71086],{"class":86,"line":1500},[84,71077,20521],{"class":108},[84,71079,1341],{"class":90},[84,71081,132],{"class":108},[84,71083,20528],{"class":135},[84,71085,16787],{"class":108},[84,71087,20533],{"class":90},[84,71089,71090,71092,71094,71096],{"class":86,"line":1516},[84,71091,9603],{"class":108},[84,71093,20540],{"class":90},[84,71095,20468],{"class":98},[84,71097,20545],{"class":90},[84,71099,71100,71102,71104],{"class":86,"line":1533},[84,71101,20550],{"class":108},[84,71103,20553],{"class":98},[84,71105,20545],{"class":90},[84,71107,71108],{"class":86,"line":1538},[84,71109,2013],{"class":90},[84,71111,71112],{"class":86,"line":1545},[84,71113,20564],{"class":90},[84,71115,71116,71118,71120],{"class":86,"line":1554},[84,71117,20573],{"class":90},[84,71119,20576],{"class":98},[84,71121,20579],{"class":90},[84,71123,71124,71126,71128],{"class":86,"line":1563},[84,71125,20584],{"class":90},[84,71127,184],{"class":108},[84,71129,20589],{"class":90},[84,71131,71132],{"class":86,"line":1570},[84,71133,1941],{"class":90},[84,71135,71136,71138,71140,71142],{"class":86,"line":1588},[84,71137,9429],{"class":98},[84,71139,145],{"class":90},[84,71141,19036],{"class":429},[84,71143,438],{"class":90},[84,71145,71146,71148,71150],{"class":86,"line":1593},[84,71147,20627],{"class":90},[84,71149,20630],{"class":98},[84,71151,20137],{"class":90},[84,71153,71154,71156],{"class":86,"line":1598},[84,71155,19345],{"class":108},[84,71157,20639],{"class":90},[84,71159,71160],{"class":86,"line":1607},[84,71161,1941],{"class":90},[84,71163,71164],{"class":86,"line":1612},[84,71165,18973],{"class":90},[74,71167,71168],{"className":394,"code":20782,"filename":20153,"language":397,"meta":80,"style":80},[22,71169,71170,71182,71196,71222,71226,71248,71262,71272,71280,71284,71288,71292,71300,71308,71312,71326,71330,71334,71338,71346,71352,71378,71400,71414,71424,71432,71436,71440,71448,71456,71460,71470,71478,71484,71488],{"__ignoreMap":80},[84,71171,71172,71174,71176,71178,71180],{"class":86,"line":87},[84,71173,418],{"class":108},[84,71175,20023],{"class":108},[84,71177,20425],{"class":135},[84,71179,139],{"class":108},[84,71181,175],{"class":90},[84,71183,71184,71186,71188,71190,71192,71194],{"class":86,"line":105},[84,71185,7551],{"class":98},[84,71187,145],{"class":90},[84,71189,19036],{"class":429},[84,71191,754],{"class":90},[84,71193,18600],{"class":429},[84,71195,438],{"class":90},[84,71197,71198,71200,71202,71204,71206,71208,71210,71212,71214,71216,71218,71220],{"class":86,"line":122},[84,71199,3021],{"class":108},[84,71201,6763],{"class":90},[84,71203,20468],{"class":135},[84,71205,754],{"class":90},[84,71207,20473],{"class":135},[84,71209,754],{"class":90},[84,71211,16839],{"class":135},[84,71213,18230],{"class":90},[84,71215,184],{"class":108},[84,71217,19053],{"class":90},[84,71219,10610],{"class":108},[84,71221,20488],{"class":90},[84,71223,71224],{"class":86,"line":129},[84,71225,126],{"emptyLinePlaceholder":125},[84,71227,71228,71230,71232,71234,71236,71238,71240,71242,71244,71246],{"class":86,"line":154},[84,71229,3021],{"class":108},[84,71231,20499],{"class":135},[84,71233,139],{"class":108},[84,71235,1355],{"class":108},[84,71237,20409],{"class":98},[84,71239,3120],{"class":90},[84,71241,20510],{"class":429},[84,71243,3126],{"class":90},[84,71245,172],{"class":108},[84,71247,175],{"class":90},[84,71249,71250,71252,71254,71256,71258,71260],{"class":86,"line":159},[84,71251,20521],{"class":108},[84,71253,1341],{"class":90},[84,71255,132],{"class":108},[84,71257,20528],{"class":135},[84,71259,16787],{"class":108},[84,71261,20533],{"class":90},[84,71263,71264,71266,71268,71270],{"class":86,"line":178},[84,71265,9603],{"class":108},[84,71267,20540],{"class":90},[84,71269,20468],{"class":98},[84,71271,20545],{"class":90},[84,71273,71274,71276,71278],{"class":86,"line":190},[84,71275,20550],{"class":108},[84,71277,20553],{"class":98},[84,71279,20545],{"class":90},[84,71281,71282],{"class":86,"line":196},[84,71283,2013],{"class":90},[84,71285,71286],{"class":86,"line":201},[84,71287,20564],{"class":90},[84,71289,71290],{"class":86,"line":217},[84,71291,20907],{"class":90},[84,71293,71294,71296,71298],{"class":86,"line":227},[84,71295,20573],{"class":90},[84,71297,20576],{"class":98},[84,71299,20579],{"class":90},[84,71301,71302,71304,71306],{"class":86,"line":232},[84,71303,20584],{"class":90},[84,71305,184],{"class":108},[84,71307,20589],{"class":90},[84,71309,71310],{"class":86,"line":237},[84,71311,1941],{"class":90},[84,71313,71314,71316,71318,71320,71322,71324],{"class":86,"line":253},[84,71315,11072],{"class":98},[84,71317,145],{"class":90},[84,71319,19036],{"class":429},[84,71321,754],{"class":90},[84,71323,18600],{"class":429},[84,71325,438],{"class":90},[84,71327,71328],{"class":86,"line":266},[84,71329,20612],{"class":13481},[84,71331,71332],{"class":86,"line":271},[84,71333,20617],{"class":13481},[84,71335,71336],{"class":86,"line":281},[84,71337,20622],{"class":13481},[84,71339,71340,71342,71344],{"class":86,"line":286},[84,71341,20627],{"class":90},[84,71343,20630],{"class":98},[84,71345,20137],{"class":90},[84,71347,71348,71350],{"class":86,"line":296},[84,71349,19345],{"class":108},[84,71351,20639],{"class":90},[84,71353,71354,71356,71358,71360,71362,71364,71366,71368,71370,71372,71374,71376],{"class":86,"line":315},[84,71355,3021],{"class":108},[84,71357,6763],{"class":90},[84,71359,20468],{"class":135},[84,71361,754],{"class":90},[84,71363,20473],{"class":135},[84,71365,754],{"class":90},[84,71367,16839],{"class":135},[84,71369,18230],{"class":90},[84,71371,184],{"class":108},[84,71373,19053],{"class":90},[84,71375,10610],{"class":108},[84,71377,20488],{"class":90},[84,71379,71380,71382,71384,71386,71388,71390,71392,71394,71396,71398],{"class":86,"line":321},[84,71381,3021],{"class":108},[84,71383,20499],{"class":135},[84,71385,139],{"class":108},[84,71387,1355],{"class":108},[84,71389,20409],{"class":98},[84,71391,3120],{"class":90},[84,71393,20510],{"class":429},[84,71395,3126],{"class":90},[84,71397,172],{"class":108},[84,71399,175],{"class":90},[84,71401,71402,71404,71406,71408,71410,71412],{"class":86,"line":331},[84,71403,20521],{"class":108},[84,71405,1341],{"class":90},[84,71407,132],{"class":108},[84,71409,20528],{"class":135},[84,71411,16787],{"class":108},[84,71413,20533],{"class":90},[84,71415,71416,71418,71420,71422],{"class":86,"line":336},[84,71417,9603],{"class":108},[84,71419,20540],{"class":90},[84,71421,20468],{"class":98},[84,71423,20545],{"class":90},[84,71425,71426,71428,71430],{"class":86,"line":354},[84,71427,20550],{"class":108},[84,71429,20553],{"class":98},[84,71431,20545],{"class":90},[84,71433,71434],{"class":86,"line":360},[84,71435,2013],{"class":90},[84,71437,71438],{"class":86,"line":369},[84,71439,20564],{"class":90},[84,71441,71442,71444,71446],{"class":86,"line":1453},[84,71443,20573],{"class":90},[84,71445,20576],{"class":98},[84,71447,20579],{"class":90},[84,71449,71450,71452,71454],{"class":86,"line":1462},[84,71451,20584],{"class":90},[84,71453,184],{"class":108},[84,71455,20589],{"class":90},[84,71457,71458],{"class":86,"line":1484},[84,71459,1941],{"class":90},[84,71461,71462,71464,71466,71468],{"class":86,"line":1489},[84,71463,9429],{"class":98},[84,71465,145],{"class":90},[84,71467,19036],{"class":429},[84,71469,438],{"class":90},[84,71471,71472,71474,71476],{"class":86,"line":1495},[84,71473,20627],{"class":90},[84,71475,20630],{"class":98},[84,71477,20137],{"class":90},[84,71479,71480,71482],{"class":86,"line":1500},[84,71481,19345],{"class":108},[84,71483,20639],{"class":90},[84,71485,71486],{"class":86,"line":1516},[84,71487,1941],{"class":90},[84,71489,71490],{"class":86,"line":1533},[84,71491,18973],{"class":90},[74,71493,71494],{"className":76,"code":21110,"filename":10092,"language":79,"meta":80,"style":80},[22,71495,71496,71502,71512,71528,71544,71552,71558,71562,71566],{"__ignoreMap":80},[84,71497,71498,71500],{"class":86,"line":87},[84,71499,91],{"class":90},[84,71501,21119],{"class":94},[84,71503,71504,71506,71508,71510],{"class":86,"line":105},[84,71505,21124],{"class":98},[84,71507,184],{"class":90},[84,71509,1678],{"class":118},[84,71511,21131],{"class":90},[84,71513,71514,71516,71518,71520,71522,71524,71526],{"class":86,"line":122},[84,71515,21136],{"class":98},[84,71517,4568],{"class":90},[84,71519,172],{"class":108},[84,71521,21143],{"class":90},[84,71523,184],{"class":108},[84,71525,21148],{"class":135},[84,71527,4531],{"class":90},[84,71529,71530,71532,71534,71536,71538,71540,71542],{"class":86,"line":129},[84,71531,21155],{"class":98},[84,71533,4568],{"class":90},[84,71535,172],{"class":108},[84,71537,21143],{"class":90},[84,71539,184],{"class":108},[84,71541,435],{"class":135},[84,71543,4531],{"class":90},[84,71545,71546,71548,71550],{"class":86,"line":154},[84,71547,21172],{"class":90},[84,71549,21175],{"class":135},[84,71551,2968],{"class":90},[84,71553,71554,71556],{"class":86,"line":159},[84,71555,21182],{"class":90},[84,71557,21185],{"class":118},[84,71559,71560],{"class":86,"line":178},[84,71561,102],{"class":90},[84,71563,71564],{"class":86,"line":190},[84,71565,21194],{"class":90},[84,71567,71568,71570,71572],{"class":86,"line":196},[84,71569,274],{"class":90},[84,71571,4978],{"class":94},[84,71573,102],{"class":90},[823,71575,71576],{},[15,71577,21207,71578,21210,71580,13234,71582,21215],{},[22,71579,9844],{},[22,71581,18608],{},[22,71583,18617],{},[34,71585,2406],{"id":2405},[737,71587,71588,71592,71596,71604,71610],{},[740,71589,21222,71590,764],{},[958,71591,21225],{},[740,71593,21228,71594,21231],{},[22,71595,6063],{},[740,71597,21234,71598,754,71600,754,71602,21241],{},[22,71599,4663],{},[22,71601,18740],{},[22,71603,18743],{},[740,71605,21244,71606,21248,71608,21251],{},[958,71607,21247],{},[22,71609,9844],{},[740,71611,21254],{},[835,71613,21257],{},{"title":80,"searchDepth":105,"depth":105,"links":71615},[71616,71617,71618,71619,71620,71621,71624,71628],{"id":18507,"depth":105,"text":18508},{"id":946,"depth":105,"text":947},{"id":18653,"depth":105,"text":18654},{"id":18677,"depth":105,"text":18678},{"id":783,"depth":105,"text":784},{"id":2735,"depth":105,"text":2736,"children":71622},[71623],{"id":18828,"depth":122,"text":21268},{"id":19983,"depth":105,"text":19984,"children":71625},[71626,71627],{"id":19987,"depth":122,"text":21272},{"id":20281,"depth":122,"text":21274},{"id":2405,"depth":105,"text":2406},{"updatedAt":21281,"coverCaption":21277,"author":868,"keywords":71630},[870,21283,21284,21285,873,1782],[71632],{"headline":18504,"author":71633,"datePublished":21281,"@type":880},{"name":868,"@type":879},{"title":18498,"description":21279},[71636,71637,71638,71639,71640],{"tag":21297,"color":21298},{"tag":21300,"color":21301},{"tag":2458,"color":2459},{"tag":3945,"color":3946},{"tag":2462,"color":2463},{"id":21307,"title":21308,"body":71642,"cover":22575,"coverAlt":22576,"date":22577,"description":22578,"draft":852,"extension":853,"lab":882,"locale":864,"meta":72762,"navigation":125,"path":22584,"schemaOrg":72764,"seo":72767,"series":21291,"seriesDescription":21292,"seriesOrder":201,"seriesTitle":21293,"slug":882,"stem":22590,"tags":72768,"__hash__":22598},{"type":8,"value":71643,"toc":72742},[71644,71648,71656,71658,71660,71664,71668,71678,71680,71686,71690,71694,71720,71730,71738,71740,71744,71746,71756,71758,71766,71768,71772,71780,71782,71784,71794,71800,71802,71806,71810,71814,71820,71822,71826,71828,71832,71834,71836,71862,71868,71870,72000,72136,72238,72240,72244,72246,72466,72692,72718,72720,72724,72728,72740],[11,71645,21314,71646],{"id":21313},[22,71647,21317],{},[15,71649,71650,21322,71652,21326,71654,21330],{},[22,71651,21317],{},[958,71653,21325],{},[22,71655,21329],{},[34,71657,21334],{"id":21333},[15,71659,21337],{},[15,71661,71662,21342],{},[22,71663,21317],{},[15,71665,71666],{},[958,71667,21347],{},[737,71669,71670,71674,71676],{},[740,71671,21352,71672,21356],{},[22,71673,21355],{},[740,71675,21359],{},[740,71677,21362],{},[34,71679,947],{"id":946},[15,71681,71682,21369,71684,21372],{},[22,71683,21317],{},[22,71685,21317],{},[15,71687,71688],{},[958,71689,21377],{},[10842,71691,71692],{},[740,71693,21382],{},[74,71695,71696],{"className":21385,"code":21386,"filename":21387,"language":21388,"meta":80,"style":80},[22,71697,71698,71706,71716],{"__ignoreMap":80},[84,71699,71700,71702,71704],{"class":86,"line":87},[84,71701,21395],{"class":90},[84,71703,21317],{"class":98},[84,71705,21400],{"class":90},[84,71707,71708,71710,71712,71714],{"class":86,"line":105},[84,71709,21405],{"class":135},[84,71711,21408],{"class":90},[84,71713,21411],{"class":135},[84,71715,18869],{"class":90},[84,71717,71718],{"class":86,"line":122},[84,71719,193],{"class":90},[10842,71721,71722,71726,71728],{"start":105},[740,71723,21422,71724,764],{},[22,71725,21317],{},[740,71727,21427],{},[740,71729,21430],{},[823,71731,71732],{},[15,71733,71734,21437,71736,2686],{},[22,71735,21317],{},[22,71737,21440],{},[34,71739,21444],{"id":21443},[15,71741,21447,71742,21451],{},[958,71743,21450],{},[15,71745,21454],{},[737,71747,71748,71752,71754],{},[740,71749,71750,21461],{},[22,71751,21317],{},[740,71753,21464],{},[740,71755,21467],{},[15,71757,21470],{},[737,71759,71760,71762,71764],{},[740,71761,21475],{},[740,71763,21478],{},[740,71765,21481],{},[34,71767,1013],{"id":1012},[15,71769,21486,71770,8430],{},[22,71771,21317],{},[737,71773,71774,71776,71778],{},[740,71775,21493],{},[740,71777,21496],{},[740,71779,21499],{},[34,71781,1040],{"id":1039},[15,71783,1046],{},[737,71785,71786,71788,71790,71792],{},[740,71787,21508],{},[740,71789,21511],{},[740,71791,21514],{},[740,71793,21517],{},[823,71795,71796],{},[15,71797,71798,21524],{},[22,71799,21317],{},[34,71801,784],{"id":783},[1074,71803,21530,71804,21533],{"id":21529},[22,71805,21317],{},[15,71807,21536,71808,21540],{},[22,71809,21539],{},[1074,71811,21544,71812],{"id":21543},[22,71813,21547],{},[15,71815,21550,71816,21553,71818,21557],{},[22,71817,21547],{},[22,71819,21556],{},[1074,71821,21561],{"id":21560},[15,71823,21564,71824,21567],{},[22,71825,21317],{},[1074,71827,21571],{"id":21570},[15,71829,71830,21576],{},[22,71831,21317],{},[34,71833,2736],{"id":2735},[1074,71835,21582],{"id":21581},[74,71837,71838],{"className":21385,"code":21585,"filename":21387,"language":21388,"meta":80,"style":80},[22,71839,71840,71848,71858],{"__ignoreMap":80},[84,71841,71842,71844,71846],{"class":86,"line":87},[84,71843,21395],{"class":90},[84,71845,21317],{"class":98},[84,71847,21400],{"class":90},[84,71849,71850,71852,71854,71856],{"class":86,"line":105},[84,71851,21600],{"class":135},[84,71853,21408],{"class":90},[84,71855,21411],{"class":135},[84,71857,18869],{"class":90},[84,71859,71860],{"class":86,"line":122},[84,71861,193],{"class":90},[823,71863,71864],{},[15,71865,21615,71866,21618],{},[22,71867,21317],{},[1074,71869,21622],{"id":21621},[74,71871,71873],{"className":76,"code":21625,"filename":873,"highlights":71872,"language":79,"meta":80,"style":80},[190],[22,71874,71875,71891,71903,71907,71923,71931,71935,71943,71960,71972,71984,71992],{"__ignoreMap":80},[84,71876,71877,71879,71881,71883,71885,71887,71889],{"class":86,"line":87},[84,71878,91],{"class":90},[84,71880,95],{"class":94},[84,71882,99],{"class":98},[84,71884,1161],{"class":98},[84,71886,184],{"class":90},[84,71888,1166],{"class":118},[84,71890,102],{"class":90},[84,71892,71893,71895,71897,71899,71901],{"class":86,"line":105},[84,71894,109],{"class":108},[84,71896,112],{"class":90},[84,71898,115],{"class":108},[84,71900,18866],{"class":118},[84,71902,18869],{"class":90},[84,71904,71905],{"class":86,"line":122},[84,71906,126],{"emptyLinePlaceholder":125},[84,71908,71909,71911,71913,71915,71917,71919,71921],{"class":86,"line":129},[84,71910,132],{"class":108},[84,71912,21667],{"class":135},[84,71914,139],{"class":108},[84,71916,142],{"class":98},[84,71918,145],{"class":90},[84,71920,21676],{"class":118},[84,71922,18994],{"class":90},[84,71924,71925,71927,71929],{"class":86,"line":154},[84,71926,274],{"class":90},[84,71928,95],{"class":94},[84,71930,102],{"class":90},[84,71932,71933],{"class":86,"line":159},[84,71934,126],{"emptyLinePlaceholder":125},[84,71936,71937,71939,71941],{"class":86,"line":178},[84,71938,91],{"class":90},[84,71940,291],{"class":94},[84,71942,102],{"class":90},[84,71944,71946,71948,71950,71952,71954,71956,71958],{"class":71945,"line":190},[86,10151],[84,71947,299],{"class":90},[84,71949,4898],{"class":94},[84,71951,21708],{"class":98},[84,71953,1629],{"class":98},[84,71955,184],{"class":90},[84,71957,21715],{"class":118},[84,71959,102],{"class":90},[84,71961,71962,71964,71966,71968,71970],{"class":86,"line":196},[84,71963,1642],{"class":90},[84,71965,11],{"class":94},[84,71967,21726],{"class":90},[84,71969,11],{"class":94},[84,71971,102],{"class":90},[84,71973,71974,71976,71978,71980,71982],{"class":86,"line":201},[84,71975,1642],{"class":90},[84,71977,15],{"class":94},[84,71979,21739],{"class":90},[84,71981,15],{"class":94},[84,71983,102],{"class":90},[84,71985,71986,71988,71990],{"class":86,"line":217},[84,71987,324],{"class":90},[84,71989,4898],{"class":94},[84,71991,102],{"class":90},[84,71993,71994,71996,71998],{"class":86,"line":227},[84,71995,274],{"class":90},[84,71997,291],{"class":94},[84,71999,102],{"class":90},[74,72001,72003],{"className":76,"code":21762,"filename":1782,"highlights":72002,"language":79,"meta":80,"style":80},[227],[22,72004,72005,72019,72027,72033,72039,72047,72051,72055,72059,72067,72071,72079,72096,72108,72120,72128],{"__ignoreMap":80},[84,72006,72007,72009,72011,72013,72015,72017],{"class":86,"line":87},[84,72008,91],{"class":90},[84,72010,95],{"class":94},[84,72012,1161],{"class":98},[84,72014,184],{"class":90},[84,72016,1166],{"class":118},[84,72018,102],{"class":90},[84,72020,72021,72023,72025],{"class":86,"line":105},[84,72022,418],{"class":108},[84,72024,1870],{"class":108},[84,72026,175],{"class":90},[84,72028,72029,72031],{"class":86,"line":122},[84,72030,1896],{"class":98},[84,72032,1307],{"class":90},[84,72034,72035,72037],{"class":86,"line":129},[84,72036,1903],{"class":108},[84,72038,175],{"class":90},[84,72040,72041,72043,72045],{"class":86,"line":154},[84,72042,21804],{"class":90},[84,72044,21676],{"class":118},[84,72046,1887],{"class":90},[84,72048,72049],{"class":86,"line":159},[84,72050,19195],{"class":90},[84,72052,72053],{"class":86,"line":178},[84,72054,1941],{"class":90},[84,72056,72057],{"class":86,"line":190},[84,72058,18973],{"class":90},[84,72060,72061,72063,72065],{"class":86,"line":196},[84,72062,274],{"class":90},[84,72064,95],{"class":94},[84,72066,102],{"class":90},[84,72068,72069],{"class":86,"line":201},[84,72070,126],{"emptyLinePlaceholder":125},[84,72072,72073,72075,72077],{"class":86,"line":217},[84,72074,91],{"class":90},[84,72076,291],{"class":94},[84,72078,102],{"class":90},[84,72080,72082,72084,72086,72088,72090,72092,72094],{"class":72081,"line":227},[86,10151],[84,72083,299],{"class":90},[84,72085,4898],{"class":94},[84,72087,21708],{"class":98},[84,72089,1629],{"class":98},[84,72091,184],{"class":90},[84,72093,21715],{"class":118},[84,72095,102],{"class":90},[84,72097,72098,72100,72102,72104,72106],{"class":86,"line":232},[84,72099,1642],{"class":90},[84,72101,11],{"class":94},[84,72103,21726],{"class":90},[84,72105,11],{"class":94},[84,72107,102],{"class":90},[84,72109,72110,72112,72114,72116,72118],{"class":86,"line":237},[84,72111,1642],{"class":90},[84,72113,15],{"class":94},[84,72115,21739],{"class":90},[84,72117,15],{"class":94},[84,72119,102],{"class":90},[84,72121,72122,72124,72126],{"class":86,"line":253},[84,72123,324],{"class":90},[84,72125,4898],{"class":94},[84,72127,102],{"class":90},[84,72129,72130,72132,72134],{"class":86,"line":266},[84,72131,274],{"class":90},[84,72133,291],{"class":94},[84,72135,102],{"class":90},[74,72137,72139],{"className":21385,"code":21900,"filename":21387,"highlights":72138,"language":21388,"meta":80,"style":80},[87,105,122],[22,72140,72141,72150,72161,72166,72170,72176,72200,72210,72222,72234],{"__ignoreMap":80},[84,72142,72144,72146,72148],{"class":72143,"line":87},[86,10151],[84,72145,21395],{"class":90},[84,72147,21317],{"class":98},[84,72149,21400],{"class":90},[84,72151,72153,72155,72157,72159],{"class":72152,"line":105},[86,10151],[84,72154,21600],{"class":135},[84,72156,21408],{"class":90},[84,72158,21411],{"class":135},[84,72160,18869],{"class":90},[84,72162,72164],{"class":72163,"line":122},[86,10151],[84,72165,193],{"class":90},[84,72167,72168],{"class":86,"line":129},[84,72169,126],{"emptyLinePlaceholder":125},[84,72171,72172,72174],{"class":86,"line":154},[84,72173,21937],{"class":98},[84,72175,175],{"class":90},[84,72177,72178,72180,72182,72184,72186,72188,72190,72192,72194,72196,72198],{"class":86,"line":159},[84,72179,21944],{"class":135},[84,72181,21408],{"class":90},[84,72183,21949],{"class":135},[84,72185,145],{"class":90},[84,72187,21954],{"class":135},[84,72189,21957],{"class":108},[84,72191,754],{"class":90},[84,72193,21298],{"class":135},[84,72195,754],{"class":90},[84,72197,895],{"class":135},[84,72199,18994],{"class":90},[84,72201,72202,72204,72206,72208],{"class":86,"line":178},[84,72203,21972],{"class":135},[84,72205,21408],{"class":90},[84,72207,21977],{"class":135},[84,72209,18869],{"class":90},[84,72211,72212,72214,72216,72218,72220],{"class":86,"line":190},[84,72213,21984],{"class":135},[84,72215,21408],{"class":90},[84,72217,2928],{"class":135},[84,72219,21991],{"class":108},[84,72221,18869],{"class":90},[84,72223,72224,72226,72228,72230,72232],{"class":86,"line":196},[84,72225,21998],{"class":135},[84,72227,21408],{"class":90},[84,72229,22003],{"class":135},[84,72231,22006],{"class":108},[84,72233,18869],{"class":90},[84,72235,72236],{"class":86,"line":201},[84,72237,193],{"class":90},[1074,72239,22016],{"id":22015},[15,72241,22019,72242,22022],{},[22,72243,21317],{},[1074,72245,22026],{"id":22025},[74,72247,72248],{"className":76,"code":22029,"filename":873,"language":79,"meta":80,"style":80},[22,72249,72250,72266,72278,72282,72312,72316,72330,72354,72366,72370,72378,72382,72390,72406,72418,72436,72450,72458],{"__ignoreMap":80},[84,72251,72252,72254,72256,72258,72260,72262,72264],{"class":86,"line":87},[84,72253,91],{"class":90},[84,72255,95],{"class":94},[84,72257,99],{"class":98},[84,72259,1161],{"class":98},[84,72261,184],{"class":90},[84,72263,1166],{"class":118},[84,72265,102],{"class":90},[84,72267,72268,72270,72272,72274,72276],{"class":86,"line":105},[84,72269,109],{"class":108},[84,72271,22054],{"class":90},[84,72273,115],{"class":108},[84,72275,18866],{"class":118},[84,72277,18869],{"class":90},[84,72279,72280],{"class":86,"line":122},[84,72281,126],{"emptyLinePlaceholder":125},[84,72283,72284,72286,72288,72290,72292,72294,72296,72298,72300,72302,72304,72306,72308,72310],{"class":86,"line":129},[84,72285,132],{"class":108},[84,72287,18297],{"class":135},[84,72289,139],{"class":108},[84,72291,142],{"class":98},[84,72293,22077],{"class":90},[84,72295,22080],{"class":429},[84,72297,1203],{"class":108},[84,72299,22085],{"class":135},[84,72301,18230],{"class":90},[84,72303,6558],{"class":108},[84,72305,1264],{"class":135},[84,72307,1267],{"class":90},[84,72309,1270],{"class":135},[84,72311,18994],{"class":90},[84,72313,72314],{"class":86,"line":154},[84,72315,126],{"emptyLinePlaceholder":125},[84,72317,72318,72320,72322,72324,72326,72328],{"class":86,"line":159},[84,72319,1503],{"class":98},[84,72321,145],{"class":90},[84,72323,1299],{"class":108},[84,72325,169],{"class":90},[84,72327,172],{"class":108},[84,72329,175],{"class":90},[84,72331,72332,72334,72336,72338,72340,72342,72344,72346,72348,72350,72352],{"class":86,"line":178},[84,72333,7020],{"class":108},[84,72335,1355],{"class":108},[84,72337,18074],{"class":135},[84,72339,3120],{"class":90},[84,72341,18079],{"class":429},[84,72343,3126],{"class":90},[84,72345,172],{"class":108},[84,72347,22134],{"class":98},[84,72349,22137],{"class":90},[84,72351,22140],{"class":135},[84,72353,22143],{"class":90},[84,72355,72356,72358,72360,72362,72364],{"class":86,"line":190},[84,72357,22148],{"class":90},[84,72359,184],{"class":108},[84,72361,22153],{"class":90},[84,72363,22156],{"class":118},[84,72365,20412],{"class":90},[84,72367,72368],{"class":86,"line":196},[84,72369,22163],{"class":90},[84,72371,72372,72374,72376],{"class":86,"line":201},[84,72373,274],{"class":90},[84,72375,95],{"class":94},[84,72377,102],{"class":90},[84,72379,72380],{"class":86,"line":217},[84,72381,126],{"emptyLinePlaceholder":125},[84,72383,72384,72386,72388],{"class":86,"line":227},[84,72385,91],{"class":90},[84,72387,291],{"class":94},[84,72389,102],{"class":90},[84,72391,72392,72394,72396,72398,72400,72402,72404],{"class":86,"line":232},[84,72393,299],{"class":90},[84,72395,22190],{"class":94},[84,72397,21708],{"class":98},[84,72399,1629],{"class":98},[84,72401,184],{"class":90},[84,72403,22199],{"class":118},[84,72405,102],{"class":90},[84,72407,72408,72410,72412,72414,72416],{"class":86,"line":237},[84,72409,1642],{"class":90},[84,72411,34],{"class":94},[84,72413,22210],{"class":90},[84,72415,34],{"class":94},[84,72417,102],{"class":90},[84,72419,72420,72422,72424,72426,72428,72430,72432,72434],{"class":86,"line":253},[84,72421,1642],{"class":90},[84,72423,15],{"class":94},[84,72425,344],{"class":98},[84,72427,184],{"class":90},[84,72429,22227],{"class":118},[84,72431,22230],{"class":90},[84,72433,15],{"class":94},[84,72435,102],{"class":90},[84,72437,72438,72440,72442,72444,72446,72448],{"class":86,"line":266},[84,72439,1642],{"class":90},[84,72441,15],{"class":94},[84,72443,1753],{"class":98},[84,72445,22245],{"class":90},[84,72447,15],{"class":94},[84,72449,102],{"class":90},[84,72451,72452,72454,72456],{"class":86,"line":271},[84,72453,324],{"class":90},[84,72455,22190],{"class":94},[84,72457,102],{"class":90},[84,72459,72460,72462,72464],{"class":86,"line":281},[84,72461,274],{"class":90},[84,72463,291],{"class":94},[84,72465,102],{"class":90},[74,72467,72468],{"className":76,"code":22268,"filename":1782,"language":79,"meta":80,"style":80},[22,72469,72470,72484,72492,72500,72506,72512,72534,72538,72542,72550,72574,72588,72592,72596,72604,72608,72616,72632,72644,72662,72676,72684],{"__ignoreMap":80},[84,72471,72472,72474,72476,72478,72480,72482],{"class":86,"line":87},[84,72473,91],{"class":90},[84,72475,95],{"class":94},[84,72477,1161],{"class":98},[84,72479,184],{"class":90},[84,72481,1166],{"class":118},[84,72483,102],{"class":90},[84,72485,72486,72488,72490],{"class":86,"line":105},[84,72487,418],{"class":108},[84,72489,1870],{"class":108},[84,72491,175],{"class":90},[84,72493,72494,72496,72498],{"class":86,"line":122},[84,72495,1881],{"class":90},[84,72497,22299],{"class":118},[84,72499,1887],{"class":90},[84,72501,72502,72504],{"class":86,"line":129},[84,72503,1896],{"class":98},[84,72505,1307],{"class":90},[84,72507,72508,72510],{"class":86,"line":154},[84,72509,1903],{"class":108},[84,72511,175],{"class":90},[84,72513,72514,72516,72518,72520,72522,72524,72526,72528,72530,72532],{"class":86,"line":159},[84,72515,22318],{"class":90},[84,72517,1270],{"class":135},[84,72519,1915],{"class":108},[84,72521,1264],{"class":135},[84,72523,1261],{"class":108},[84,72525,6763],{"class":90},[84,72527,22080],{"class":429},[84,72529,1203],{"class":108},[84,72531,22085],{"class":135},[84,72533,2921],{"class":90},[84,72535,72536],{"class":86,"line":178},[84,72537,19195],{"class":90},[84,72539,72540],{"class":86,"line":190},[84,72541,1941],{"class":90},[84,72543,72544,72546,72548],{"class":86,"line":196},[84,72545,2058],{"class":108},[84,72547,2139],{"class":98},[84,72549,1307],{"class":90},[84,72551,72552,72554,72556,72558,72560,72562,72564,72566,72568,72570,72572],{"class":86,"line":201},[84,72553,1435],{"class":108},[84,72555,1355],{"class":108},[84,72557,18074],{"class":135},[84,72559,3120],{"class":90},[84,72561,18079],{"class":429},[84,72563,3126],{"class":90},[84,72565,172],{"class":108},[84,72567,22134],{"class":98},[84,72569,22137],{"class":90},[84,72571,22140],{"class":135},[84,72573,22143],{"class":90},[84,72575,72576,72578,72580,72582,72584,72586],{"class":86,"line":217},[84,72577,5499],{"class":135},[84,72579,22383],{"class":90},[84,72581,184],{"class":108},[84,72583,22153],{"class":90},[84,72585,22156],{"class":118},[84,72587,20412],{"class":90},[84,72589,72590],{"class":86,"line":227},[84,72591,1941],{"class":90},[84,72593,72594],{"class":86,"line":232},[84,72595,18973],{"class":90},[84,72597,72598,72600,72602],{"class":86,"line":237},[84,72599,274],{"class":90},[84,72601,95],{"class":94},[84,72603,102],{"class":90},[84,72605,72606],{"class":86,"line":253},[84,72607,126],{"emptyLinePlaceholder":125},[84,72609,72610,72612,72614],{"class":86,"line":266},[84,72611,91],{"class":90},[84,72613,291],{"class":94},[84,72615,102],{"class":90},[84,72617,72618,72620,72622,72624,72626,72628,72630],{"class":86,"line":271},[84,72619,299],{"class":90},[84,72621,22190],{"class":94},[84,72623,21708],{"class":98},[84,72625,1629],{"class":98},[84,72627,184],{"class":90},[84,72629,22199],{"class":118},[84,72631,102],{"class":90},[84,72633,72634,72636,72638,72640,72642],{"class":86,"line":281},[84,72635,1642],{"class":90},[84,72637,34],{"class":94},[84,72639,22210],{"class":90},[84,72641,34],{"class":94},[84,72643,102],{"class":90},[84,72645,72646,72648,72650,72652,72654,72656,72658,72660],{"class":86,"line":286},[84,72647,1642],{"class":90},[84,72649,15],{"class":94},[84,72651,344],{"class":98},[84,72653,184],{"class":90},[84,72655,22227],{"class":118},[84,72657,22230],{"class":90},[84,72659,15],{"class":94},[84,72661,102],{"class":90},[84,72663,72664,72666,72668,72670,72672,72674],{"class":86,"line":296},[84,72665,1642],{"class":90},[84,72667,15],{"class":94},[84,72669,1753],{"class":98},[84,72671,22245],{"class":90},[84,72673,15],{"class":94},[84,72675,102],{"class":90},[84,72677,72678,72680,72682],{"class":86,"line":315},[84,72679,324],{"class":90},[84,72681,22190],{"class":94},[84,72683,102],{"class":90},[84,72685,72686,72688,72690],{"class":86,"line":321},[84,72687,274],{"class":90},[84,72689,291],{"class":94},[84,72691,102],{"class":90},[74,72693,72694],{"className":21385,"code":21585,"filename":21387,"language":21388,"meta":80,"style":80},[22,72695,72696,72704,72714],{"__ignoreMap":80},[84,72697,72698,72700,72702],{"class":86,"line":87},[84,72699,21395],{"class":90},[84,72701,21317],{"class":98},[84,72703,21400],{"class":90},[84,72705,72706,72708,72710,72712],{"class":86,"line":105},[84,72707,21600],{"class":135},[84,72709,21408],{"class":90},[84,72711,21411],{"class":135},[84,72713,18869],{"class":90},[84,72715,72716],{"class":86,"line":122},[84,72717,193],{"class":90},[34,72719,2406],{"id":2405},[15,72721,72722,22528],{},[22,72723,21317],{},[15,72725,72726],{},[958,72727,22533],{},[737,72729,72730,72734,72736,72738],{},[740,72731,22538,72732,764],{},[22,72733,21539],{},[740,72735,22543],{},[740,72737,22546],{},[740,72739,22549],{},[835,72741,22552],{},{"title":80,"searchDepth":105,"depth":105,"links":72743},[72744,72745,72746,72747,72748,72749,72755,72761],{"id":21333,"depth":105,"text":21334},{"id":946,"depth":105,"text":947},{"id":21443,"depth":105,"text":21444},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":783,"depth":105,"text":784,"children":72750},[72751,72752,72753,72754],{"id":21529,"depth":122,"text":22563},{"id":21543,"depth":122,"text":22565},{"id":21560,"depth":122,"text":21561},{"id":21570,"depth":122,"text":21571},{"id":2735,"depth":105,"text":2736,"children":72756},[72757,72758,72759,72760],{"id":21581,"depth":122,"text":21582},{"id":21621,"depth":122,"text":21622},{"id":22015,"depth":122,"text":22016},{"id":22025,"depth":122,"text":22026},{"id":2405,"depth":105,"text":2406},{"updatedAt":22580,"coverCaption":18477,"author":868,"keywords":72763},[870,21317,22582,22583,873,1782],[72765],{"headline":22587,"author":72766,"datePublished":22580,"@type":880},{"name":868,"@type":879},{"title":21308,"description":22578},[72769,72770,72771,72772],{"tag":21297,"color":21298},{"tag":22594,"color":22595},{"tag":3942,"color":3943},{"tag":894,"color":895},{"id":22600,"title":22601,"body":72774,"cover":25252,"coverAlt":25253,"date":25254,"description":25255,"draft":852,"extension":853,"lab":882,"locale":864,"meta":75210,"navigation":125,"path":25260,"schemaOrg":75212,"seo":75215,"series":21291,"seriesDescription":21292,"seriesOrder":196,"seriesTitle":21293,"slug":882,"stem":25266,"tags":75216,"__hash__":25273},{"type":8,"value":72775,"toc":75186},[72776,72784,72794,72796,72798,72800,72814,72816,72818,72822,72824,72826,72830,72836,72842,72846,72852,72854,72856,72858,72874,72876,72886,72888,72890,72904,72906,72908,72922,72924,72938,72940,72944,72948,72954,72958,72960,72964,72968,72972,72978,72980,72982,72986,72988,72992,73122,73250,73258,73262,73582,73850,73860,73864,73956,74070,74072,74080,74644,75158,75160,75168,75182,75184],[11,72777,21314,72778,6014,72780,6014,72782],{"id":22606},[22,72779,22609],{},[22,72781,22612],{},[22,72783,22615],{},[15,72785,72786,754,72788,2488,72790,22624,72792,22628],{},[22,72787,22609],{},[22,72789,22612],{},[22,72791,22615],{},[4070,72793,22627],{},[34,72795,21334],{"id":21333},[15,72797,22633],{},[15,72799,22636],{},[737,72801,72802,72806,72810],{},[740,72803,22641,72804,2686],{},[22,72805,22609],{},[740,72807,22646,72808,2686],{},[22,72809,22612],{},[740,72811,22651,72812,2686],{},[22,72813,22615],{},[15,72815,22656],{},[34,72817,947],{"id":946},[1074,72819,72820],{"id":22609},[22,72821,22609],{},[15,72823,22665],{},[15,72825,22668],{},[1074,72827,72828],{"id":22612},[22,72829,22612],{},[15,72831,22675,72832,22679,72834,22683],{},[958,72833,22678],{},[4070,72835,22682],{},[15,72837,22686,72838,22689,72840,764],{},[22,72839,22612],{},[958,72841,22692],{},[1074,72843,72844],{"id":22615},[22,72845,22615],{},[15,72847,22699,72848,22703,72850,22706],{},[958,72849,22702],{},[22,72851,21329],{},[15,72853,22709],{},[34,72855,1013],{"id":1012},[15,72857,22714],{},[737,72859,72860,72864,72870],{},[740,72861,72862,22721],{},[22,72863,22609],{},[740,72865,72866,22726,72868,764],{},[22,72867,22612],{},[958,72869,22729],{},[740,72871,72872,22734],{},[22,72873,22615],{},[15,72875,22737],{},[737,72877,72878,72882,72884],{},[740,72879,22742,72880,22746],{},[22,72881,22745],{},[740,72883,22749],{},[740,72885,22752],{},[34,72887,1040],{"id":1039},[15,72889,22757],{},[737,72891,72892,72896,72900],{},[740,72893,22762,72894,22765],{},[22,72895,22609],{},[740,72897,22762,72898,22770],{},[22,72899,22612],{},[740,72901,22762,72902,22775],{},[22,72903,22615],{},[15,72905,22778],{},[34,72907,6158],{"id":6157},[737,72909,72910,72914,72918],{},[740,72911,72912,22787],{},[22,72913,22609],{},[740,72915,72916,22792],{},[22,72917,22612],{},[740,72919,72920,22797],{},[22,72921,22615],{},[15,72923,22800],{},[737,72925,72926,72930,72934],{},[740,72927,22805,72928,764],{},[22,72929,22609],{},[740,72931,22810,72932,764],{},[22,72933,22612],{},[740,72935,22815,72936,764],{},[22,72937,22615],{},[34,72939,784],{"id":783},[1074,72941,22823,72942,22826],{"id":22822},[22,72943,22609],{},[15,72945,22829,72946,22832],{},[22,72947,22609],{},[15,72949,72950,22838,72952,22841],{},[958,72951,22837],{},[22,72953,22609],{},[1074,72955,22845,72956],{"id":22844},[22,72957,22612],{},[15,72959,22850],{},[15,72961,72962,22855],{},[958,72963,22837],{},[1074,72965,22859,72966,22862],{"id":22858},[22,72967,22615],{},[15,72969,12736,72970,22867],{},[22,72971,22615],{},[15,72973,72974,17743,72976,22874],{},[958,72975,22837],{},[22,72977,22615],{},[1074,72979,22878],{"id":22877},[15,72981,22881],{},[15,72983,72984,22886],{},[958,72985,22837],{},[34,72987,2736],{"id":2735},[1074,72989,22892,72990],{"id":22891},[22,72991,22609],{},[74,72993,72995],{"className":76,"code":22897,"filename":873,"highlights":72994,"language":79,"meta":80,"style":80},[217],[22,72996,72997,73013,73025,73029,73045,73057,73065,73069,73077,73095,73099,73114],{"__ignoreMap":80},[84,72998,72999,73001,73003,73005,73007,73009,73011],{"class":86,"line":87},[84,73000,91],{"class":90},[84,73002,95],{"class":94},[84,73004,99],{"class":98},[84,73006,1161],{"class":98},[84,73008,184],{"class":90},[84,73010,1166],{"class":118},[84,73012,102],{"class":90},[84,73014,73015,73017,73019,73021,73023],{"class":86,"line":105},[84,73016,109],{"class":108},[84,73018,112],{"class":90},[84,73020,115],{"class":108},[84,73022,18866],{"class":118},[84,73024,18869],{"class":90},[84,73026,73027],{"class":86,"line":122},[84,73028,126],{"emptyLinePlaceholder":125},[84,73030,73031,73033,73035,73037,73039,73041,73043],{"class":86,"line":129},[84,73032,132],{"class":108},[84,73034,22939],{"class":135},[84,73036,139],{"class":108},[84,73038,142],{"class":98},[84,73040,145],{"class":90},[84,73042,4320],{"class":135},[84,73044,18994],{"class":90},[84,73046,73047,73049,73051,73053,73055],{"class":86,"line":154},[84,73048,132],{"class":108},[84,73050,22956],{"class":135},[84,73052,139],{"class":108},[84,73054,22961],{"class":118},[84,73056,18869],{"class":90},[84,73058,73059,73061,73063],{"class":86,"line":159},[84,73060,274],{"class":90},[84,73062,95],{"class":94},[84,73064,102],{"class":90},[84,73066,73067],{"class":86,"line":178},[84,73068,126],{"emptyLinePlaceholder":125},[84,73070,73071,73073,73075],{"class":86,"line":190},[84,73072,91],{"class":90},[84,73074,291],{"class":94},[84,73076,102],{"class":90},[84,73078,73079,73081,73083,73085,73087,73089,73091,73093],{"class":86,"line":196},[84,73080,299],{"class":90},[84,73082,302],{"class":94},[84,73084,305],{"class":98},[84,73086,184],{"class":90},[84,73088,22996],{"class":118},[84,73090,22999],{"class":90},[84,73092,302],{"class":94},[84,73094,102],{"class":90},[84,73096,73097],{"class":86,"line":201},[84,73098,126],{"emptyLinePlaceholder":125},[84,73100,73102,73104,73106,73108,73110,73112],{"class":73101,"line":217},[86,10151],[84,73103,299],{"class":90},[84,73105,15],{"class":94},[84,73107,23017],{"class":98},[84,73109,23020],{"class":90},[84,73111,15],{"class":94},[84,73113,102],{"class":90},[84,73115,73116,73118,73120],{"class":86,"line":227},[84,73117,274],{"class":90},[84,73119,291],{"class":94},[84,73121,102],{"class":90},[74,73123,73125],{"className":76,"code":23035,"filename":1782,"highlights":73124,"language":79,"meta":80,"style":80},[237],[22,73126,73127,73141,73149,73155,73161,73169,73177,73181,73185,73189,73197,73201,73209,73227,73242],{"__ignoreMap":80},[84,73128,73129,73131,73133,73135,73137,73139],{"class":86,"line":87},[84,73130,91],{"class":90},[84,73132,95],{"class":94},[84,73134,1161],{"class":98},[84,73136,184],{"class":90},[84,73138,1166],{"class":118},[84,73140,102],{"class":90},[84,73142,73143,73145,73147],{"class":86,"line":105},[84,73144,418],{"class":108},[84,73146,1870],{"class":108},[84,73148,175],{"class":90},[84,73150,73151,73153],{"class":86,"line":122},[84,73152,1896],{"class":98},[84,73154,1307],{"class":90},[84,73156,73157,73159],{"class":86,"line":129},[84,73158,1903],{"class":108},[84,73160,175],{"class":90},[84,73162,73163,73165,73167],{"class":86,"line":154},[84,73164,23077],{"class":90},[84,73166,4320],{"class":135},[84,73168,1887],{"class":90},[84,73170,73171,73173,73175],{"class":86,"line":159},[84,73172,23086],{"class":90},[84,73174,23089],{"class":118},[84,73176,1887],{"class":90},[84,73178,73179],{"class":86,"line":178},[84,73180,19195],{"class":90},[84,73182,73183],{"class":86,"line":190},[84,73184,1941],{"class":90},[84,73186,73187],{"class":86,"line":196},[84,73188,18973],{"class":90},[84,73190,73191,73193,73195],{"class":86,"line":201},[84,73192,274],{"class":90},[84,73194,95],{"class":94},[84,73196,102],{"class":90},[84,73198,73199],{"class":86,"line":217},[84,73200,126],{"emptyLinePlaceholder":125},[84,73202,73203,73205,73207],{"class":86,"line":227},[84,73204,91],{"class":90},[84,73206,291],{"class":94},[84,73208,102],{"class":90},[84,73210,73211,73213,73215,73217,73219,73221,73223,73225],{"class":86,"line":232},[84,73212,299],{"class":90},[84,73214,302],{"class":94},[84,73216,305],{"class":98},[84,73218,184],{"class":90},[84,73220,22996],{"class":118},[84,73222,22999],{"class":90},[84,73224,302],{"class":94},[84,73226,102],{"class":90},[84,73228,73230,73232,73234,73236,73238,73240],{"class":73229,"line":237},[86,10151],[84,73231,299],{"class":90},[84,73233,15],{"class":94},[84,73235,23017],{"class":98},[84,73237,23020],{"class":90},[84,73239,15],{"class":94},[84,73241,102],{"class":90},[84,73243,73244,73246,73248],{"class":86,"line":253},[84,73245,274],{"class":90},[84,73247,291],{"class":94},[84,73249,102],{"class":90},[823,73251,73252],{},[15,73253,23169,73254,23173,73256,23176],{},[22,73255,23172],{},[22,73257,22609],{},[1074,73259,23180,73260],{"id":23179},[22,73261,22612],{},[74,73263,73265],{"className":76,"code":23185,"filename":873,"highlights":73264,"language":79,"meta":80,"style":80},[281],[22,73266,73267,73283,73295,73299,73341,73345,73369,73385,73405,73425,73445,73449,73457,73461,73469,73475,73483,73491,73500,73508,73512,73524,73536,73548,73566,73574],{"__ignoreMap":80},[84,73268,73269,73271,73273,73275,73277,73279,73281],{"class":86,"line":87},[84,73270,91],{"class":90},[84,73272,95],{"class":94},[84,73274,99],{"class":98},[84,73276,1161],{"class":98},[84,73278,184],{"class":90},[84,73280,1166],{"class":118},[84,73282,102],{"class":90},[84,73284,73285,73287,73289,73291,73293],{"class":86,"line":105},[84,73286,109],{"class":108},[84,73288,112],{"class":90},[84,73290,115],{"class":108},[84,73292,18866],{"class":118},[84,73294,18869],{"class":90},[84,73296,73297],{"class":86,"line":122},[84,73298,126],{"emptyLinePlaceholder":125},[84,73300,73301,73303,73305,73307,73309,73311,73313,73315,73317,73319,73321,73323,73325,73327,73329,73331,73333,73335,73337,73339],{"class":86,"line":129},[84,73302,1188],{"class":108},[84,73304,23227],{"class":98},[84,73306,139],{"class":108},[84,73308,6763],{"class":90},[84,73310,22745],{"class":429},[84,73312,1203],{"class":108},[84,73314,3259],{"class":135},[84,73316,23240],{"class":90},[84,73318,22080],{"class":429},[84,73320,1203],{"class":108},[84,73322,22085],{"class":135},[84,73324,23240],{"class":90},[84,73326,23251],{"class":429},[84,73328,1203],{"class":108},[84,73330,23256],{"class":135},[84,73332,23240],{"class":90},[84,73334,23261],{"class":429},[84,73336,1203],{"class":108},[84,73338,3259],{"class":135},[84,73340,20412],{"class":90},[84,73342,73343],{"class":86,"line":154},[84,73344,126],{"emptyLinePlaceholder":125},[84,73346,73347,73349,73351,73353,73355,73357,73359,73361,73363,73365,73367],{"class":86,"line":159},[84,73348,132],{"class":108},[84,73350,23278],{"class":135},[84,73352,139],{"class":108},[84,73354,142],{"class":98},[84,73356,91],{"class":90},[84,73358,8732],{"class":135},[84,73360,1261],{"class":108},[84,73362,1264],{"class":135},[84,73364,1267],{"class":90},[84,73366,1270],{"class":135},[84,73368,18994],{"class":90},[84,73370,73371,73373,73375,73377,73379,73381,73383],{"class":86,"line":178},[84,73372,132],{"class":108},[84,73374,11767],{"class":135},[84,73376,139],{"class":108},[84,73378,142],{"class":98},[84,73380,91],{"class":90},[84,73382,23311],{"class":98},[84,73384,23314],{"class":90},[84,73386,73387,73389,73391,73393,73395,73397,73399,73401,73403],{"class":86,"line":190},[84,73388,2899],{"class":90},[84,73390,2862],{"class":135},[84,73392,23323],{"class":90},[84,73394,18308],{"class":118},[84,73396,23328],{"class":90},[84,73398,2938],{"class":135},[84,73400,23333],{"class":90},[84,73402,23336],{"class":135},[84,73404,2921],{"class":90},[84,73406,73407,73409,73411,73413,73415,73417,73419,73421,73423],{"class":86,"line":196},[84,73408,2899],{"class":90},[84,73410,2928],{"class":135},[84,73412,23323],{"class":90},[84,73414,23349],{"class":118},[84,73416,23328],{"class":90},[84,73418,148],{"class":135},[84,73420,23333],{"class":90},[84,73422,23358],{"class":135},[84,73424,2921],{"class":90},[84,73426,73427,73429,73431,73433,73435,73437,73439,73441,73443],{"class":86,"line":201},[84,73428,2899],{"class":90},[84,73430,2952],{"class":135},[84,73432,23323],{"class":90},[84,73434,23371],{"class":118},[84,73436,23328],{"class":90},[84,73438,2938],{"class":135},[84,73440,23333],{"class":90},[84,73442,23380],{"class":135},[84,73444,2921],{"class":90},[84,73446,73447],{"class":86,"line":217},[84,73448,23387],{"class":90},[84,73450,73451,73453,73455],{"class":86,"line":227},[84,73452,274],{"class":90},[84,73454,95],{"class":94},[84,73456,102],{"class":90},[84,73458,73459],{"class":86,"line":232},[84,73460,126],{"emptyLinePlaceholder":125},[84,73462,73463,73465,73467],{"class":86,"line":237},[84,73464,91],{"class":90},[84,73466,291],{"class":94},[84,73468,102],{"class":90},[84,73470,73471,73473],{"class":86,"line":253},[84,73472,299],{"class":90},[84,73474,23414],{"class":94},[84,73476,73477,73479,73481],{"class":86,"line":266},[84,73478,23419],{"class":98},[84,73480,184],{"class":90},[84,73482,23424],{"class":118},[84,73484,73485,73487,73489],{"class":86,"line":271},[84,73486,23429],{"class":98},[84,73488,184],{"class":90},[84,73490,23434],{"class":118},[84,73492,73494,73496,73498],{"class":73493,"line":281},[86,10151],[84,73495,23440],{"class":98},[84,73497,184],{"class":90},[84,73499,23445],{"class":118},[84,73501,73502,73504,73506],{"class":86,"line":286},[84,73503,23450],{"class":98},[84,73505,184],{"class":90},[84,73507,23455],{"class":118},[84,73509,73510],{"class":86,"line":296},[84,73511,23460],{"class":90},[84,73513,73514,73516,73518,73520,73522],{"class":86,"line":315},[84,73515,1642],{"class":90},[84,73517,1074],{"class":94},[84,73519,23469],{"class":90},[84,73521,1074],{"class":94},[84,73523,102],{"class":90},[84,73525,73526,73528,73530,73532,73534],{"class":86,"line":321},[84,73527,1642],{"class":90},[84,73529,15],{"class":94},[84,73531,23482],{"class":90},[84,73533,15],{"class":94},[84,73535,102],{"class":90},[84,73537,73538,73540,73542,73544,73546],{"class":86,"line":331},[84,73539,1642],{"class":90},[84,73541,15],{"class":94},[84,73543,23495],{"class":90},[84,73545,15],{"class":94},[84,73547,102],{"class":90},[84,73549,73550,73552,73554,73556,73558,73560,73562,73564],{"class":86,"line":336},[84,73551,1642],{"class":90},[84,73553,302],{"class":94},[84,73555,305],{"class":98},[84,73557,184],{"class":90},[84,73559,23512],{"class":118},[84,73561,23515],{"class":90},[84,73563,302],{"class":94},[84,73565,102],{"class":90},[84,73567,73568,73570,73572],{"class":86,"line":354},[84,73569,324],{"class":90},[84,73571,1626],{"class":94},[84,73573,102],{"class":90},[84,73575,73576,73578,73580],{"class":86,"line":360},[84,73577,274],{"class":90},[84,73579,291],{"class":94},[84,73581,102],{"class":90},[74,73583,73585],{"className":76,"code":23538,"filename":1782,"highlights":73584,"language":79,"meta":80,"style":80},[296],[22,73586,73587,73601,73609,73615,73621,73637,73641,73661,73681,73701,73705,73709,73713,73717,73725,73729,73737,73743,73751,73759,73768,73776,73780,73792,73804,73816,73834,73842],{"__ignoreMap":80},[84,73588,73589,73591,73593,73595,73597,73599],{"class":86,"line":87},[84,73590,91],{"class":90},[84,73592,95],{"class":94},[84,73594,1161],{"class":98},[84,73596,184],{"class":90},[84,73598,1166],{"class":118},[84,73600,102],{"class":90},[84,73602,73603,73605,73607],{"class":86,"line":105},[84,73604,418],{"class":108},[84,73606,1870],{"class":108},[84,73608,175],{"class":90},[84,73610,73611,73613],{"class":86,"line":122},[84,73612,1896],{"class":98},[84,73614,1307],{"class":90},[84,73616,73617,73619],{"class":86,"line":129},[84,73618,1903],{"class":108},[84,73620,175],{"class":90},[84,73622,73623,73625,73627,73629,73631,73633,73635],{"class":86,"line":154},[84,73624,23580],{"class":90},[84,73626,1270],{"class":135},[84,73628,1915],{"class":108},[84,73630,3259],{"class":135},[84,73632,1261],{"class":108},[84,73634,1264],{"class":135},[84,73636,1887],{"class":90},[84,73638,73639],{"class":86,"line":159},[84,73640,23597],{"class":90},[84,73642,73643,73645,73647,73649,73651,73653,73655,73657,73659],{"class":86,"line":178},[84,73644,3449],{"class":90},[84,73646,2862],{"class":135},[84,73648,23323],{"class":90},[84,73650,18308],{"class":118},[84,73652,23328],{"class":90},[84,73654,2938],{"class":135},[84,73656,23333],{"class":90},[84,73658,23336],{"class":135},[84,73660,2921],{"class":90},[84,73662,73663,73665,73667,73669,73671,73673,73675,73677,73679],{"class":86,"line":190},[84,73664,3449],{"class":90},[84,73666,2928],{"class":135},[84,73668,23323],{"class":90},[84,73670,23349],{"class":118},[84,73672,23328],{"class":90},[84,73674,148],{"class":135},[84,73676,23333],{"class":90},[84,73678,23358],{"class":135},[84,73680,2921],{"class":90},[84,73682,73683,73685,73687,73689,73691,73693,73695,73697,73699],{"class":86,"line":196},[84,73684,3449],{"class":90},[84,73686,2952],{"class":135},[84,73688,23323],{"class":90},[84,73690,23371],{"class":118},[84,73692,23328],{"class":90},[84,73694,2938],{"class":135},[84,73696,23333],{"class":90},[84,73698,23380],{"class":135},[84,73700,2921],{"class":90},[84,73702,73703],{"class":86,"line":201},[84,73704,10927],{"class":90},[84,73706,73707],{"class":86,"line":217},[84,73708,19195],{"class":90},[84,73710,73711],{"class":86,"line":227},[84,73712,1941],{"class":90},[84,73714,73715],{"class":86,"line":232},[84,73716,18973],{"class":90},[84,73718,73719,73721,73723],{"class":86,"line":237},[84,73720,274],{"class":90},[84,73722,95],{"class":94},[84,73724,102],{"class":90},[84,73726,73727],{"class":86,"line":253},[84,73728,126],{"emptyLinePlaceholder":125},[84,73730,73731,73733,73735],{"class":86,"line":266},[84,73732,91],{"class":90},[84,73734,291],{"class":94},[84,73736,102],{"class":90},[84,73738,73739,73741],{"class":86,"line":271},[84,73740,299],{"class":90},[84,73742,23414],{"class":94},[84,73744,73745,73747,73749],{"class":86,"line":281},[84,73746,23419],{"class":98},[84,73748,184],{"class":90},[84,73750,23424],{"class":118},[84,73752,73753,73755,73757],{"class":86,"line":286},[84,73754,23429],{"class":98},[84,73756,184],{"class":90},[84,73758,23434],{"class":118},[84,73760,73762,73764,73766],{"class":73761,"line":296},[86,10151],[84,73763,23440],{"class":98},[84,73765,184],{"class":90},[84,73767,23445],{"class":118},[84,73769,73770,73772,73774],{"class":86,"line":315},[84,73771,23450],{"class":98},[84,73773,184],{"class":90},[84,73775,23455],{"class":118},[84,73777,73778],{"class":86,"line":321},[84,73779,23460],{"class":90},[84,73781,73782,73784,73786,73788,73790],{"class":86,"line":331},[84,73783,1642],{"class":90},[84,73785,1074],{"class":94},[84,73787,23469],{"class":90},[84,73789,1074],{"class":94},[84,73791,102],{"class":90},[84,73793,73794,73796,73798,73800,73802],{"class":86,"line":336},[84,73795,1642],{"class":90},[84,73797,15],{"class":94},[84,73799,23482],{"class":90},[84,73801,15],{"class":94},[84,73803,102],{"class":90},[84,73805,73806,73808,73810,73812,73814],{"class":86,"line":354},[84,73807,1642],{"class":90},[84,73809,15],{"class":94},[84,73811,23495],{"class":90},[84,73813,15],{"class":94},[84,73815,102],{"class":90},[84,73817,73818,73820,73822,73824,73826,73828,73830,73832],{"class":86,"line":360},[84,73819,1642],{"class":90},[84,73821,302],{"class":94},[84,73823,305],{"class":98},[84,73825,184],{"class":90},[84,73827,23512],{"class":118},[84,73829,23515],{"class":90},[84,73831,302],{"class":94},[84,73833,102],{"class":90},[84,73835,73836,73838,73840],{"class":86,"line":369},[84,73837,324],{"class":90},[84,73839,1626],{"class":94},[84,73841,102],{"class":90},[84,73843,73844,73846,73848],{"class":86,"line":1453},[84,73845,274],{"class":90},[84,73847,291],{"class":94},[84,73849,102],{"class":90},[823,73851,73852],{},[15,73853,23811,73854,23814,73856,23818,73858,23822],{},[22,73855,22612],{},[958,73857,23817],{},[22,73859,23821],{},[1074,73861,23826,73862],{"id":23825},[22,73863,22615],{},[74,73865,73867],{"className":76,"code":23831,"filename":873,"highlights":73866,"language":79,"meta":80,"style":80},[190],[22,73868,73869,73885,73897,73905,73909,73917,73929,73933,73948],{"__ignoreMap":80},[84,73870,73871,73873,73875,73877,73879,73881,73883],{"class":86,"line":87},[84,73872,91],{"class":90},[84,73874,95],{"class":94},[84,73876,99],{"class":98},[84,73878,1161],{"class":98},[84,73880,184],{"class":90},[84,73882,1166],{"class":118},[84,73884,102],{"class":90},[84,73886,73887,73889,73891,73893,73895],{"class":86,"line":105},[84,73888,132],{"class":108},[84,73890,23857],{"class":135},[84,73892,139],{"class":108},[84,73894,23862],{"class":118},[84,73896,18869],{"class":90},[84,73898,73899,73901,73903],{"class":86,"line":122},[84,73900,274],{"class":90},[84,73902,95],{"class":94},[84,73904,102],{"class":90},[84,73906,73907],{"class":86,"line":129},[84,73908,126],{"emptyLinePlaceholder":125},[84,73910,73911,73913,73915],{"class":86,"line":154},[84,73912,91],{"class":90},[84,73914,291],{"class":94},[84,73916,102],{"class":90},[84,73918,73919,73921,73923,73925,73927],{"class":86,"line":159},[84,73920,299],{"class":90},[84,73922,15],{"class":94},[84,73924,23893],{"class":90},[84,73926,15],{"class":94},[84,73928,102],{"class":90},[84,73930,73931],{"class":86,"line":178},[84,73932,126],{"emptyLinePlaceholder":125},[84,73934,73936,73938,73940,73942,73944,73946],{"class":73935,"line":190},[86,10151],[84,73937,299],{"class":90},[84,73939,74],{"class":94},[84,73941,23911],{"class":98},[84,73943,23914],{"class":90},[84,73945,74],{"class":94},[84,73947,102],{"class":90},[84,73949,73950,73952,73954],{"class":86,"line":196},[84,73951,274],{"class":90},[84,73953,291],{"class":94},[84,73955,102],{"class":90},[74,73957,73959],{"className":76,"code":23929,"filename":1782,"highlights":73958,"language":79,"meta":80,"style":80},[232],[22,73960,73961,73975,73983,73989,73995,74003,74007,74011,74015,74023,74027,74035,74047,74062],{"__ignoreMap":80},[84,73962,73963,73965,73967,73969,73971,73973],{"class":86,"line":87},[84,73964,91],{"class":90},[84,73966,95],{"class":94},[84,73968,1161],{"class":98},[84,73970,184],{"class":90},[84,73972,1166],{"class":118},[84,73974,102],{"class":90},[84,73976,73977,73979,73981],{"class":86,"line":105},[84,73978,418],{"class":108},[84,73980,1870],{"class":108},[84,73982,175],{"class":90},[84,73984,73985,73987],{"class":86,"line":122},[84,73986,1896],{"class":98},[84,73988,1307],{"class":90},[84,73990,73991,73993],{"class":86,"line":129},[84,73992,1903],{"class":108},[84,73994,175],{"class":90},[84,73996,73997,73999,74001],{"class":86,"line":154},[84,73998,23971],{"class":90},[84,74000,23974],{"class":118},[84,74002,1887],{"class":90},[84,74004,74005],{"class":86,"line":159},[84,74006,19195],{"class":90},[84,74008,74009],{"class":86,"line":178},[84,74010,1941],{"class":90},[84,74012,74013],{"class":86,"line":190},[84,74014,18973],{"class":90},[84,74016,74017,74019,74021],{"class":86,"line":196},[84,74018,274],{"class":90},[84,74020,95],{"class":94},[84,74022,102],{"class":90},[84,74024,74025],{"class":86,"line":201},[84,74026,126],{"emptyLinePlaceholder":125},[84,74028,74029,74031,74033],{"class":86,"line":217},[84,74030,91],{"class":90},[84,74032,291],{"class":94},[84,74034,102],{"class":90},[84,74036,74037,74039,74041,74043,74045],{"class":86,"line":227},[84,74038,299],{"class":90},[84,74040,15],{"class":94},[84,74042,23893],{"class":90},[84,74044,15],{"class":94},[84,74046,102],{"class":90},[84,74048,74050,74052,74054,74056,74058,74060],{"class":74049,"line":232},[86,10151],[84,74051,299],{"class":90},[84,74053,74],{"class":94},[84,74055,23911],{"class":98},[84,74057,23914],{"class":90},[84,74059,74],{"class":94},[84,74061,102],{"class":90},[84,74063,74064,74066,74068],{"class":86,"line":237},[84,74065,274],{"class":90},[84,74067,291],{"class":94},[84,74069,102],{"class":90},[1074,74071,24047],{"id":24046},[15,74073,24050,74074,24053,74076,24056,74078,24059],{},[22,74075,22609],{},[22,74077,22612],{},[22,74079,22615],{},[74,74081,74082],{"className":76,"code":24062,"filename":873,"language":79,"meta":80,"style":80},[22,74083,74084,74100,74112,74116,74158,74162,74186,74202,74222,74242,74262,74266,74270,74308,74322,74330,74336,74358,74362,74370,74374,74382,74392,74404,74416,74424,74428,74436,74440,74454,74484,74492,74500,74504,74510,74518,74526,74534,74542,74546,74558,74570,74582,74590,74594,74602,74614,74628,74636],{"__ignoreMap":80},[84,74085,74086,74088,74090,74092,74094,74096,74098],{"class":86,"line":87},[84,74087,91],{"class":90},[84,74089,95],{"class":94},[84,74091,99],{"class":98},[84,74093,1161],{"class":98},[84,74095,184],{"class":90},[84,74097,1166],{"class":118},[84,74099,102],{"class":90},[84,74101,74102,74104,74106,74108,74110],{"class":86,"line":105},[84,74103,109],{"class":108},[84,74105,24087],{"class":90},[84,74107,115],{"class":108},[84,74109,18866],{"class":118},[84,74111,18869],{"class":90},[84,74113,74114],{"class":86,"line":122},[84,74115,126],{"emptyLinePlaceholder":125},[84,74117,74118,74120,74122,74124,74126,74128,74130,74132,74134,74136,74138,74140,74142,74144,74146,74148,74150,74152,74154,74156],{"class":86,"line":129},[84,74119,1188],{"class":108},[84,74121,6398],{"class":98},[84,74123,139],{"class":108},[84,74125,6763],{"class":90},[84,74127,22745],{"class":429},[84,74129,1203],{"class":108},[84,74131,3259],{"class":135},[84,74133,23240],{"class":90},[84,74135,24118],{"class":429},[84,74137,1203],{"class":108},[84,74139,22085],{"class":135},[84,74141,23240],{"class":90},[84,74143,24127],{"class":429},[84,74145,1203],{"class":108},[84,74147,23256],{"class":135},[84,74149,23240],{"class":90},[84,74151,24136],{"class":429},[84,74153,1203],{"class":108},[84,74155,22085],{"class":135},[84,74157,20412],{"class":90},[84,74159,74160],{"class":86,"line":154},[84,74161,126],{"emptyLinePlaceholder":125},[84,74163,74164,74166,74168,74170,74172,74174,74176,74178,74180,74182,74184],{"class":86,"line":159},[84,74165,132],{"class":108},[84,74167,24153],{"class":135},[84,74169,139],{"class":108},[84,74171,142],{"class":98},[84,74173,91],{"class":90},[84,74175,24162],{"class":118},[84,74177,1261],{"class":108},[84,74179,22085],{"class":135},[84,74181,1267],{"class":90},[84,74183,24162],{"class":118},[84,74185,18994],{"class":90},[84,74187,74188,74190,74192,74194,74196,74198,74200],{"class":86,"line":178},[84,74189,132],{"class":108},[84,74191,2887],{"class":135},[84,74193,139],{"class":108},[84,74195,142],{"class":98},[84,74197,91],{"class":90},[84,74199,6452],{"class":98},[84,74201,23314],{"class":90},[84,74203,74204,74206,74208,74210,74212,74214,74216,74218,74220],{"class":86,"line":190},[84,74205,2899],{"class":90},[84,74207,2862],{"class":135},[84,74209,2904],{"class":90},[84,74211,24199],{"class":118},[84,74213,2910],{"class":90},[84,74215,2938],{"class":135},[84,74217,2915],{"class":90},[84,74219,18308],{"class":118},[84,74221,2921],{"class":90},[84,74223,74224,74226,74228,74230,74232,74234,74236,74238,74240],{"class":86,"line":196},[84,74225,2899],{"class":90},[84,74227,2928],{"class":135},[84,74229,2904],{"class":90},[84,74231,24220],{"class":118},[84,74233,2910],{"class":90},[84,74235,148],{"class":135},[84,74237,2915],{"class":90},[84,74239,23349],{"class":118},[84,74241,2921],{"class":90},[84,74243,74244,74246,74248,74250,74252,74254,74256,74258,74260],{"class":86,"line":201},[84,74245,2899],{"class":90},[84,74247,2952],{"class":135},[84,74249,2904],{"class":90},[84,74251,24241],{"class":118},[84,74253,2910],{"class":90},[84,74255,148],{"class":135},[84,74257,2915],{"class":90},[84,74259,18308],{"class":118},[84,74261,2921],{"class":90},[84,74263,74264],{"class":86,"line":217},[84,74265,23387],{"class":90},[84,74267,74268],{"class":86,"line":227},[84,74269,126],{"emptyLinePlaceholder":125},[84,74271,74272,74274,74276,74278,74280,74282,74284,74286,74288,74290,74292,74294,74296,74298,74300,74302,74304,74306],{"class":86,"line":232},[84,74273,132],{"class":108},[84,74275,24266],{"class":135},[84,74277,139],{"class":108},[84,74279,2989],{"class":98},[84,74281,2992],{"class":90},[84,74283,172],{"class":108},[84,74285,24277],{"class":90},[84,74287,24162],{"class":118},[84,74289,754],{"class":90},[84,74291,24284],{"class":108},[84,74293,17144],{"class":98},[84,74295,24289],{"class":90},[84,74297,4622],{"class":98},[84,74299,3120],{"class":90},[84,74301,24296],{"class":429},[84,74303,3126],{"class":90},[84,74305,172],{"class":108},[84,74307,24303],{"class":90},[84,74309,74310,74312,74314,74316,74318,74320],{"class":86,"line":237},[84,74311,132],{"class":108},[84,74313,2984],{"class":135},[84,74315,139],{"class":108},[84,74317,2989],{"class":98},[84,74319,2992],{"class":90},[84,74321,4494],{"class":108},[84,74323,74324,74326,74328],{"class":86,"line":253},[84,74325,24322],{"class":90},[84,74327,3288],{"class":108},[84,74329,24327],{"class":118},[84,74331,74332,74334],{"class":86,"line":266},[84,74333,24332],{"class":108},[84,74335,6687],{"class":90},[84,74337,74338,74340,74342,74344,74346,74348,74350,74352,74354,74356],{"class":86,"line":271},[84,74339,24339],{"class":108},[84,74341,3003],{"class":90},[84,74343,3006],{"class":98},[84,74345,3120],{"class":90},[84,74347,24296],{"class":429},[84,74349,3126],{"class":90},[84,74351,172],{"class":108},[84,74353,24354],{"class":90},[84,74355,3288],{"class":108},[84,74357,24359],{"class":90},[84,74359,74360],{"class":86,"line":281},[84,74361,18994],{"class":90},[84,74363,74364,74366,74368],{"class":86,"line":286},[84,74365,274],{"class":90},[84,74367,95],{"class":94},[84,74369,102],{"class":90},[84,74371,74372],{"class":86,"line":296},[84,74373,126],{"emptyLinePlaceholder":125},[84,74375,74376,74378,74380],{"class":86,"line":315},[84,74377,91],{"class":90},[84,74379,291],{"class":94},[84,74381,102],{"class":90},[84,74383,74384,74386,74388,74390],{"class":86,"line":321},[84,74385,299],{"class":90},[84,74387,4915],{"class":94},[84,74389,23017],{"class":98},[84,74391,102],{"class":90},[84,74393,74394,74396,74398,74400,74402],{"class":86,"line":331},[84,74395,1642],{"class":90},[84,74397,34],{"class":94},[84,74399,24402],{"class":90},[84,74401,34],{"class":94},[84,74403,102],{"class":90},[84,74405,74406,74408,74410,74412,74414],{"class":86,"line":336},[84,74407,1642],{"class":90},[84,74409,15],{"class":94},[84,74411,24415],{"class":90},[84,74413,15],{"class":94},[84,74415,102],{"class":90},[84,74417,74418,74420,74422],{"class":86,"line":354},[84,74419,324],{"class":90},[84,74421,4915],{"class":94},[84,74423,102],{"class":90},[84,74425,74426],{"class":86,"line":360},[84,74427,126],{"emptyLinePlaceholder":125},[84,74429,74430,74432,74434],{"class":86,"line":369},[84,74431,299],{"class":90},[84,74433,4653],{"class":94},[84,74435,102],{"class":90},[84,74437,74438],{"class":86,"line":1453},[84,74439,24444],{"class":90},[84,74441,74442,74444,74446,74448,74450,74452],{"class":86,"line":1462},[84,74443,1642],{"class":90},[84,74445,24451],{"class":94},[84,74447,24454],{"class":98},[84,74449,184],{"class":90},[84,74451,24459],{"class":118},[84,74453,102],{"class":90},[84,74455,74456,74458,74460,74462,74464,74466,74468,74470,74472,74474,74476,74478,74480,74482],{"class":86,"line":1484},[84,74457,1691],{"class":90},[84,74459,24468],{"class":94},[84,74461,13525],{"class":98},[84,74463,184],{"class":90},[84,74465,24475],{"class":118},[84,74467,5092],{"class":98},[84,74469,184],{"class":90},[84,74471,24482],{"class":118},[84,74473,24485],{"class":98},[84,74475,184],{"class":90},[84,74477,24482],{"class":118},[84,74479,24492],{"class":90},[84,74481,24468],{"class":94},[84,74483,102],{"class":90},[84,74485,74486,74488,74490],{"class":86,"line":1489},[84,74487,1734],{"class":90},[84,74489,24451],{"class":94},[84,74491,102],{"class":90},[84,74493,74494,74496,74498],{"class":86,"line":1495},[84,74495,324],{"class":90},[84,74497,4653],{"class":94},[84,74499,102],{"class":90},[84,74501,74502],{"class":86,"line":1500},[84,74503,126],{"emptyLinePlaceholder":125},[84,74505,74506,74508],{"class":86,"line":1516},[84,74507,299],{"class":90},[84,74509,24523],{"class":94},[84,74511,74512,74514,74516],{"class":86,"line":1533},[84,74513,23419],{"class":98},[84,74515,184],{"class":90},[84,74517,7283],{"class":118},[84,74519,74520,74522,74524],{"class":86,"line":1538},[84,74521,23429],{"class":98},[84,74523,184],{"class":90},[84,74525,7293],{"class":118},[84,74527,74528,74530,74532],{"class":86,"line":1545},[84,74529,23440],{"class":98},[84,74531,184],{"class":90},[84,74533,24548],{"class":118},[84,74535,74536,74538,74540],{"class":86,"line":1554},[84,74537,23450],{"class":98},[84,74539,184],{"class":90},[84,74541,24557],{"class":118},[84,74543,74544],{"class":86,"line":1563},[84,74545,23460],{"class":90},[84,74547,74548,74550,74552,74554,74556],{"class":86,"line":1570},[84,74549,1642],{"class":90},[84,74551,1074],{"class":94},[84,74553,24570],{"class":90},[84,74555,1074],{"class":94},[84,74557,102],{"class":90},[84,74559,74560,74562,74564,74566,74568],{"class":86,"line":1588},[84,74561,1642],{"class":90},[84,74563,15],{"class":94},[84,74565,24583],{"class":90},[84,74567,15],{"class":94},[84,74569,102],{"class":90},[84,74571,74572,74574,74576,74578,74580],{"class":86,"line":1593},[84,74573,1642],{"class":90},[84,74575,15],{"class":94},[84,74577,24596],{"class":90},[84,74579,15],{"class":94},[84,74581,102],{"class":90},[84,74583,74584,74586,74588],{"class":86,"line":1598},[84,74585,324],{"class":90},[84,74587,4898],{"class":94},[84,74589,102],{"class":90},[84,74591,74592],{"class":86,"line":1607},[84,74593,126],{"emptyLinePlaceholder":125},[84,74595,74596,74598,74600],{"class":86,"line":1612},[84,74597,299],{"class":90},[84,74599,22190],{"class":94},[84,74601,102],{"class":90},[84,74603,74604,74606,74608,74610,74612],{"class":86,"line":1621},[84,74605,1642],{"class":90},[84,74607,24627],{"class":94},[84,74609,24630],{"class":90},[84,74611,24627],{"class":94},[84,74613,102],{"class":90},[84,74615,74616,74618,74620,74622,74624,74626],{"class":86,"line":1639},[84,74617,1642],{"class":90},[84,74619,22],{"class":94},[84,74621,23911],{"class":98},[84,74623,24645],{"class":90},[84,74625,22],{"class":94},[84,74627,102],{"class":90},[84,74629,74630,74632,74634],{"class":86,"line":1661},[84,74631,324],{"class":90},[84,74633,22190],{"class":94},[84,74635,102],{"class":90},[84,74637,74638,74640,74642],{"class":86,"line":1666},[84,74639,274],{"class":90},[84,74641,291],{"class":94},[84,74643,102],{"class":90},[74,74645,74646],{"className":76,"code":24668,"filename":1782,"language":79,"meta":80,"style":80},[22,74647,74648,74662,74670,74676,74682,74690,74694,74714,74734,74754,74758,74762,74766,74770,74776,74808,74812,74818,74830,74838,74864,74868,74872,74876,74884,74888,74896,74906,74918,74930,74938,74942,74950,74954,74968,74998,75006,75014,75018,75024,75032,75040,75048,75056,75060,75072,75084,75096,75104,75108,75116,75128,75142,75150],{"__ignoreMap":80},[84,74649,74650,74652,74654,74656,74658,74660],{"class":86,"line":87},[84,74651,91],{"class":90},[84,74653,95],{"class":94},[84,74655,1161],{"class":98},[84,74657,184],{"class":90},[84,74659,1166],{"class":118},[84,74661,102],{"class":90},[84,74663,74664,74666,74668],{"class":86,"line":105},[84,74665,418],{"class":108},[84,74667,1870],{"class":108},[84,74669,175],{"class":90},[84,74671,74672,74674],{"class":86,"line":122},[84,74673,1896],{"class":98},[84,74675,1307],{"class":90},[84,74677,74678,74680],{"class":86,"line":129},[84,74679,1903],{"class":108},[84,74681,175],{"class":90},[84,74683,74684,74686,74688],{"class":86,"line":154},[84,74685,24709],{"class":90},[84,74687,24162],{"class":118},[84,74689,1887],{"class":90},[84,74691,74692],{"class":86,"line":159},[84,74693,3444],{"class":90},[84,74695,74696,74698,74700,74702,74704,74706,74708,74710,74712],{"class":86,"line":178},[84,74697,3449],{"class":90},[84,74699,2862],{"class":135},[84,74701,2904],{"class":90},[84,74703,24199],{"class":118},[84,74705,2910],{"class":90},[84,74707,2938],{"class":135},[84,74709,2915],{"class":90},[84,74711,18308],{"class":118},[84,74713,2921],{"class":90},[84,74715,74716,74718,74720,74722,74724,74726,74728,74730,74732],{"class":86,"line":190},[84,74717,3449],{"class":90},[84,74719,2928],{"class":135},[84,74721,2904],{"class":90},[84,74723,24220],{"class":118},[84,74725,2910],{"class":90},[84,74727,148],{"class":135},[84,74729,2915],{"class":90},[84,74731,23349],{"class":118},[84,74733,2921],{"class":90},[84,74735,74736,74738,74740,74742,74744,74746,74748,74750,74752],{"class":86,"line":196},[84,74737,3449],{"class":90},[84,74739,2952],{"class":135},[84,74741,2904],{"class":90},[84,74743,24241],{"class":118},[84,74745,2910],{"class":90},[84,74747,148],{"class":135},[84,74749,2915],{"class":90},[84,74751,18308],{"class":118},[84,74753,2921],{"class":90},[84,74755,74756],{"class":86,"line":201},[84,74757,10927],{"class":90},[84,74759,74760],{"class":86,"line":217},[84,74761,19195],{"class":90},[84,74763,74764],{"class":86,"line":227},[84,74765,1941],{"class":90},[84,74767,74768],{"class":86,"line":232},[84,74769,3527],{"class":90},[84,74771,74772,74774],{"class":86,"line":237},[84,74773,24798],{"class":98},[84,74775,1307],{"class":90},[84,74777,74778,74780,74782,74784,74786,74788,74790,74792,74794,74796,74798,74800,74802,74804,74806],{"class":86,"line":253},[84,74779,3539],{"class":108},[84,74781,24277],{"class":90},[84,74783,24162],{"class":118},[84,74785,754],{"class":90},[84,74787,24284],{"class":108},[84,74789,17144],{"class":98},[84,74791,145],{"class":90},[84,74793,2151],{"class":135},[84,74795,3544],{"class":90},[84,74797,4622],{"class":98},[84,74799,3120],{"class":90},[84,74801,24296],{"class":429},[84,74803,3126],{"class":90},[84,74805,172],{"class":108},[84,74807,24833],{"class":90},[84,74809,74810],{"class":86,"line":266},[84,74811,7783],{"class":90},[84,74813,74814,74816],{"class":86,"line":271},[84,74815,3532],{"class":98},[84,74817,1307],{"class":90},[84,74819,74820,74822,74824,74826,74828],{"class":86,"line":281},[84,74821,3539],{"class":108},[84,74823,2078],{"class":135},[84,74825,24852],{"class":90},[84,74827,3288],{"class":108},[84,74829,24327],{"class":118},[84,74831,74832,74834,74836],{"class":86,"line":286},[84,74833,24861],{"class":108},[84,74835,2078],{"class":135},[84,74837,7534],{"class":90},[84,74839,74840,74842,74844,74846,74848,74850,74852,74854,74856,74858,74860,74862],{"class":86,"line":296},[84,74841,24870],{"class":108},[84,74843,2078],{"class":135},[84,74845,3544],{"class":90},[84,74847,3006],{"class":98},[84,74849,3120],{"class":90},[84,74851,24296],{"class":429},[84,74853,3126],{"class":90},[84,74855,172],{"class":108},[84,74857,24354],{"class":90},[84,74859,3288],{"class":108},[84,74861,2078],{"class":135},[84,74863,24893],{"class":90},[84,74865,74866],{"class":86,"line":315},[84,74867,7783],{"class":90},[84,74869,74870],{"class":86,"line":321},[84,74871,1941],{"class":90},[84,74873,74874],{"class":86,"line":331},[84,74875,18973],{"class":90},[84,74877,74878,74880,74882],{"class":86,"line":336},[84,74879,274],{"class":90},[84,74881,95],{"class":94},[84,74883,102],{"class":90},[84,74885,74886],{"class":86,"line":354},[84,74887,126],{"emptyLinePlaceholder":125},[84,74889,74890,74892,74894],{"class":86,"line":360},[84,74891,91],{"class":90},[84,74893,291],{"class":94},[84,74895,102],{"class":90},[84,74897,74898,74900,74902,74904],{"class":86,"line":369},[84,74899,299],{"class":90},[84,74901,4915],{"class":94},[84,74903,23017],{"class":98},[84,74905,102],{"class":90},[84,74907,74908,74910,74912,74914,74916],{"class":86,"line":1453},[84,74909,1642],{"class":90},[84,74911,34],{"class":94},[84,74913,24402],{"class":90},[84,74915,34],{"class":94},[84,74917,102],{"class":90},[84,74919,74920,74922,74924,74926,74928],{"class":86,"line":1462},[84,74921,1642],{"class":90},[84,74923,15],{"class":94},[84,74925,24415],{"class":90},[84,74927,15],{"class":94},[84,74929,102],{"class":90},[84,74931,74932,74934,74936],{"class":86,"line":1484},[84,74933,324],{"class":90},[84,74935,4915],{"class":94},[84,74937,102],{"class":90},[84,74939,74940],{"class":86,"line":1489},[84,74941,126],{"emptyLinePlaceholder":125},[84,74943,74944,74946,74948],{"class":86,"line":1495},[84,74945,299],{"class":90},[84,74947,4653],{"class":94},[84,74949,102],{"class":90},[84,74951,74952],{"class":86,"line":1500},[84,74953,24444],{"class":90},[84,74955,74956,74958,74960,74962,74964,74966],{"class":86,"line":1516},[84,74957,1642],{"class":90},[84,74959,24451],{"class":94},[84,74961,24454],{"class":98},[84,74963,184],{"class":90},[84,74965,24459],{"class":118},[84,74967,102],{"class":90},[84,74969,74970,74972,74974,74976,74978,74980,74982,74984,74986,74988,74990,74992,74994,74996],{"class":86,"line":1533},[84,74971,1691],{"class":90},[84,74973,24468],{"class":94},[84,74975,13525],{"class":98},[84,74977,184],{"class":90},[84,74979,24475],{"class":118},[84,74981,5092],{"class":98},[84,74983,184],{"class":90},[84,74985,24482],{"class":118},[84,74987,24485],{"class":98},[84,74989,184],{"class":90},[84,74991,24482],{"class":118},[84,74993,24492],{"class":90},[84,74995,24468],{"class":94},[84,74997,102],{"class":90},[84,74999,75000,75002,75004],{"class":86,"line":1538},[84,75001,1734],{"class":90},[84,75003,24451],{"class":94},[84,75005,102],{"class":90},[84,75007,75008,75010,75012],{"class":86,"line":1545},[84,75009,324],{"class":90},[84,75011,4653],{"class":94},[84,75013,102],{"class":90},[84,75015,75016],{"class":86,"line":1554},[84,75017,126],{"emptyLinePlaceholder":125},[84,75019,75020,75022],{"class":86,"line":1563},[84,75021,299],{"class":90},[84,75023,24523],{"class":94},[84,75025,75026,75028,75030],{"class":86,"line":1570},[84,75027,23419],{"class":98},[84,75029,184],{"class":90},[84,75031,7283],{"class":118},[84,75033,75034,75036,75038],{"class":86,"line":1588},[84,75035,23429],{"class":98},[84,75037,184],{"class":90},[84,75039,7293],{"class":118},[84,75041,75042,75044,75046],{"class":86,"line":1593},[84,75043,23440],{"class":98},[84,75045,184],{"class":90},[84,75047,24548],{"class":118},[84,75049,75050,75052,75054],{"class":86,"line":1598},[84,75051,23450],{"class":98},[84,75053,184],{"class":90},[84,75055,24557],{"class":118},[84,75057,75058],{"class":86,"line":1607},[84,75059,23460],{"class":90},[84,75061,75062,75064,75066,75068,75070],{"class":86,"line":1612},[84,75063,1642],{"class":90},[84,75065,1074],{"class":94},[84,75067,24570],{"class":90},[84,75069,1074],{"class":94},[84,75071,102],{"class":90},[84,75073,75074,75076,75078,75080,75082],{"class":86,"line":1621},[84,75075,1642],{"class":90},[84,75077,15],{"class":94},[84,75079,24583],{"class":90},[84,75081,15],{"class":94},[84,75083,102],{"class":90},[84,75085,75086,75088,75090,75092,75094],{"class":86,"line":1639},[84,75087,1642],{"class":90},[84,75089,15],{"class":94},[84,75091,24596],{"class":90},[84,75093,15],{"class":94},[84,75095,102],{"class":90},[84,75097,75098,75100,75102],{"class":86,"line":1661},[84,75099,324],{"class":90},[84,75101,4898],{"class":94},[84,75103,102],{"class":90},[84,75105,75106],{"class":86,"line":1666},[84,75107,126],{"emptyLinePlaceholder":125},[84,75109,75110,75112,75114],{"class":86,"line":1688},[84,75111,299],{"class":90},[84,75113,22190],{"class":94},[84,75115,102],{"class":90},[84,75117,75118,75120,75122,75124,75126],{"class":86,"line":1703},[84,75119,1642],{"class":90},[84,75121,24627],{"class":94},[84,75123,24630],{"class":90},[84,75125,24627],{"class":94},[84,75127,102],{"class":90},[84,75129,75130,75132,75134,75136,75138,75140],{"class":86,"line":1717},[84,75131,1642],{"class":90},[84,75133,22],{"class":94},[84,75135,23911],{"class":98},[84,75137,24645],{"class":90},[84,75139,22],{"class":94},[84,75141,102],{"class":90},[84,75143,75144,75146,75148],{"class":86,"line":1731},[84,75145,324],{"class":90},[84,75147,22190],{"class":94},[84,75149,102],{"class":90},[84,75151,75152,75154,75156],{"class":86,"line":1741},[84,75153,274],{"class":90},[84,75155,291],{"class":94},[84,75157,102],{"class":90},[34,75159,2406],{"id":2405},[15,75161,75162,754,75164,2488,75166,25198],{},[22,75163,22609],{},[22,75165,22612],{},[22,75167,22615],{},[737,75169,75170,75174,75178],{},[740,75171,75172,25205],{},[22,75173,22609],{},[740,75175,75176,25210],{},[22,75177,22612],{},[740,75179,75180,25215],{},[22,75181,22615],{},[15,75183,25218],{},[835,75185,25221],{},{"title":80,"searchDepth":105,"depth":105,"links":75187},[75188,75189,75194,75195,75196,75197,75203,75209],{"id":21333,"depth":105,"text":21334},{"id":946,"depth":105,"text":947,"children":75190},[75191,75192,75193],{"id":22609,"depth":122,"text":22609},{"id":22612,"depth":122,"text":22612},{"id":22615,"depth":122,"text":22615},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":6157,"depth":105,"text":6158},{"id":783,"depth":105,"text":784,"children":75198},[75199,75200,75201,75202],{"id":22822,"depth":122,"text":25236},{"id":22844,"depth":122,"text":25238},{"id":22858,"depth":122,"text":25240},{"id":22877,"depth":122,"text":22878},{"id":2735,"depth":105,"text":2736,"children":75204},[75205,75206,75207,75208],{"id":22891,"depth":122,"text":25245},{"id":23179,"depth":122,"text":25247},{"id":23825,"depth":122,"text":25249},{"id":24046,"depth":122,"text":24047},{"id":2405,"depth":105,"text":2406},{"updatedAt":25257,"coverCaption":18477,"author":868,"keywords":75211},[870,22609,22612,22615,25259],[75213],{"headline":25263,"author":75214,"datePublished":25257,"@type":880},{"name":868,"@type":879},{"title":22601,"description":25255},[75217,75218,75219,75220,75221],{"tag":21297,"color":21298},{"tag":18492,"color":18493},{"tag":3942,"color":3943},{"tag":3945,"color":3946},{"tag":2462,"color":2463},{"id":25275,"title":25276,"body":75223,"cover":26529,"coverAlt":26530,"date":26531,"description":26532,"draft":852,"extension":853,"lab":882,"locale":882,"meta":76305,"navigation":125,"path":26538,"schemaOrg":76307,"seo":76310,"series":21291,"seriesDescription":21292,"seriesOrder":190,"seriesTitle":21293,"slug":882,"stem":26543,"tags":76311,"__hash__":26549},{"type":8,"value":75224,"toc":76277},[75225,75231,75237,75251,75255,75257,75263,75273,75277,75279,75283,75287,75313,75315,75331,75337,75341,75345,75371,75373,75391,75393,75397,75411,75415,75429,75431,75435,75439,75443,75455,75457,75461,75463,75489,75499,75503,75505,75519,75527,75531,75537,75539,75541,75543,75547,75579,75583,75615,75617,75677,75679,75963,76241,76243,76265,76275],[11,75226,21314,75227,13234,75229],{"id":25281},[22,75228,25284],{},[22,75230,25287],{},[15,75232,25290,75233,2488,75235,25295],{},[22,75234,25284],{},[22,75236,25287],{},[737,75238,75239,75245],{},[740,75240,75241,25302,75243,764],{},[22,75242,25284],{},[958,75244,25305],{},[740,75246,75247,25302,75249,764],{},[22,75248,25287],{},[958,75250,25312],{},[823,75252,75253],{},[15,75254,25317],{},[34,75256,21334],{"id":21333},[15,75258,25322,75259,2488,75261,25327],{},[22,75260,25284],{},[22,75262,25287],{},[737,75264,75265,75267,75269,75271],{},[740,75266,25332],{},[740,75268,25335],{},[740,75270,25338],{},[740,75272,25341],{},[823,75274,75275],{},[15,75276,25346],{},[34,75278,25350],{"id":25349},[1074,75280,75281],{"id":25284},[22,75282,25284],{},[15,75284,25357,75285,25361],{},[22,75286,25360],{},[74,75288,75289],{"className":76,"code":25364,"filename":10092,"language":79,"meta":80,"style":80},[22,75290,75291],{"__ignoreMap":80},[84,75292,75293,75295,75297,75299,75301,75303,75305,75307,75309,75311],{"class":86,"line":87},[84,75294,91],{"class":90},[84,75296,15],{"class":94},[84,75298,25375],{"class":98},[84,75300,184],{"class":90},[84,75302,1678],{"class":118},[84,75304,25382],{"class":90},[84,75306,1678],{"class":118},[84,75308,25387],{"class":90},[84,75310,15],{"class":94},[84,75312,102],{"class":90},[15,75314,25394],{},[74,75316,75317],{"className":76,"code":25397,"filename":10092,"language":79,"meta":80,"style":80},[22,75318,75319],{"__ignoreMap":80},[84,75320,75321,75323,75325,75327,75329],{"class":86,"line":87},[84,75322,91],{"class":90},[84,75324,15],{"class":94},[84,75326,23893],{"class":90},[84,75328,15],{"class":94},[84,75330,102],{"class":90},[823,75332,75333],{},[15,75334,25416,75335,25420],{},[22,75336,25419],{},[1074,75338,75339],{"id":25287},[22,75340,25287],{},[15,75342,25427,75343,25431],{},[22,75344,25430],{},[74,75346,75347],{"className":76,"code":25434,"filename":10092,"language":79,"meta":80,"style":80},[22,75348,75349],{"__ignoreMap":80},[84,75350,75351,75353,75355,75357,75359,75361,75363,75365,75367,75369],{"class":86,"line":87},[84,75352,91],{"class":90},[84,75354,4978],{"class":94},[84,75356,25445],{"class":98},[84,75358,184],{"class":90},[84,75360,1678],{"class":118},[84,75362,25452],{"class":90},[84,75364,1678],{"class":118},[84,75366,25387],{"class":90},[84,75368,4978],{"class":94},[84,75370,102],{"class":90},[15,75372,25463],{},[737,75374,75375,75381,75387,75389],{},[740,75376,75377,11716,75379,25473],{},[22,75378,25287],{},[958,75380,25472],{},[740,75382,25476,75383,754,75385,2599],{},[22,75384,8299],{},[22,75386,25481],{},[740,75388,25484],{},[740,75390,25487],{},[34,75392,25491],{"id":25490},[1074,75394,21486,75395,8430],{"id":25494},[22,75396,25284],{},[737,75398,75399,75401,75407,75409],{},[740,75400,25501],{},[740,75402,25504,75403,50,75405,25509],{},[22,75404,91],{},[22,75406,10674],{},[740,75408,25512],{},[740,75410,25515],{},[1074,75412,21486,75413,8430],{"id":25518},[22,75414,25287],{},[737,75416,75417,75419,75421,75427],{},[740,75418,25525],{},[740,75420,25528],{},[740,75422,25531,75423,754,75425,25538],{},[22,75424,25534],{},[22,75426,25537],{},[740,75428,25541],{},[34,75430,25545],{"id":25544},[1074,75432,8425,75433,8430],{"id":25548},[22,75434,25284],{},[737,75436,75437],{},[740,75438,25555],{},[1074,75440,8425,75441,8430],{"id":25558},[22,75442,25287],{},[737,75444,75445,75447,75449,75451],{},[740,75446,25565],{},[740,75448,25568],{},[740,75450,25571],{},[740,75452,25574,75453,25578],{},[22,75454,25577],{},[34,75456,784],{"id":783},[1074,75458,21530,75459,25586],{"id":25583},[22,75460,25287],{},[15,75462,25589],{},[74,75464,75465],{"className":76,"code":25592,"filename":10092,"language":79,"meta":80,"style":80},[22,75466,75467],{"__ignoreMap":80},[84,75468,75469,75471,75473,75475,75477,75479,75481,75483,75485,75487],{"class":86,"line":87},[84,75470,91],{"class":90},[84,75472,4978],{"class":94},[84,75474,25445],{"class":98},[84,75476,184],{"class":90},[84,75478,1678],{"class":118},[84,75480,25609],{"class":90},[84,75482,1678],{"class":118},[84,75484,25387],{"class":90},[84,75486,4978],{"class":94},[84,75488,102],{"class":90},[15,75490,25620,75491,25623,75493,25627,75495,754,75497,25634],{},[22,75492,25609],{},[22,75494,25626],{},[22,75496,25630],{},[22,75498,25633],{},[1074,75500,25638,75501,25641],{"id":25637},[22,75502,25287],{},[15,75504,25644],{},[74,75506,75507],{"className":394,"code":25647,"filename":20153,"language":397,"meta":80,"style":80},[22,75508,75509],{"__ignoreMap":80},[84,75510,75511,75513,75515,75517],{"class":86,"line":87},[84,75512,132],{"class":108},[84,75514,25656],{"class":135},[84,75516,139],{"class":108},[84,75518,25661],{"class":118},[823,75520,75521],{},[15,75522,25666,75523,11716,75525,25672],{},[22,75524,25287],{},[958,75526,25671],{},[1074,75528,25676,75529,25679],{"id":25675},[22,75530,25287],{},[15,75532,25682,75533,25685,75535,25688],{},[22,75534,25419],{},[22,75536,25284],{},[1074,75538,25692],{"id":25691},[15,75540,25695],{},[34,75542,2736],{"id":2735},[1074,75544,25701,75545,909],{"id":25700},[22,75546,25284],{},[74,75548,75549],{"className":76,"code":25706,"filename":10092,"language":79,"meta":80,"style":80},[22,75550,75551],{"__ignoreMap":80},[84,75552,75553,75555,75557,75559,75561,75563,75565,75567,75569,75571,75573,75575,75577],{"class":86,"line":87},[84,75554,91],{"class":90},[84,75556,15],{"class":94},[84,75558,1629],{"class":98},[84,75560,184],{"class":90},[84,75562,25721],{"class":118},[84,75564,25375],{"class":98},[84,75566,184],{"class":90},[84,75568,1678],{"class":118},[84,75570,25730],{"class":90},[84,75572,1678],{"class":118},[84,75574,25387],{"class":90},[84,75576,15],{"class":94},[84,75578,102],{"class":90},[1074,75580,25742,75581,25745],{"id":25741},[22,75582,25287],{},[74,75584,75585],{"className":76,"code":25748,"filename":10092,"language":79,"meta":80,"style":80},[22,75586,75587],{"__ignoreMap":80},[84,75588,75589,75591,75593,75595,75597,75599,75601,75603,75605,75607,75609,75611,75613],{"class":86,"line":87},[84,75590,91],{"class":90},[84,75592,1626],{"class":94},[84,75594,1629],{"class":98},[84,75596,184],{"class":90},[84,75598,25763],{"class":118},[84,75600,25445],{"class":98},[84,75602,184],{"class":90},[84,75604,1678],{"class":118},[84,75606,25772],{"class":90},[84,75608,1678],{"class":118},[84,75610,25387],{"class":90},[84,75612,1626],{"class":94},[84,75614,102],{"class":90},[1074,75616,25784],{"id":25783},[74,75618,75619],{"className":76,"code":25787,"filename":10092,"language":79,"meta":80,"style":80},[22,75620,75621,75653],{"__ignoreMap":80},[84,75622,75623,75625,75627,75629,75631,75633,75635,75637,75639,75641,75643,75645,75647,75649,75651],{"class":86,"line":87},[84,75624,91],{"class":90},[84,75626,4978],{"class":94},[84,75628,344],{"class":108},[84,75630,184],{"class":90},[84,75632,1678],{"class":118},[84,75634,25804],{"class":90},[84,75636,1678],{"class":118},[84,75638,25445],{"class":98},[84,75640,184],{"class":90},[84,75642,1678],{"class":118},[84,75644,25772],{"class":90},[84,75646,1678],{"class":118},[84,75648,25387],{"class":90},[84,75650,4978],{"class":94},[84,75652,102],{"class":90},[84,75654,75655,75657,75659,75661,75663,75665,75667,75669,75671,75673,75675],{"class":86,"line":105},[84,75656,91],{"class":90},[84,75658,15],{"class":94},[84,75660,1753],{"class":108},[84,75662,25375],{"class":98},[84,75664,184],{"class":90},[84,75666,1678],{"class":118},[84,75668,25839],{"class":90},[84,75670,1678],{"class":118},[84,75672,25387],{"class":90},[84,75674,15],{"class":94},[84,75676,102],{"class":90},[34,75678,2766],{"id":2765},[74,75680,75681],{"className":76,"code":25852,"filename":873,"language":79,"meta":80,"style":80},[22,75682,75683,75699,75711,75715,75731,75747,75763,75767,75783,75787,75827,75831,75835,75853,75861,75865,75873,75881,75893,75897,75927,75947,75955],{"__ignoreMap":80},[84,75684,75685,75687,75689,75691,75693,75695,75697],{"class":86,"line":87},[84,75686,91],{"class":90},[84,75688,95],{"class":94},[84,75690,99],{"class":98},[84,75692,1161],{"class":98},[84,75694,184],{"class":90},[84,75696,1166],{"class":118},[84,75698,102],{"class":90},[84,75700,75701,75703,75705,75707,75709],{"class":86,"line":105},[84,75702,109],{"class":108},[84,75704,24087],{"class":90},[84,75706,115],{"class":108},[84,75708,18866],{"class":118},[84,75710,18869],{"class":90},[84,75712,75713],{"class":86,"line":122},[84,75714,126],{"emptyLinePlaceholder":125},[84,75716,75717,75719,75721,75723,75725,75727,75729],{"class":86,"line":129},[84,75718,132],{"class":108},[84,75720,25893],{"class":135},[84,75722,139],{"class":108},[84,75724,142],{"class":98},[84,75726,145],{"class":90},[84,75728,2938],{"class":135},[84,75730,18994],{"class":90},[84,75732,75733,75735,75737,75739,75741,75743,75745],{"class":86,"line":154},[84,75734,132],{"class":108},[84,75736,25910],{"class":135},[84,75738,139],{"class":108},[84,75740,142],{"class":98},[84,75742,145],{"class":90},[84,75744,25919],{"class":118},[84,75746,18994],{"class":90},[84,75748,75749,75751,75753,75755,75757,75759,75761],{"class":86,"line":159},[84,75750,132],{"class":108},[84,75752,25928],{"class":135},[84,75754,139],{"class":108},[84,75756,142],{"class":98},[84,75758,145],{"class":90},[84,75760,25937],{"class":118},[84,75762,18994],{"class":90},[84,75764,75765],{"class":86,"line":178},[84,75766,126],{"emptyLinePlaceholder":125},[84,75768,75769,75771,75773,75775,75777,75779,75781],{"class":86,"line":190},[84,75770,3246],{"class":108},[84,75772,25950],{"class":98},[84,75774,145],{"class":90},[84,75776,18759],{"class":429},[84,75778,1203],{"class":108},[84,75780,22085],{"class":135},[84,75782,438],{"class":90},[84,75784,75785],{"class":86,"line":196},[84,75786,25965],{"class":13481},[84,75788,75789,75791,75793,75795,75797,75799,75801,75803,75805,75807,75809,75811,75813,75815,75817,75819,75821,75823,75825],{"class":86,"line":201},[84,75790,557],{"class":108},[84,75792,25972],{"class":90},[84,75794,25975],{"class":98},[84,75796,145],{"class":90},[84,75798,16677],{"class":118},[84,75800,25983],{"class":25982},[84,75802,764],{"class":135},[84,75804,25988],{"class":108},[84,75806,10674],{"class":25982},[84,75808,764],{"class":135},[84,75810,25988],{"class":108},[84,75812,91],{"class":25982},[84,75814,26000],{"class":25999},[84,75816,26003],{"class":25982},[84,75818,16677],{"class":118},[84,75820,26008],{"class":108},[84,75822,754],{"class":90},[84,75824,26013],{"class":118},[84,75826,18994],{"class":90},[84,75828,75829],{"class":86,"line":217},[84,75830,193],{"class":90},[84,75832,75833],{"class":86,"line":227},[84,75834,126],{"emptyLinePlaceholder":125},[84,75836,75837,75839,75841,75843,75845,75847,75849,75851],{"class":86,"line":232},[84,75838,132],{"class":108},[84,75840,26030],{"class":135},[84,75842,139],{"class":108},[84,75844,2989],{"class":98},[84,75846,2992],{"class":90},[84,75848,172],{"class":108},[84,75850,25950],{"class":98},[84,75852,26043],{"class":90},[84,75854,75855,75857,75859],{"class":86,"line":237},[84,75856,274],{"class":90},[84,75858,95],{"class":94},[84,75860,102],{"class":90},[84,75862,75863],{"class":86,"line":253},[84,75864,126],{"emptyLinePlaceholder":125},[84,75866,75867,75869,75871],{"class":86,"line":266},[84,75868,91],{"class":90},[84,75870,291],{"class":94},[84,75872,102],{"class":90},[84,75874,75875,75877,75879],{"class":86,"line":271},[84,75876,299],{"class":90},[84,75878,4898],{"class":94},[84,75880,102],{"class":90},[84,75882,75883,75885,75887,75889,75891],{"class":86,"line":281},[84,75884,1642],{"class":90},[84,75886,34],{"class":94},[84,75888,26080],{"class":90},[84,75890,34],{"class":94},[84,75892,102],{"class":90},[84,75894,75895],{"class":86,"line":286},[84,75896,126],{"emptyLinePlaceholder":125},[84,75898,75899,75901,75903,75905,75907,75909,75911,75913,75915,75917,75919,75921,75923,75925],{"class":86,"line":296},[84,75900,1642],{"class":90},[84,75902,4978],{"class":94},[84,75904,344],{"class":98},[84,75906,184],{"class":90},[84,75908,26101],{"class":118},[84,75910,1629],{"class":98},[84,75912,184],{"class":90},[84,75914,25763],{"class":118},[84,75916,25445],{"class":98},[84,75918,184],{"class":90},[84,75920,26114],{"class":118},[84,75922,25387],{"class":90},[84,75924,4978],{"class":94},[84,75926,102],{"class":90},[84,75928,75929,75931,75933,75935,75937,75939,75941,75943,75945],{"class":86,"line":315},[84,75930,1642],{"class":90},[84,75932,15],{"class":94},[84,75934,1753],{"class":98},[84,75936,25375],{"class":98},[84,75938,184],{"class":90},[84,75940,26135],{"class":118},[84,75942,25387],{"class":90},[84,75944,15],{"class":94},[84,75946,102],{"class":90},[84,75948,75949,75951,75953],{"class":86,"line":321},[84,75950,324],{"class":90},[84,75952,4898],{"class":94},[84,75954,102],{"class":90},[84,75956,75957,75959,75961],{"class":86,"line":331},[84,75958,274],{"class":90},[84,75960,291],{"class":94},[84,75962,102],{"class":90},[74,75964,75965],{"className":76,"code":26160,"filename":1782,"language":79,"meta":80,"style":80},[22,75966,75967,75975,75983,75989,75995,76003,76011,76019,76023,76027,76031,76037,76053,76057,76061,76065,76075,76079,76119,76123,76127,76131,76139,76143,76151,76159,76171,76175,76205,76225,76233],{"__ignoreMap":80},[84,75968,75969,75971,75973],{"class":86,"line":87},[84,75970,91],{"class":90},[84,75972,95],{"class":94},[84,75974,102],{"class":90},[84,75976,75977,75979,75981],{"class":86,"line":105},[84,75978,418],{"class":108},[84,75980,1870],{"class":108},[84,75982,175],{"class":90},[84,75984,75985,75987],{"class":86,"line":122},[84,75986,1896],{"class":98},[84,75988,1307],{"class":90},[84,75990,75991,75993],{"class":86,"line":129},[84,75992,1903],{"class":108},[84,75994,175],{"class":90},[84,75996,75997,75999,76001],{"class":86,"line":154},[84,75998,26195],{"class":90},[84,76000,2938],{"class":135},[84,76002,1887],{"class":90},[84,76004,76005,76007,76009],{"class":86,"line":159},[84,76006,26204],{"class":90},[84,76008,25919],{"class":118},[84,76010,1887],{"class":90},[84,76012,76013,76015,76017],{"class":86,"line":178},[84,76014,26213],{"class":90},[84,76016,25937],{"class":118},[84,76018,1887],{"class":90},[84,76020,76021],{"class":86,"line":190},[84,76022,19195],{"class":90},[84,76024,76025],{"class":86,"line":196},[84,76026,1941],{"class":90},[84,76028,76029],{"class":86,"line":201},[84,76030,3527],{"class":90},[84,76032,76033,76035],{"class":86,"line":217},[84,76034,26234],{"class":98},[84,76036,1307],{"class":90},[84,76038,76039,76041,76043,76045,76047,76049,76051],{"class":86,"line":227},[84,76040,3539],{"class":108},[84,76042,2078],{"class":135},[84,76044,764],{"class":90},[84,76046,26247],{"class":98},[84,76048,145],{"class":90},[84,76050,2151],{"class":135},[84,76052,26254],{"class":90},[84,76054,76055],{"class":86,"line":232},[84,76056,7783],{"class":90},[84,76058,76059],{"class":86,"line":237},[84,76060,1941],{"class":90},[84,76062,76063],{"class":86,"line":253},[84,76064,1950],{"class":90},[84,76066,76067,76069,76071,76073],{"class":86,"line":266},[84,76068,26271],{"class":98},[84,76070,145],{"class":90},[84,76072,18759],{"class":429},[84,76074,438],{"class":90},[84,76076,76077],{"class":86,"line":271},[84,76078,26282],{"class":13481},[84,76080,76081,76083,76085,76087,76089,76091,76093,76095,76097,76099,76101,76103,76105,76107,76109,76111,76113,76115,76117],{"class":86,"line":281},[84,76082,3539],{"class":108},[84,76084,25972],{"class":90},[84,76086,25975],{"class":98},[84,76088,145],{"class":90},[84,76090,16677],{"class":118},[84,76092,25983],{"class":25982},[84,76094,764],{"class":135},[84,76096,25988],{"class":108},[84,76098,10674],{"class":25982},[84,76100,764],{"class":135},[84,76102,25988],{"class":108},[84,76104,91],{"class":25982},[84,76106,26000],{"class":25999},[84,76108,26003],{"class":25982},[84,76110,16677],{"class":118},[84,76112,26008],{"class":108},[84,76114,754],{"class":90},[84,76116,26013],{"class":118},[84,76118,18994],{"class":90},[84,76120,76121],{"class":86,"line":286},[84,76122,7783],{"class":90},[84,76124,76125],{"class":86,"line":296},[84,76126,1941],{"class":90},[84,76128,76129],{"class":86,"line":315},[84,76130,18973],{"class":90},[84,76132,76133,76135,76137],{"class":86,"line":321},[84,76134,274],{"class":90},[84,76136,95],{"class":94},[84,76138,102],{"class":90},[84,76140,76141],{"class":86,"line":331},[84,76142,126],{"emptyLinePlaceholder":125},[84,76144,76145,76147,76149],{"class":86,"line":336},[84,76146,91],{"class":90},[84,76148,291],{"class":94},[84,76150,102],{"class":90},[84,76152,76153,76155,76157],{"class":86,"line":354},[84,76154,299],{"class":90},[84,76156,4898],{"class":94},[84,76158,102],{"class":90},[84,76160,76161,76163,76165,76167,76169],{"class":86,"line":360},[84,76162,1642],{"class":90},[84,76164,34],{"class":94},[84,76166,26080],{"class":90},[84,76168,34],{"class":94},[84,76170,102],{"class":90},[84,76172,76173],{"class":86,"line":369},[84,76174,126],{"emptyLinePlaceholder":125},[84,76176,76177,76179,76181,76183,76185,76187,76189,76191,76193,76195,76197,76199,76201,76203],{"class":86,"line":1453},[84,76178,1642],{"class":90},[84,76180,4978],{"class":94},[84,76182,344],{"class":98},[84,76184,184],{"class":90},[84,76186,26101],{"class":118},[84,76188,1629],{"class":98},[84,76190,184],{"class":90},[84,76192,25763],{"class":118},[84,76194,25445],{"class":98},[84,76196,184],{"class":90},[84,76198,26114],{"class":118},[84,76200,25387],{"class":90},[84,76202,4978],{"class":94},[84,76204,102],{"class":90},[84,76206,76207,76209,76211,76213,76215,76217,76219,76221,76223],{"class":86,"line":1462},[84,76208,1642],{"class":90},[84,76210,15],{"class":94},[84,76212,1753],{"class":98},[84,76214,25375],{"class":98},[84,76216,184],{"class":90},[84,76218,26135],{"class":118},[84,76220,25387],{"class":90},[84,76222,15],{"class":94},[84,76224,102],{"class":90},[84,76226,76227,76229,76231],{"class":86,"line":1484},[84,76228,324],{"class":90},[84,76230,4898],{"class":94},[84,76232,102],{"class":90},[84,76234,76235,76237,76239],{"class":86,"line":1489},[84,76236,274],{"class":90},[84,76238,291],{"class":94},[84,76240,102],{"class":90},[34,76242,2406],{"id":2405},[737,76244,76245,76249,76255,76259,76263],{},[740,76246,76247,26453],{},[22,76248,25284],{},[740,76250,26456,76251,26459,76253,764],{},[22,76252,25419],{},[22,76254,25284],{},[740,76256,76257,26466],{},[22,76258,25287],{},[740,76260,76261,26471],{},[22,76262,25287],{},[740,76264,26474],{},[823,76266,76267],{},[15,76268,76269,26482,76271,26485,76273,26488],{},[958,76270,26481],{},[22,76272,25284],{},[22,76274,25287],{},[835,76276,26491],{},{"title":80,"searchDepth":105,"depth":105,"links":76278},[76279,76280,76284,76288,76292,76298,76303,76304],{"id":21333,"depth":105,"text":21334},{"id":25349,"depth":105,"text":25350,"children":76281},[76282,76283],{"id":25284,"depth":122,"text":25284},{"id":25287,"depth":122,"text":25287},{"id":25490,"depth":105,"text":25491,"children":76285},[76286,76287],{"id":25494,"depth":122,"text":26502},{"id":25518,"depth":122,"text":26504},{"id":25544,"depth":105,"text":25545,"children":76289},[76290,76291],{"id":25548,"depth":122,"text":26508},{"id":25558,"depth":122,"text":26510},{"id":783,"depth":105,"text":784,"children":76293},[76294,76295,76296,76297],{"id":25583,"depth":122,"text":26514},{"id":25637,"depth":122,"text":26516},{"id":25675,"depth":122,"text":26518},{"id":25691,"depth":122,"text":25692},{"id":2735,"depth":105,"text":2736,"children":76299},[76300,76301,76302],{"id":25700,"depth":122,"text":26523},{"id":25741,"depth":122,"text":26525},{"id":25783,"depth":122,"text":25784},{"id":2765,"depth":105,"text":2766},{"id":2405,"depth":105,"text":2406},{"updatedAt":26534,"coverCaption":26535,"keywords":76306},[870,25284,25287,26537,11392,873,1782],[76308],{"headline":25276,"author":76309,"datePublished":26534,"@type":880},{"name":868,"@type":879},{"title":25276,"description":26532},[76312,76313,76314,76315],{"tag":21297,"color":21298},{"tag":22594,"color":22595},{"tag":3942,"color":3943},{"tag":894,"color":895},{"id":26551,"title":26552,"body":76317,"cover":28780,"coverAlt":28781,"date":28782,"description":28783,"draft":852,"extension":853,"lab":882,"locale":864,"meta":78355,"navigation":125,"path":28790,"schemaOrg":78357,"seo":78360,"series":21291,"seriesDescription":21292,"seriesOrder":178,"seriesTitle":21293,"slug":882,"stem":28796,"tags":78361,"__hash__":28803},{"type":8,"value":76318,"toc":78336},[76319,76323,76327,76329,76331,76333,76341,76347,76349,76353,76407,76470,76472,76492,76494,76510,76518,76520,76524,76538,76540,76542,76550,76554,76556,76562,76566,76574,76606,76641,76643,76647,76694,76696,76698,76700,76702,76716,76720,76722,76724,76726,76750,76752,76754,76827,76829,76973,76975,77106,77110,77112,77180,77184,77186,77188,77498,77736,77738,77740,78058,78312,78314,78334],[11,76320,21314,76321],{"id":26557},[22,76322,26560],{},[15,76324,76325,26565],{},[22,76326,26560],{},[15,76328,26568],{},[34,76330,21334],{"id":21333},[15,76332,26573],{},[737,76334,76335,76337,76339],{},[740,76336,26578],{},[740,76338,26581],{},[740,76340,26584],{},[823,76342,76343],{},[15,76344,12736,76345,26591],{},[22,76346,26560],{},[34,76348,25350],{"id":25349},[15,76350,26596,76351,26600],{},[22,76352,26599],{},[74,76354,76356],{"className":76,"code":26603,"filename":26604,"highlights":76355,"language":79,"meta":80,"style":80},[122],[22,76357,76358,76366,76380,76391,76399],{"__ignoreMap":80},[84,76359,76360,76362,76364],{"class":86,"line":87},[84,76361,91],{"class":90},[84,76363,291],{"class":94},[84,76365,102],{"class":90},[84,76367,76368,76370,76372,76374,76376,76378],{"class":86,"line":105},[84,76369,299],{"class":90},[84,76371,4898],{"class":94},[84,76373,1629],{"class":98},[84,76375,184],{"class":90},[84,76377,26628],{"class":118},[84,76379,102],{"class":90},[84,76381,76383,76385,76387,76389],{"class":76382,"line":122},[86,10151],[84,76384,1642],{"class":90},[84,76386,26638],{"class":94},[84,76388,26642],{"class":26641},[84,76390,102],{"class":90},[84,76392,76393,76395,76397],{"class":86,"line":129},[84,76394,324],{"class":90},[84,76396,4898],{"class":94},[84,76398,102],{"class":90},[84,76400,76401,76403,76405],{"class":86,"line":154},[84,76402,274],{"class":90},[84,76404,291],{"class":94},[84,76406,102],{"class":90},[74,76408,76410],{"className":76,"code":26663,"filename":10092,"highlights":76409,"language":79,"meta":80,"style":80},[105,154],[22,76411,76412,76420,76429,76441,76453,76462],{"__ignoreMap":80},[84,76413,76414,76416,76418],{"class":86,"line":87},[84,76415,91],{"class":90},[84,76417,291],{"class":94},[84,76419,102],{"class":90},[84,76421,76423,76425,76427],{"class":76422,"line":105},[86,10151],[84,76424,299],{"class":90},[84,76426,26682],{"class":94},[84,76428,102],{"class":90},[84,76430,76431,76433,76435,76437,76439],{"class":86,"line":122},[84,76432,1642],{"class":90},[84,76434,34],{"class":94},[84,76436,26693],{"class":90},[84,76438,34],{"class":94},[84,76440,102],{"class":90},[84,76442,76443,76445,76447,76449,76451],{"class":86,"line":129},[84,76444,1642],{"class":90},[84,76446,15],{"class":94},[84,76448,26706],{"class":90},[84,76450,15],{"class":94},[84,76452,102],{"class":90},[84,76454,76456,76458,76460],{"class":76455,"line":154},[86,10151],[84,76457,324],{"class":90},[84,76459,26682],{"class":94},[84,76461,102],{"class":90},[84,76463,76464,76466,76468],{"class":86,"line":159},[84,76465,274],{"class":90},[84,76467,291],{"class":94},[84,76469,102],{"class":90},[15,76471,26730],{},[737,76473,76474,76480,76486],{},[740,76475,76476,21408,76478],{},[958,76477,26737],{},[22,76479,26599],{},[740,76481,76482,21408,76484],{},[958,76483,26744],{},[22,76485,26747],{},[740,76487,76488,21408,76490],{},[958,76489,26752],{},[22,76491,26755],{},[15,76493,26758],{},[737,76495,76496,76500,76506],{},[740,76497,76498,26766],{},[22,76499,26765],{},[740,76501,76502,754,76504,26775],{},[22,76503,26771],{},[22,76505,26774],{},[740,76507,76508,26781],{},[22,76509,26780],{},[823,76511,76512],{},[15,76513,76514,26789,76516,764],{},[22,76515,26788],{},[22,76517,26792],{},[34,76519,1013],{"id":1012},[15,76521,21486,76522,8430],{},[22,76523,26560],{},[737,76525,76526,76528,76532],{},[740,76527,26803],{},[740,76529,26806,76530,2686],{},[22,76531,26809],{},[740,76533,26812,76534,754,76536,26819],{},[22,76535,26815],{},[22,76537,26818],{},[34,76539,1040],{"id":1039},[15,76541,1046],{},[737,76543,76544,76546,76548],{},[740,76545,26828],{},[740,76547,26831],{},[740,76549,26834],{},[823,76551,76552],{},[15,76553,26839],{},[34,76555,784],{"id":783},[1074,76557,21530,76558,26847,76560],{"id":26844},[22,76559,26560],{},[22,76561,26850],{},[15,76563,76564,26855],{},[22,76565,26560],{},[737,76567,76568,76570],{},[740,76569,26860],{},[740,76571,2651,76572,26865],{},[22,76573,26850],{},[74,76575,76577],{"className":76,"code":26868,"filename":26869,"highlights":76576,"language":79,"meta":80,"style":80},[87],[22,76578,76579,76594,76598],{"__ignoreMap":80},[84,76580,76582,76584,76586,76588,76590,76592],{"class":76581,"line":87},[86,10151],[84,76583,91],{"class":90},[84,76585,4978],{"class":94},[84,76587,26882],{"class":98},[84,76589,1203],{"class":90},[84,76591,4915],{"class":98},[84,76593,102],{"class":90},[84,76595,76596],{"class":86,"line":105},[84,76597,26893],{"class":90},[84,76599,76600,76602,76604],{"class":86,"line":122},[84,76601,274],{"class":90},[84,76603,4978],{"class":94},[84,76605,102],{"class":90},[74,76607,76609],{"className":76,"code":26904,"filename":26905,"highlights":76608,"language":79,"meta":80,"style":80},[105,129],[22,76610,76611,76619,76624,76628,76633],{"__ignoreMap":80},[84,76612,76613,76615,76617],{"class":86,"line":87},[84,76614,91],{"class":90},[84,76616,26682],{"class":94},[84,76618,102],{"class":90},[84,76620,76622],{"class":76621,"line":105},[86,10151],[84,76623,26922],{"class":90},[84,76625,76626],{"class":86,"line":122},[84,76627,26927],{"class":90},[84,76629,76631],{"class":76630,"line":129},[86,10151],[84,76632,26933],{"class":90},[84,76634,76635,76637,76639],{"class":86,"line":154},[84,76636,274],{"class":90},[84,76638,26682],{"class":94},[84,76640,102],{"class":90},[1074,76642,26945],{"id":26944},[15,76644,26948,76645,26952],{},[22,76646,26951],{},[74,76648,76650],{"className":76,"code":26955,"filename":26956,"highlights":76649,"language":79,"meta":80,"style":80},[87,105],[22,76651,76652,76673,76678,76682,76686],{"__ignoreMap":80},[84,76653,76655,76657,76659,76661,76663,76665,76667,76669,76671],{"class":76654,"line":87},[86,10151],[84,76656,91],{"class":90},[84,76658,26967],{"class":94},[84,76660,7012],{"class":90},[84,76662,26972],{"class":98},[84,76664,184],{"class":90},[84,76666,1678],{"class":118},[84,76668,26979],{"class":90},[84,76670,1678],{"class":118},[84,76672,102],{"class":90},[84,76674,76676],{"class":76675,"line":105},[86,10151],[84,76677,26989],{"class":90},[84,76679,76680],{"class":86,"line":122},[84,76681,26994],{"class":90},[84,76683,76684],{"class":86,"line":129},[84,76685,26933],{"class":90},[84,76687,76688,76690,76692],{"class":86,"line":154},[84,76689,274],{"class":90},[84,76691,26967],{"class":94},[84,76693,102],{"class":90},[15,76695,27009],{},[1074,76697,27013],{"id":27012},[15,76699,27016],{},[15,76701,26481],{},[737,76703,76704,76708,76712],{},[740,76705,76706,27026],{},[958,76707,27025],{},[740,76709,76710,27032],{},[958,76711,27031],{},[740,76713,76714,27038],{},[958,76715,27037],{},[823,76717,76718],{},[15,76719,27043],{},[1074,76721,27047],{"id":27046},[15,76723,27050],{},[15,76725,27053],{},[74,76727,76728],{"className":76,"code":27056,"filename":26604,"language":79,"meta":80,"style":80},[22,76729,76730,76738,76742],{"__ignoreMap":80},[84,76731,76732,76734,76736],{"class":86,"line":87},[84,76733,91],{"class":90},[84,76735,26638],{"class":94},[84,76737,102],{"class":90},[84,76739,76740],{"class":86,"line":105},[84,76741,27071],{"class":90},[84,76743,76744,76746,76748],{"class":86,"line":122},[84,76745,274],{"class":90},[84,76747,26638],{"class":94},[84,76749,102],{"class":90},[34,76751,2736],{"id":2735},[1074,76753,27085],{"id":27084},[74,76755,76757],{"className":76,"code":27088,"filename":26604,"highlights":76756,"language":79,"meta":80,"style":80},[122,154],[22,76758,76759,76767,76781,76790,76802,76811,76819],{"__ignoreMap":80},[84,76760,76761,76763,76765],{"class":86,"line":87},[84,76762,91],{"class":90},[84,76764,291],{"class":94},[84,76766,102],{"class":90},[84,76768,76769,76771,76773,76775,76777,76779],{"class":86,"line":105},[84,76770,299],{"class":90},[84,76772,1626],{"class":94},[84,76774,1629],{"class":98},[84,76776,184],{"class":90},[84,76778,26628],{"class":118},[84,76780,102],{"class":90},[84,76782,76784,76786,76788],{"class":76783,"line":122},[86,10151],[84,76785,1642],{"class":90},[84,76787,26638],{"class":94},[84,76789,102],{"class":90},[84,76791,76792,76794,76796,76798,76800],{"class":86,"line":129},[84,76793,1691],{"class":90},[84,76795,15],{"class":94},[84,76797,27131],{"class":90},[84,76799,15],{"class":94},[84,76801,102],{"class":90},[84,76803,76805,76807,76809],{"class":76804,"line":154},[86,10151],[84,76806,1734],{"class":90},[84,76808,26638],{"class":94},[84,76810,102],{"class":90},[84,76812,76813,76815,76817],{"class":86,"line":159},[84,76814,324],{"class":90},[84,76816,1626],{"class":94},[84,76818,102],{"class":90},[84,76820,76821,76823,76825],{"class":86,"line":178},[84,76822,274],{"class":90},[84,76824,291],{"class":94},[84,76826,102],{"class":90},[1074,76828,27164],{"id":27163},[74,76830,76832],{"className":76,"code":27167,"filename":27168,"highlights":76831,"language":79,"meta":80,"style":80},[129,190,227],[22,76833,76834,76842,76856,76864,76881,76889,76893,76901,76912,76920,76924,76932,76949,76957,76965],{"__ignoreMap":80},[84,76835,76836,76838,76840],{"class":86,"line":87},[84,76837,91],{"class":90},[84,76839,291],{"class":94},[84,76841,102],{"class":90},[84,76843,76844,76846,76848,76850,76852,76854],{"class":86,"line":105},[84,76845,299],{"class":90},[84,76847,4898],{"class":94},[84,76849,1629],{"class":98},[84,76851,184],{"class":90},[84,76853,27192],{"class":118},[84,76855,102],{"class":90},[84,76857,76858,76860,76862],{"class":86,"line":122},[84,76859,1642],{"class":90},[84,76861,4915],{"class":94},[84,76863,102],{"class":90},[84,76865,76867,76869,76871,76873,76875,76877,76879],{"class":76866,"line":129},[86,10151],[84,76868,1691],{"class":90},[84,76870,26638],{"class":94},[84,76872,27212],{"class":98},[84,76874,184],{"class":90},[84,76876,27217],{"class":118},[84,76878,26642],{"class":26641},[84,76880,102],{"class":90},[84,76882,76883,76885,76887],{"class":86,"line":154},[84,76884,1734],{"class":90},[84,76886,4915],{"class":94},[84,76888,102],{"class":90},[84,76890,76891],{"class":86,"line":159},[84,76892,126],{"emptyLinePlaceholder":125},[84,76894,76895,76897,76899],{"class":86,"line":178},[84,76896,1642],{"class":90},[84,76898,27240],{"class":94},[84,76900,102],{"class":90},[84,76902,76904,76906,76908,76910],{"class":76903,"line":190},[86,10151],[84,76905,1691],{"class":90},[84,76907,26638],{"class":94},[84,76909,26642],{"class":26641},[84,76911,102],{"class":90},[84,76913,76914,76916,76918],{"class":86,"line":196},[84,76915,1734],{"class":90},[84,76917,27240],{"class":94},[84,76919,102],{"class":90},[84,76921,76922],{"class":86,"line":201},[84,76923,126],{"emptyLinePlaceholder":125},[84,76925,76926,76928,76930],{"class":86,"line":217},[84,76927,1642],{"class":90},[84,76929,27272],{"class":94},[84,76931,102],{"class":90},[84,76933,76935,76937,76939,76941,76943,76945,76947],{"class":76934,"line":227},[86,10151],[84,76936,1691],{"class":90},[84,76938,26638],{"class":94},[84,76940,27212],{"class":98},[84,76942,184],{"class":90},[84,76944,27288],{"class":118},[84,76946,26642],{"class":26641},[84,76948,102],{"class":90},[84,76950,76951,76953,76955],{"class":86,"line":232},[84,76952,1734],{"class":90},[84,76954,27272],{"class":94},[84,76956,102],{"class":90},[84,76958,76959,76961,76963],{"class":86,"line":237},[84,76960,324],{"class":90},[84,76962,4898],{"class":94},[84,76964,102],{"class":90},[84,76966,76967,76969,76971],{"class":86,"line":253},[84,76968,274],{"class":90},[84,76970,291],{"class":94},[84,76972,102],{"class":90},[1074,76974,27320],{"id":27319},[74,76976,76978],{"className":76,"code":27323,"filename":26956,"highlights":76977,"language":79,"meta":80,"style":80},[159,190],[22,76979,76980,76988,76996,77004,77024,77032,77053,77057,77066,77074,77082,77090,77098],{"__ignoreMap":80},[84,76981,76982,76984,76986],{"class":86,"line":87},[84,76983,91],{"class":90},[84,76985,291],{"class":94},[84,76987,102],{"class":90},[84,76989,76990,76992,76994],{"class":86,"line":105},[84,76991,299],{"class":90},[84,76993,6160],{"class":94},[84,76995,102],{"class":90},[84,76997,76998,77000,77002],{"class":86,"line":122},[84,76999,1642],{"class":90},[84,77001,6182],{"class":94},[84,77003,102],{"class":90},[84,77005,77006,77008,77010,77012,77014,77016,77018,77020,77022],{"class":86,"line":129},[84,77007,1691],{"class":90},[84,77009,6166],{"class":94},[84,77011,13525],{"class":98},[84,77013,184],{"class":90},[84,77015,27363],{"class":118},[84,77017,5092],{"class":98},[84,77019,184],{"class":90},[84,77021,27370],{"class":118},[84,77023,102],{"class":90},[84,77025,77026,77028,77030],{"class":86,"line":154},[84,77027,27377],{"class":90},[84,77029,6187],{"class":94},[84,77031,102],{"class":90},[84,77033,77035,77037,77039,77041,77043,77045,77047,77049,77051],{"class":77034,"line":159},[86,10151],[84,77036,27387],{"class":90},[84,77038,26638],{"class":94},[84,77040,27212],{"class":98},[84,77042,184],{"class":90},[84,77044,27396],{"class":118},[84,77046,27399],{"class":98},[84,77048,184],{"class":90},[84,77050,27396],{"class":118},[84,77052,102],{"class":90},[84,77054,77055],{"class":86,"line":178},[84,77056,27410],{"class":90},[84,77058,77060,77062,77064],{"class":77059,"line":190},[86,10151],[84,77061,27416],{"class":90},[84,77063,26638],{"class":94},[84,77065,102],{"class":90},[84,77067,77068,77070,77072],{"class":86,"line":196},[84,77069,27425],{"class":90},[84,77071,6187],{"class":94},[84,77073,102],{"class":90},[84,77075,77076,77078,77080],{"class":86,"line":201},[84,77077,4952],{"class":90},[84,77079,6166],{"class":94},[84,77081,102],{"class":90},[84,77083,77084,77086,77088],{"class":86,"line":217},[84,77085,1734],{"class":90},[84,77087,6182],{"class":94},[84,77089,102],{"class":90},[84,77091,77092,77094,77096],{"class":86,"line":227},[84,77093,324],{"class":90},[84,77095,6160],{"class":94},[84,77097,102],{"class":90},[84,77099,77100,77102,77104],{"class":86,"line":232},[84,77101,274],{"class":90},[84,77103,291],{"class":94},[84,77105,102],{"class":90},[1074,77107,27465,77108,27468],{"id":27464},[22,77109,26560],{},[15,77111,27471],{},[74,77113,77115],{"className":76,"code":27474,"filename":27475,"highlights":77114,"language":79,"meta":80,"style":80},[122],[22,77116,77117,77125,77133,77144,77156,77164,77172],{"__ignoreMap":80},[84,77118,77119,77121,77123],{"class":86,"line":87},[84,77120,91],{"class":90},[84,77122,291],{"class":94},[84,77124,102],{"class":90},[84,77126,77127,77129,77131],{"class":86,"line":105},[84,77128,299],{"class":90},[84,77130,27493],{"class":94},[84,77132,102],{"class":90},[84,77134,77136,77138,77140,77142],{"class":77135,"line":122},[86,10151],[84,77137,1642],{"class":90},[84,77139,291],{"class":94},[84,77141,26882],{"class":98},[84,77143,27507],{"class":90},[84,77145,77146,77148,77150,77152,77154],{"class":86,"line":129},[84,77147,1691],{"class":90},[84,77149,15],{"class":94},[84,77151,27516],{"class":90},[84,77153,15],{"class":94},[84,77155,102],{"class":90},[84,77157,77158,77160,77162],{"class":86,"line":154},[84,77159,1734],{"class":90},[84,77161,291],{"class":94},[84,77163,102],{"class":90},[84,77165,77166,77168,77170],{"class":86,"line":159},[84,77167,324],{"class":90},[84,77169,27493],{"class":94},[84,77171,102],{"class":90},[84,77173,77174,77176,77178],{"class":86,"line":178},[84,77175,274],{"class":90},[84,77177,291],{"class":94},[84,77179,102],{"class":90},[823,77181,77182],{},[15,77183,27549],{},[11,77185,27553],{"id":27552},[15,77187,27556],{},[74,77189,77190],{"className":76,"code":27559,"filename":26956,"language":79,"meta":80,"style":80},[22,77191,77192,77202,77208,77212,77216,77224,77228,77232,77240,77244,77252,77266,77274,77282,77300,77318,77336,77344,77352,77360,77380,77392,77404,77412,77432,77450,77458,77466,77474,77482,77490],{"__ignoreMap":80},[84,77193,77194,77196,77198,77200],{"class":86,"line":87},[84,77195,91],{"class":90},[84,77197,95],{"class":94},[84,77199,99],{"class":98},[84,77201,102],{"class":90},[84,77203,77204,77206],{"class":86,"line":105},[84,77205,27576],{"class":98},[84,77207,1876],{"class":90},[84,77209,77210],{"class":86,"line":122},[84,77211,27583],{"class":90},[84,77213,77214],{"class":86,"line":129},[84,77215,27588],{"class":90},[84,77217,77218,77220,77222],{"class":86,"line":154},[84,77219,27593],{"class":90},[84,77221,2938],{"class":135},[84,77223,1887],{"class":90},[84,77225,77226],{"class":86,"line":159},[84,77227,1941],{"class":90},[84,77229,77230],{"class":86,"line":178},[84,77231,22163],{"class":90},[84,77233,77234,77236,77238],{"class":86,"line":190},[84,77235,274],{"class":90},[84,77237,95],{"class":94},[84,77239,102],{"class":90},[84,77241,77242],{"class":86,"line":196},[84,77243,126],{"emptyLinePlaceholder":125},[84,77245,77246,77248,77250],{"class":86,"line":201},[84,77247,91],{"class":90},[84,77249,291],{"class":94},[84,77251,102],{"class":90},[84,77253,77254,77256,77258,77260,77262,77264],{"class":86,"line":217},[84,77255,299],{"class":90},[84,77257,6160],{"class":94},[84,77259,1629],{"class":98},[84,77261,184],{"class":90},[84,77263,27638],{"class":118},[84,77265,102],{"class":90},[84,77267,77268,77270,77272],{"class":86,"line":227},[84,77269,1642],{"class":90},[84,77271,6163],{"class":94},[84,77273,102],{"class":90},[84,77275,77276,77278,77280],{"class":86,"line":232},[84,77277,1691],{"class":90},[84,77279,6166],{"class":94},[84,77281,102],{"class":90},[84,77283,77284,77286,77288,77290,77292,77294,77296,77298],{"class":86,"line":237},[84,77285,27377],{"class":90},[84,77287,6169],{"class":94},[84,77289,1629],{"class":98},[84,77291,184],{"class":90},[84,77293,27669],{"class":118},[84,77295,27672],{"class":90},[84,77297,6169],{"class":94},[84,77299,102],{"class":90},[84,77301,77302,77304,77306,77308,77310,77312,77314,77316],{"class":86,"line":253},[84,77303,27377],{"class":90},[84,77305,6169],{"class":94},[84,77307,1629],{"class":98},[84,77309,184],{"class":90},[84,77311,27669],{"class":118},[84,77313,27691],{"class":90},[84,77315,6169],{"class":94},[84,77317,102],{"class":90},[84,77319,77320,77322,77324,77326,77328,77330,77332,77334],{"class":86,"line":266},[84,77321,27377],{"class":90},[84,77323,6169],{"class":94},[84,77325,1629],{"class":98},[84,77327,184],{"class":90},[84,77329,27669],{"class":118},[84,77331,27710],{"class":90},[84,77333,6169],{"class":94},[84,77335,102],{"class":90},[84,77337,77338,77340,77342],{"class":86,"line":271},[84,77339,4952],{"class":90},[84,77341,6166],{"class":94},[84,77343,102],{"class":90},[84,77345,77346,77348,77350],{"class":86,"line":281},[84,77347,1734],{"class":90},[84,77349,6163],{"class":94},[84,77351,102],{"class":90},[84,77353,77354,77356,77358],{"class":86,"line":286},[84,77355,1642],{"class":90},[84,77357,6182],{"class":94},[84,77359,102],{"class":90},[84,77361,77362,77364,77366,77368,77370,77372,77374,77376,77378],{"class":86,"line":296},[84,77363,1691],{"class":90},[84,77365,6166],{"class":94},[84,77367,13525],{"class":98},[84,77369,184],{"class":90},[84,77371,27751],{"class":118},[84,77373,5092],{"class":98},[84,77375,184],{"class":90},[84,77377,13537],{"class":118},[84,77379,102],{"class":90},[84,77381,77382,77384,77386,77388,77390],{"class":86,"line":315},[84,77383,27377],{"class":90},[84,77385,6187],{"class":94},[84,77387,23469],{"class":90},[84,77389,6187],{"class":94},[84,77391,102],{"class":90},[84,77393,77394,77396,77398,77400,77402],{"class":86,"line":321},[84,77395,27377],{"class":90},[84,77397,6187],{"class":94},[84,77399,27780],{"class":90},[84,77401,6187],{"class":94},[84,77403,102],{"class":90},[84,77405,77406,77408,77410],{"class":86,"line":331},[84,77407,27377],{"class":90},[84,77409,6187],{"class":94},[84,77411,102],{"class":90},[84,77413,77414,77416,77418,77420,77422,77424,77426,77428,77430],{"class":86,"line":336},[84,77415,27387],{"class":90},[84,77417,26638],{"class":94},[84,77419,27212],{"class":98},[84,77421,184],{"class":90},[84,77423,27805],{"class":118},[84,77425,27808],{"class":98},[84,77427,184],{"class":90},[84,77429,22227],{"class":118},[84,77431,102],{"class":90},[84,77433,77434,77436,77438,77440,77442,77444,77446,77448],{"class":86,"line":354},[84,77435,27819],{"class":90},[84,77437,302],{"class":94},[84,77439,5046],{"class":98},[84,77441,184],{"class":90},[84,77443,5051],{"class":118},[84,77445,27830],{"class":90},[84,77447,302],{"class":94},[84,77449,102],{"class":90},[84,77451,77452,77454,77456],{"class":86,"line":360},[84,77453,27416],{"class":90},[84,77455,26638],{"class":94},[84,77457,102],{"class":90},[84,77459,77460,77462,77464],{"class":86,"line":369},[84,77461,27425],{"class":90},[84,77463,6187],{"class":94},[84,77465,102],{"class":90},[84,77467,77468,77470,77472],{"class":86,"line":1453},[84,77469,4952],{"class":90},[84,77471,6166],{"class":94},[84,77473,102],{"class":90},[84,77475,77476,77478,77480],{"class":86,"line":1462},[84,77477,1734],{"class":90},[84,77479,6182],{"class":94},[84,77481,102],{"class":90},[84,77483,77484,77486,77488],{"class":86,"line":1484},[84,77485,324],{"class":90},[84,77487,6160],{"class":94},[84,77489,102],{"class":90},[84,77491,77492,77494,77496],{"class":86,"line":1489},[84,77493,274],{"class":90},[84,77495,291],{"class":94},[84,77497,102],{"class":90},[74,77499,77500],{"className":76,"code":27885,"filename":27886,"language":79,"meta":80,"style":80},[22,77501,77502,77512,77524,77536,77540,77552,77572,77592,77596,77600,77612,77622,77626,77634,77638,77646,77660,77680,77700,77704,77712,77720,77728],{"__ignoreMap":80},[84,77503,77504,77506,77508,77510],{"class":86,"line":87},[84,77505,91],{"class":90},[84,77507,95],{"class":94},[84,77509,99],{"class":98},[84,77511,102],{"class":90},[84,77513,77514,77516,77518,77520,77522],{"class":86,"line":105},[84,77515,109],{"class":108},[84,77517,112],{"class":90},[84,77519,115],{"class":108},[84,77521,18866],{"class":118},[84,77523,18869],{"class":90},[84,77525,77526,77528,77530,77532,77534],{"class":86,"line":122},[84,77527,109],{"class":108},[84,77529,27917],{"class":90},[84,77531,115],{"class":108},[84,77533,27922],{"class":118},[84,77535,18869],{"class":90},[84,77537,77538],{"class":86,"line":129},[84,77539,126],{"emptyLinePlaceholder":125},[84,77541,77542,77544,77546,77548,77550],{"class":86,"line":154},[84,77543,132],{"class":108},[84,77545,11767],{"class":135},[84,77547,139],{"class":108},[84,77549,142],{"class":98},[84,77551,2894],{"class":90},[84,77553,77554,77556,77558,77560,77562,77564,77566,77568,77570],{"class":86,"line":159},[84,77555,2899],{"class":90},[84,77557,2862],{"class":135},[84,77559,23323],{"class":90},[84,77561,18308],{"class":118},[84,77563,27953],{"class":90},[84,77565,27956],{"class":118},[84,77567,27959],{"class":90},[84,77569,2938],{"class":135},[84,77571,2921],{"class":90},[84,77573,77574,77576,77578,77580,77582,77584,77586,77588,77590],{"class":86,"line":178},[84,77575,2899],{"class":90},[84,77577,2928],{"class":135},[84,77579,23323],{"class":90},[84,77581,23349],{"class":118},[84,77583,27953],{"class":90},[84,77585,27978],{"class":118},[84,77587,27959],{"class":90},[84,77589,148],{"class":135},[84,77591,2921],{"class":90},[84,77593,77594],{"class":86,"line":190},[84,77595,23387],{"class":90},[84,77597,77598],{"class":86,"line":196},[84,77599,126],{"emptyLinePlaceholder":125},[84,77601,77602,77604,77606,77608,77610],{"class":86,"line":201},[84,77603,3246],{"class":108},[84,77605,27999],{"class":98},[84,77607,145],{"class":90},[84,77609,28004],{"class":429},[84,77611,438],{"class":90},[84,77613,77614,77616,77618,77620],{"class":86,"line":217},[84,77615,28011],{"class":90},[84,77617,184],{"class":108},[84,77619,260],{"class":108},[84,77621,28018],{"class":90},[84,77623,77624],{"class":86,"line":227},[84,77625,193],{"class":90},[84,77627,77628,77630,77632],{"class":86,"line":232},[84,77629,274],{"class":90},[84,77631,95],{"class":94},[84,77633,102],{"class":90},[84,77635,77636],{"class":86,"line":237},[84,77637,126],{"emptyLinePlaceholder":125},[84,77639,77640,77642,77644],{"class":86,"line":253},[84,77641,91],{"class":90},[84,77643,291],{"class":94},[84,77645,102],{"class":90},[84,77647,77648,77650,77652,77654,77656,77658],{"class":86,"line":266},[84,77649,299],{"class":90},[84,77651,26967],{"class":94},[84,77653,28051],{"class":98},[84,77655,184],{"class":90},[84,77657,28056],{"class":118},[84,77659,102],{"class":90},[84,77661,77662,77664,77666,77668,77670,77672,77674,77676,77678],{"class":86,"line":271},[84,77663,1642],{"class":90},[84,77665,291],{"class":94},[84,77667,28067],{"class":90},[84,77669,28070],{"class":98},[84,77671,184],{"class":90},[84,77673,1678],{"class":118},[84,77675,28077],{"class":90},[84,77677,1678],{"class":118},[84,77679,102],{"class":90},[84,77681,77682,77684,77686,77688,77690,77692,77694,77696,77698],{"class":86,"line":281},[84,77683,1691],{"class":90},[84,77685,302],{"class":94},[84,77687,5046],{"class":98},[84,77689,184],{"class":90},[84,77691,5051],{"class":118},[84,77693,305],{"class":98},[84,77695,184],{"class":90},[84,77697,28100],{"class":118},[84,77699,102],{"class":90},[84,77701,77702],{"class":86,"line":286},[84,77703,28107],{"class":90},[84,77705,77706,77708,77710],{"class":86,"line":296},[84,77707,4952],{"class":90},[84,77709,302],{"class":94},[84,77711,102],{"class":90},[84,77713,77714,77716,77718],{"class":86,"line":315},[84,77715,1734],{"class":90},[84,77717,291],{"class":94},[84,77719,102],{"class":90},[84,77721,77722,77724,77726],{"class":86,"line":321},[84,77723,324],{"class":90},[84,77725,26967],{"class":94},[84,77727,102],{"class":90},[84,77729,77730,77732,77734],{"class":86,"line":331},[84,77731,274],{"class":90},[84,77733,291],{"class":94},[84,77735,102],{"class":90},[11,77737,28143],{"id":28142},[15,77739,28146],{},[74,77741,77742],{"className":76,"code":28149,"filename":26956,"language":79,"meta":80,"style":80},[22,77743,77744,77752,77760,77764,77768,77772,77780,77784,77788,77792,77800,77804,77812,77826,77834,77842,77860,77878,77896,77904,77912,77920,77940,77952,77964,77972,77992,78010,78018,78026,78034,78042,78050],{"__ignoreMap":80},[84,77745,77746,77748,77750],{"class":86,"line":87},[84,77747,91],{"class":90},[84,77749,95],{"class":94},[84,77751,102],{"class":90},[84,77753,77754,77756,77758],{"class":86,"line":105},[84,77755,418],{"class":108},[84,77757,1870],{"class":108},[84,77759,175],{"class":90},[84,77761,77762],{"class":86,"line":122},[84,77763,28172],{"class":90},[84,77765,77766],{"class":86,"line":129},[84,77767,28177],{"class":90},[84,77769,77770],{"class":86,"line":154},[84,77771,28182],{"class":90},[84,77773,77774,77776,77778],{"class":86,"line":159},[84,77775,28187],{"class":90},[84,77777,2938],{"class":135},[84,77779,1887],{"class":90},[84,77781,77782],{"class":86,"line":178},[84,77783,7783],{"class":90},[84,77785,77786],{"class":86,"line":190},[84,77787,1941],{"class":90},[84,77789,77790],{"class":86,"line":196},[84,77791,18973],{"class":90},[84,77793,77794,77796,77798],{"class":86,"line":201},[84,77795,274],{"class":90},[84,77797,95],{"class":94},[84,77799,102],{"class":90},[84,77801,77802],{"class":86,"line":217},[84,77803,126],{"emptyLinePlaceholder":125},[84,77805,77806,77808,77810],{"class":86,"line":227},[84,77807,91],{"class":90},[84,77809,291],{"class":94},[84,77811,102],{"class":90},[84,77813,77814,77816,77818,77820,77822,77824],{"class":86,"line":232},[84,77815,299],{"class":90},[84,77817,6160],{"class":94},[84,77819,1629],{"class":98},[84,77821,184],{"class":90},[84,77823,27638],{"class":118},[84,77825,102],{"class":90},[84,77827,77828,77830,77832],{"class":86,"line":237},[84,77829,1642],{"class":90},[84,77831,6163],{"class":94},[84,77833,102],{"class":90},[84,77835,77836,77838,77840],{"class":86,"line":253},[84,77837,1691],{"class":90},[84,77839,6166],{"class":94},[84,77841,102],{"class":90},[84,77843,77844,77846,77848,77850,77852,77854,77856,77858],{"class":86,"line":266},[84,77845,27377],{"class":90},[84,77847,6169],{"class":94},[84,77849,1629],{"class":98},[84,77851,184],{"class":90},[84,77853,27669],{"class":118},[84,77855,27672],{"class":90},[84,77857,6169],{"class":94},[84,77859,102],{"class":90},[84,77861,77862,77864,77866,77868,77870,77872,77874,77876],{"class":86,"line":271},[84,77863,27377],{"class":90},[84,77865,6169],{"class":94},[84,77867,1629],{"class":98},[84,77869,184],{"class":90},[84,77871,27669],{"class":118},[84,77873,27691],{"class":90},[84,77875,6169],{"class":94},[84,77877,102],{"class":90},[84,77879,77880,77882,77884,77886,77888,77890,77892,77894],{"class":86,"line":281},[84,77881,27377],{"class":90},[84,77883,6169],{"class":94},[84,77885,1629],{"class":98},[84,77887,184],{"class":90},[84,77889,27669],{"class":118},[84,77891,27710],{"class":90},[84,77893,6169],{"class":94},[84,77895,102],{"class":90},[84,77897,77898,77900,77902],{"class":86,"line":286},[84,77899,4952],{"class":90},[84,77901,6166],{"class":94},[84,77903,102],{"class":90},[84,77905,77906,77908,77910],{"class":86,"line":296},[84,77907,1734],{"class":90},[84,77909,6163],{"class":94},[84,77911,102],{"class":90},[84,77913,77914,77916,77918],{"class":86,"line":315},[84,77915,1642],{"class":90},[84,77917,6182],{"class":94},[84,77919,102],{"class":90},[84,77921,77922,77924,77926,77928,77930,77932,77934,77936,77938],{"class":86,"line":321},[84,77923,1691],{"class":90},[84,77925,6166],{"class":94},[84,77927,13525],{"class":98},[84,77929,184],{"class":90},[84,77931,27751],{"class":118},[84,77933,5092],{"class":98},[84,77935,184],{"class":90},[84,77937,13537],{"class":118},[84,77939,102],{"class":90},[84,77941,77942,77944,77946,77948,77950],{"class":86,"line":331},[84,77943,27377],{"class":90},[84,77945,6187],{"class":94},[84,77947,23469],{"class":90},[84,77949,6187],{"class":94},[84,77951,102],{"class":90},[84,77953,77954,77956,77958,77960,77962],{"class":86,"line":336},[84,77955,27377],{"class":90},[84,77957,6187],{"class":94},[84,77959,27780],{"class":90},[84,77961,6187],{"class":94},[84,77963,102],{"class":90},[84,77965,77966,77968,77970],{"class":86,"line":354},[84,77967,27377],{"class":90},[84,77969,6187],{"class":94},[84,77971,102],{"class":90},[84,77973,77974,77976,77978,77980,77982,77984,77986,77988,77990],{"class":86,"line":360},[84,77975,27387],{"class":90},[84,77977,26638],{"class":94},[84,77979,27212],{"class":98},[84,77981,184],{"class":90},[84,77983,27805],{"class":118},[84,77985,27808],{"class":98},[84,77987,184],{"class":90},[84,77989,22227],{"class":118},[84,77991,102],{"class":90},[84,77993,77994,77996,77998,78000,78002,78004,78006,78008],{"class":86,"line":369},[84,77995,27819],{"class":90},[84,77997,302],{"class":94},[84,77999,5046],{"class":98},[84,78001,184],{"class":90},[84,78003,5051],{"class":118},[84,78005,27830],{"class":90},[84,78007,302],{"class":94},[84,78009,102],{"class":90},[84,78011,78012,78014,78016],{"class":86,"line":1453},[84,78013,27416],{"class":90},[84,78015,26638],{"class":94},[84,78017,102],{"class":90},[84,78019,78020,78022,78024],{"class":86,"line":1462},[84,78021,27425],{"class":90},[84,78023,6187],{"class":94},[84,78025,102],{"class":90},[84,78027,78028,78030,78032],{"class":86,"line":1484},[84,78029,4952],{"class":90},[84,78031,6166],{"class":94},[84,78033,102],{"class":90},[84,78035,78036,78038,78040],{"class":86,"line":1489},[84,78037,1734],{"class":90},[84,78039,6182],{"class":94},[84,78041,102],{"class":90},[84,78043,78044,78046,78048],{"class":86,"line":1495},[84,78045,324],{"class":90},[84,78047,6160],{"class":94},[84,78049,102],{"class":90},[84,78051,78052,78054,78056],{"class":86,"line":1500},[84,78053,274],{"class":90},[84,78055,291],{"class":94},[84,78057,102],{"class":90},[74,78059,78060],{"className":76,"code":28472,"filename":27886,"language":79,"meta":80,"style":80},[22,78061,78062,78070,78082,78086,78094,78098,78104,78110,78114,78134,78154,78158,78162,78166,78170,78180,78190,78194,78198,78202,78210,78214,78222,78236,78256,78276,78280,78288,78296,78304],{"__ignoreMap":80},[84,78063,78064,78066,78068],{"class":86,"line":87},[84,78065,91],{"class":90},[84,78067,95],{"class":94},[84,78069,102],{"class":90},[84,78071,78072,78074,78076,78078,78080],{"class":86,"line":105},[84,78073,109],{"class":108},[84,78075,27917],{"class":90},[84,78077,115],{"class":108},[84,78079,27922],{"class":118},[84,78081,18869],{"class":90},[84,78083,78084],{"class":86,"line":122},[84,78085,126],{"emptyLinePlaceholder":125},[84,78087,78088,78090,78092],{"class":86,"line":129},[84,78089,418],{"class":108},[84,78091,1870],{"class":108},[84,78093,175],{"class":90},[84,78095,78096],{"class":86,"line":154},[84,78097,28511],{"class":90},[84,78099,78100,78102],{"class":86,"line":159},[84,78101,1896],{"class":98},[84,78103,1307],{"class":90},[84,78105,78106,78108],{"class":86,"line":178},[84,78107,1903],{"class":108},[84,78109,175],{"class":90},[84,78111,78112],{"class":86,"line":190},[84,78113,23597],{"class":90},[84,78115,78116,78118,78120,78122,78124,78126,78128,78130,78132],{"class":86,"line":196},[84,78117,3449],{"class":90},[84,78119,2862],{"class":135},[84,78121,23323],{"class":90},[84,78123,18308],{"class":118},[84,78125,27953],{"class":90},[84,78127,27956],{"class":118},[84,78129,27959],{"class":90},[84,78131,2938],{"class":135},[84,78133,2921],{"class":90},[84,78135,78136,78138,78140,78142,78144,78146,78148,78150,78152],{"class":86,"line":201},[84,78137,3449],{"class":90},[84,78139,2928],{"class":135},[84,78141,23323],{"class":90},[84,78143,23349],{"class":118},[84,78145,27953],{"class":90},[84,78147,27978],{"class":118},[84,78149,27959],{"class":90},[84,78151,148],{"class":135},[84,78153,2921],{"class":90},[84,78155,78156],{"class":86,"line":217},[84,78157,10927],{"class":90},[84,78159,78160],{"class":86,"line":227},[84,78161,19195],{"class":90},[84,78163,78164],{"class":86,"line":232},[84,78165,1941],{"class":90},[84,78167,78168],{"class":86,"line":237},[84,78169,1950],{"class":90},[84,78171,78172,78174,78176,78178],{"class":86,"line":253},[84,78173,28588],{"class":98},[84,78175,145],{"class":90},[84,78177,28004],{"class":429},[84,78179,438],{"class":90},[84,78181,78182,78184,78186,78188],{"class":86,"line":266},[84,78183,28599],{"class":90},[84,78185,184],{"class":108},[84,78187,260],{"class":108},[84,78189,28018],{"class":90},[84,78191,78192],{"class":86,"line":271},[84,78193,7783],{"class":90},[84,78195,78196],{"class":86,"line":281},[84,78197,1941],{"class":90},[84,78199,78200],{"class":86,"line":286},[84,78201,18973],{"class":90},[84,78203,78204,78206,78208],{"class":86,"line":296},[84,78205,274],{"class":90},[84,78207,95],{"class":94},[84,78209,102],{"class":90},[84,78211,78212],{"class":86,"line":315},[84,78213,126],{"emptyLinePlaceholder":125},[84,78215,78216,78218,78220],{"class":86,"line":321},[84,78217,91],{"class":90},[84,78219,291],{"class":94},[84,78221,102],{"class":90},[84,78223,78224,78226,78228,78230,78232,78234],{"class":86,"line":331},[84,78225,299],{"class":90},[84,78227,26967],{"class":94},[84,78229,28051],{"class":98},[84,78231,184],{"class":90},[84,78233,28056],{"class":118},[84,78235,102],{"class":90},[84,78237,78238,78240,78242,78244,78246,78248,78250,78252,78254],{"class":86,"line":336},[84,78239,1642],{"class":90},[84,78241,291],{"class":94},[84,78243,28067],{"class":90},[84,78245,28070],{"class":98},[84,78247,184],{"class":90},[84,78249,1678],{"class":118},[84,78251,28077],{"class":90},[84,78253,1678],{"class":118},[84,78255,102],{"class":90},[84,78257,78258,78260,78262,78264,78266,78268,78270,78272,78274],{"class":86,"line":354},[84,78259,1691],{"class":90},[84,78261,302],{"class":94},[84,78263,5046],{"class":98},[84,78265,184],{"class":90},[84,78267,5051],{"class":118},[84,78269,305],{"class":98},[84,78271,184],{"class":90},[84,78273,28100],{"class":118},[84,78275,102],{"class":90},[84,78277,78278],{"class":86,"line":360},[84,78279,28107],{"class":90},[84,78281,78282,78284,78286],{"class":86,"line":369},[84,78283,4952],{"class":90},[84,78285,302],{"class":94},[84,78287,102],{"class":90},[84,78289,78290,78292,78294],{"class":86,"line":1453},[84,78291,1734],{"class":90},[84,78293,291],{"class":94},[84,78295,102],{"class":90},[84,78297,78298,78300,78302],{"class":86,"line":1462},[84,78299,324],{"class":90},[84,78301,26967],{"class":94},[84,78303,102],{"class":90},[84,78305,78306,78308,78310],{"class":86,"line":1484},[84,78307,274],{"class":90},[84,78309,291],{"class":94},[84,78311,102],{"class":90},[34,78313,2406],{"id":2405},[737,78315,78316,78320,78322,78328,78330,78332],{},[740,78317,78318,28736],{},[22,78319,26560],{},[740,78321,28739],{},[740,78323,28742,78324,754,78326,2599],{},[22,78325,4915],{},[22,78327,27272],{},[740,78329,28749],{},[740,78331,28752],{},[740,78333,28755],{},[835,78335,28758],{},{"title":80,"searchDepth":105,"depth":105,"links":78337},[78338,78339,78340,78341,78342,78348,78354],{"id":21333,"depth":105,"text":21334},{"id":25349,"depth":105,"text":25350},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":783,"depth":105,"text":784,"children":78343},[78344,78345,78346,78347],{"id":26844,"depth":122,"text":28768},{"id":26944,"depth":122,"text":26945},{"id":27012,"depth":122,"text":27013},{"id":27046,"depth":122,"text":27047},{"id":2735,"depth":105,"text":2736,"children":78349},[78350,78351,78352,78353],{"id":27084,"depth":122,"text":27085},{"id":27163,"depth":122,"text":27164},{"id":27319,"depth":122,"text":27320},{"id":27464,"depth":122,"text":28778},{"id":2405,"depth":105,"text":2406},{"updatedAt":28785,"coverCaption":28786,"author":868,"keywords":78356},[870,26560,28788,26809,28789,873,1782],[78358],{"headline":28793,"author":78359,"datePublished":28785,"@type":880},{"name":868,"@type":879},{"title":26552,"description":28783},[78362,78363,78364,78365],{"tag":21297,"color":21298},{"tag":27031,"color":28800},{"tag":888,"color":889},{"tag":2462,"color":2463},{"id":28805,"title":28806,"body":78367,"cover":31608,"coverAlt":31609,"date":31610,"description":31611,"draft":852,"extension":853,"lab":882,"locale":864,"meta":80936,"navigation":125,"path":31617,"schemaOrg":80938,"seo":80941,"series":21291,"seriesDescription":21292,"seriesOrder":159,"seriesTitle":21293,"slug":882,"stem":31623,"tags":80942,"__hash__":31631},{"type":8,"value":78368,"toc":80913},[78369,78373,78377,78379,78383,78387,78399,78401,78405,78407,78421,78435,78437,78439,78455,78457,78471,78477,78479,78483,78485,78501,78503,78507,78519,78521,78523,78525,78581,78587,78591,78595,78597,78623,78629,78631,78653,78655,78657,78675,78677,78681,78683,78685,78807,78935,78939,79075,79209,79211,79333,79461,79463,79465,79471,79601,80147,80149,80155,80325,80877,80879,80883,80885,80887,80911],[11,78370,21314,78371],{"id":28811},[22,78372,18689],{},[15,78374,78375,28818],{},[22,78376,18689],{},[34,78378,21334],{"id":21333},[15,78380,28823,78381,28826],{},[22,78382,18689],{},[15,78384,12736,78385,28831],{},[22,78386,18689],{},[737,78388,78389,78395,78397],{},[740,78390,28836,78391,28840,78393,764],{},[22,78392,28839],{},[22,78394,28843],{},[740,78396,28846],{},[740,78398,28849],{},[34,78400,947],{"id":946},[15,78402,21244,78403,28856],{},[22,78404,18689],{},[1074,78406,28860],{"id":28859},[737,78408,78409,78413],{},[740,78410,78411,28868],{},[22,78412,28867],{},[740,78414,28871,78415,754,78417,754,78419,2599],{},[22,78416,18759],{},[22,78418,28876],{},[22,78420,28879],{},[15,78422,28882,78423,28886,78425,28840,78427,28891,78429,28895,78431,28899,78433,764],{},[22,78424,28885],{},[22,78426,28839],{},[22,78428,28843],{},[22,78430,28894],{},[22,78432,28898],{},[22,78434,28876],{},[1074,78436,28905],{"id":28904},[15,78438,28908],{},[737,78440,78441,78445,78449],{},[740,78442,28913,78443,764],{},[22,78444,28916],{},[740,78446,28919,78447,764],{},[22,78448,28922],{},[740,78450,28925,78451,754,78453,764],{},[22,78452,28928],{},[22,78454,28931],{},[15,78456,28934],{},[737,78458,78459,78463,78467],{},[740,78460,78461],{},[22,78462,28941],{},[740,78464,78465],{},[22,78466,28946],{},[740,78468,78469],{},[22,78470,28951],{},[15,78472,28954,78473,28958,78475,28961],{},[22,78474,28957],{},[22,78476,19966],{},[34,78478,1013],{"id":1012},[15,78480,21486,78481,28968],{},[22,78482,18689],{},[15,78484,4083],{},[737,78486,78487,78489,78491,78499],{},[740,78488,28975],{},[740,78490,28978],{},[740,78492,28981,78493,754,78495,754,78497,28991],{},[22,78494,28984],{},[22,78496,28987],{},[22,78498,28990],{},[740,78500,28994],{},[34,78502,1040],{"id":1039},[15,78504,8425,78505,8430],{},[22,78506,18689],{},[737,78508,78509,78513,78515,78517],{},[740,78510,29005,78511,29008],{},[22,78512,2523],{},[740,78514,29011],{},[740,78516,29014],{},[740,78518,29017],{},[34,78520,784],{"id":783},[1074,78522,29023],{"id":29022},[15,78524,25589],{},[74,78526,78527],{"className":76,"code":29028,"filename":29029,"language":79,"meta":80,"style":80},[22,78528,78529,78545,78565,78573],{"__ignoreMap":80},[84,78530,78531,78533,78535,78537,78539,78541,78543],{"class":86,"line":87},[84,78532,91],{"class":90},[84,78534,95],{"class":94},[84,78536,99],{"class":98},[84,78538,1161],{"class":98},[84,78540,184],{"class":90},[84,78542,1166],{"class":118},[84,78544,102],{"class":90},[84,78546,78547,78549,78551,78553,78555,78557,78559,78561,78563],{"class":86,"line":105},[84,78548,132],{"class":108},[84,78550,29054],{"class":135},[84,78552,139],{"class":108},[84,78554,29059],{"class":98},[84,78556,22077],{"class":90},[84,78558,28916],{"class":429},[84,78560,1203],{"class":108},[84,78562,22085],{"class":135},[84,78564,29070],{"class":90},[84,78566,78567,78569,78571],{"class":86,"line":122},[84,78568,29075],{"class":90},[84,78570,184],{"class":108},[84,78572,29080],{"class":118},[84,78574,78575,78577,78579],{"class":86,"line":129},[84,78576,274],{"class":90},[84,78578,95],{"class":94},[84,78580,102],{"class":90},[15,78582,29091,78583,29094,78585,764],{},[22,78584,28922],{},[22,78586,29097],{},[823,78588,78589],{},[15,78590,29102],{},[1074,78592,29106,78593,29109],{"id":29105},[22,78594,18689],{},[15,78596,25589],{},[74,78598,78599],{"className":76,"code":29114,"filename":29029,"language":79,"meta":80,"style":80},[22,78600,78601],{"__ignoreMap":80},[84,78602,78603,78605,78607,78609,78611,78613,78615,78617,78619,78621],{"class":86,"line":87},[84,78604,91],{"class":90},[84,78606,18759],{"class":94},[84,78608,24454],{"class":98},[84,78610,184],{"class":90},[84,78612,1678],{"class":118},[84,78614,29131],{"class":90},[84,78616,29134],{"class":98},[84,78618,29137],{"class":90},[84,78620,1678],{"class":118},[84,78622,5100],{"class":90},[823,78624,78625],{},[15,78626,78627,29148],{},[22,78628,18689],{},[15,78630,29151],{},[74,78632,78633],{"className":76,"code":29154,"filename":29155,"language":79,"meta":80,"style":80},[22,78634,78635],{"__ignoreMap":80},[84,78636,78637,78639,78641,78643,78645,78647,78649,78651],{"class":86,"line":87},[84,78638,91],{"class":90},[84,78640,18759],{"class":94},[84,78642,24454],{"class":98},[84,78644,184],{"class":90},[84,78646,1678],{"class":118},[84,78648,29172],{"class":90},[84,78650,1678],{"class":118},[84,78652,5100],{"class":90},[1074,78654,29180],{"id":29179},[15,78656,29183],{},[737,78658,78659,78663,78671],{},[740,78660,16664,78661,29190],{},[22,78662,28941],{},[740,78664,16664,78665,29195,78667,29198,78669,764],{},[22,78666,28946],{},[22,78668,6521],{},[22,78670,8732],{},[740,78672,16664,78673,29205],{},[22,78674,28951],{},[1074,78676,29209],{"id":29208},[15,78678,29212,78679,29215],{},[22,78680,18689],{},[11,78682,2736],{"id":2735},[34,78684,29221],{"id":29220},[74,78686,78688],{"className":76,"code":29224,"filename":873,"highlights":78687,"language":79,"meta":80,"style":80},[201],[22,78689,78690,78706,78718,78722,78738,78746,78750,78758,78766,78770,78791,78799],{"__ignoreMap":80},[84,78691,78692,78694,78696,78698,78700,78702,78704],{"class":86,"line":87},[84,78693,91],{"class":90},[84,78695,95],{"class":94},[84,78697,99],{"class":98},[84,78699,1161],{"class":98},[84,78701,184],{"class":90},[84,78703,1166],{"class":118},[84,78705,102],{"class":90},[84,78707,78708,78710,78712,78714,78716],{"class":86,"line":105},[84,78709,109],{"class":108},[84,78711,112],{"class":90},[84,78713,115],{"class":108},[84,78715,18866],{"class":118},[84,78717,18869],{"class":90},[84,78719,78720],{"class":86,"line":122},[84,78721,126],{"emptyLinePlaceholder":125},[84,78723,78724,78726,78728,78730,78732,78734,78736],{"class":86,"line":129},[84,78725,132],{"class":108},[84,78727,29266],{"class":135},[84,78729,139],{"class":108},[84,78731,142],{"class":98},[84,78733,145],{"class":90},[84,78735,26013],{"class":118},[84,78737,18994],{"class":90},[84,78739,78740,78742,78744],{"class":86,"line":154},[84,78741,274],{"class":90},[84,78743,95],{"class":94},[84,78745,102],{"class":90},[84,78747,78748],{"class":86,"line":159},[84,78749,126],{"emptyLinePlaceholder":125},[84,78751,78752,78754,78756],{"class":86,"line":178},[84,78753,91],{"class":90},[84,78755,291],{"class":94},[84,78757,102],{"class":90},[84,78759,78760,78762,78764],{"class":86,"line":190},[84,78761,299],{"class":90},[84,78763,4653],{"class":94},[84,78765,102],{"class":90},[84,78767,78768],{"class":86,"line":196},[84,78769,29309],{"class":90},[84,78771,78773,78775,78777,78779,78781,78783,78785,78787,78789],{"class":78772,"line":201},[86,10151],[84,78774,1642],{"class":90},[84,78776,18759],{"class":94},[84,78778,29319],{"class":98},[84,78780,184],{"class":90},[84,78782,29324],{"class":118},[84,78784,5046],{"class":98},[84,78786,184],{"class":90},[84,78788,29331],{"class":118},[84,78790,5100],{"class":90},[84,78792,78793,78795,78797],{"class":86,"line":217},[84,78794,324],{"class":90},[84,78796,4653],{"class":94},[84,78798,102],{"class":90},[84,78800,78801,78803,78805],{"class":86,"line":227},[84,78802,274],{"class":90},[84,78804,291],{"class":94},[84,78806,102],{"class":90},[74,78808,78810],{"className":76,"code":29352,"filename":1782,"highlights":78809,"language":79,"meta":80,"style":80},[237],[22,78811,78812,78826,78834,78840,78846,78854,78858,78862,78866,78874,78878,78886,78894,78898,78919,78927],{"__ignoreMap":80},[84,78813,78814,78816,78818,78820,78822,78824],{"class":86,"line":87},[84,78815,91],{"class":90},[84,78817,95],{"class":94},[84,78819,1161],{"class":98},[84,78821,184],{"class":90},[84,78823,1166],{"class":118},[84,78825,102],{"class":90},[84,78827,78828,78830,78832],{"class":86,"line":105},[84,78829,418],{"class":108},[84,78831,1870],{"class":108},[84,78833,175],{"class":90},[84,78835,78836,78838],{"class":86,"line":122},[84,78837,1896],{"class":98},[84,78839,1307],{"class":90},[84,78841,78842,78844],{"class":86,"line":129},[84,78843,1903],{"class":108},[84,78845,175],{"class":90},[84,78847,78848,78850,78852],{"class":86,"line":154},[84,78849,29394],{"class":90},[84,78851,26013],{"class":118},[84,78853,1887],{"class":90},[84,78855,78856],{"class":86,"line":159},[84,78857,19195],{"class":90},[84,78859,78860],{"class":86,"line":178},[84,78861,1941],{"class":90},[84,78863,78864],{"class":86,"line":190},[84,78865,18973],{"class":90},[84,78867,78868,78870,78872],{"class":86,"line":196},[84,78869,274],{"class":90},[84,78871,95],{"class":94},[84,78873,102],{"class":90},[84,78875,78876],{"class":86,"line":201},[84,78877,126],{"emptyLinePlaceholder":125},[84,78879,78880,78882,78884],{"class":86,"line":217},[84,78881,91],{"class":90},[84,78883,291],{"class":94},[84,78885,102],{"class":90},[84,78887,78888,78890,78892],{"class":86,"line":227},[84,78889,299],{"class":90},[84,78891,4653],{"class":94},[84,78893,102],{"class":90},[84,78895,78896],{"class":86,"line":232},[84,78897,29309],{"class":90},[84,78899,78901,78903,78905,78907,78909,78911,78913,78915,78917],{"class":78900,"line":237},[86,10151],[84,78902,1642],{"class":90},[84,78904,18759],{"class":94},[84,78906,29319],{"class":98},[84,78908,184],{"class":90},[84,78910,29324],{"class":118},[84,78912,5046],{"class":98},[84,78914,184],{"class":90},[84,78916,29331],{"class":118},[84,78918,5100],{"class":90},[84,78920,78921,78923,78925],{"class":86,"line":253},[84,78922,324],{"class":90},[84,78924,4653],{"class":94},[84,78926,102],{"class":90},[84,78928,78929,78931,78933],{"class":86,"line":266},[84,78930,274],{"class":90},[84,78932,291],{"class":94},[84,78934,102],{"class":90},[34,78936,29483,78937],{"id":29482},[22,78938,29486],{},[74,78940,78942],{"className":76,"code":29489,"filename":873,"highlights":78941,"language":79,"meta":80,"style":80},[201],[22,78943,78944,78960,78972,78976,79000,79008,79012,79020,79028,79032,79059,79067],{"__ignoreMap":80},[84,78945,78946,78948,78950,78952,78954,78956,78958],{"class":86,"line":87},[84,78947,91],{"class":90},[84,78949,95],{"class":94},[84,78951,99],{"class":98},[84,78953,1161],{"class":98},[84,78955,184],{"class":90},[84,78957,1166],{"class":118},[84,78959,102],{"class":90},[84,78961,78962,78964,78966,78968,78970],{"class":86,"line":105},[84,78963,109],{"class":108},[84,78965,112],{"class":90},[84,78967,115],{"class":108},[84,78969,18866],{"class":118},[84,78971,18869],{"class":90},[84,78973,78974],{"class":86,"line":122},[84,78975,126],{"emptyLinePlaceholder":125},[84,78977,78978,78980,78982,78984,78986,78988,78990,78992,78994,78996,78998],{"class":86,"line":129},[84,78979,132],{"class":108},[84,78981,29531],{"class":135},[84,78983,139],{"class":108},[84,78985,142],{"class":98},[84,78987,91],{"class":90},[84,78989,8732],{"class":135},[84,78991,1261],{"class":108},[84,78993,1264],{"class":135},[84,78995,1267],{"class":90},[84,78997,1270],{"class":135},[84,78999,18994],{"class":90},[84,79001,79002,79004,79006],{"class":86,"line":154},[84,79003,274],{"class":90},[84,79005,95],{"class":94},[84,79007,102],{"class":90},[84,79009,79010],{"class":86,"line":159},[84,79011,126],{"emptyLinePlaceholder":125},[84,79013,79014,79016,79018],{"class":86,"line":178},[84,79015,91],{"class":90},[84,79017,291],{"class":94},[84,79019,102],{"class":90},[84,79021,79022,79024,79026],{"class":86,"line":190},[84,79023,299],{"class":90},[84,79025,4653],{"class":94},[84,79027,102],{"class":90},[84,79029,79030],{"class":86,"line":196},[84,79031,29582],{"class":90},[84,79033,79035,79037,79039,79041,79043,79045,79047,79049,79051,79053,79055,79057],{"class":79034,"line":201},[86,10151],[84,79036,1642],{"class":90},[84,79038,18759],{"class":94},[84,79040,29592],{"class":98},[84,79042,184],{"class":90},[84,79044,29597],{"class":118},[84,79046,5046],{"class":98},[84,79048,184],{"class":90},[84,79050,29604],{"class":118},[84,79052,29607],{"class":98},[84,79054,184],{"class":90},[84,79056,29612],{"class":118},[84,79058,5100],{"class":90},[84,79060,79061,79063,79065],{"class":86,"line":217},[84,79062,324],{"class":90},[84,79064,4653],{"class":94},[84,79066,102],{"class":90},[84,79068,79069,79071,79073],{"class":86,"line":227},[84,79070,274],{"class":90},[84,79072,291],{"class":94},[84,79074,102],{"class":90},[74,79076,79078],{"className":76,"code":29633,"filename":1782,"highlights":79077,"language":79,"meta":80,"style":80},[237],[22,79079,79080,79094,79102,79108,79114,79122,79126,79130,79134,79142,79146,79154,79162,79166,79193,79201],{"__ignoreMap":80},[84,79081,79082,79084,79086,79088,79090,79092],{"class":86,"line":87},[84,79083,91],{"class":90},[84,79085,95],{"class":94},[84,79087,1161],{"class":98},[84,79089,184],{"class":90},[84,79091,1166],{"class":118},[84,79093,102],{"class":90},[84,79095,79096,79098,79100],{"class":86,"line":105},[84,79097,418],{"class":108},[84,79099,1870],{"class":108},[84,79101,175],{"class":90},[84,79103,79104,79106],{"class":86,"line":122},[84,79105,1896],{"class":98},[84,79107,1307],{"class":90},[84,79109,79110,79112],{"class":86,"line":129},[84,79111,1903],{"class":108},[84,79113,175],{"class":90},[84,79115,79116,79118,79120],{"class":86,"line":154},[84,79117,29675],{"class":90},[84,79119,1270],{"class":135},[84,79121,1887],{"class":90},[84,79123,79124],{"class":86,"line":159},[84,79125,19195],{"class":90},[84,79127,79128],{"class":86,"line":178},[84,79129,1941],{"class":90},[84,79131,79132],{"class":86,"line":190},[84,79133,18973],{"class":90},[84,79135,79136,79138,79140],{"class":86,"line":196},[84,79137,274],{"class":90},[84,79139,95],{"class":94},[84,79141,102],{"class":90},[84,79143,79144],{"class":86,"line":201},[84,79145,126],{"emptyLinePlaceholder":125},[84,79147,79148,79150,79152],{"class":86,"line":217},[84,79149,91],{"class":90},[84,79151,291],{"class":94},[84,79153,102],{"class":90},[84,79155,79156,79158,79160],{"class":86,"line":227},[84,79157,299],{"class":90},[84,79159,4653],{"class":94},[84,79161,102],{"class":90},[84,79163,79164],{"class":86,"line":232},[84,79165,29582],{"class":90},[84,79167,79169,79171,79173,79175,79177,79179,79181,79183,79185,79187,79189,79191],{"class":79168,"line":237},[86,10151],[84,79170,1642],{"class":90},[84,79172,18759],{"class":94},[84,79174,29592],{"class":98},[84,79176,184],{"class":90},[84,79178,29597],{"class":118},[84,79180,5046],{"class":98},[84,79182,184],{"class":90},[84,79184,29604],{"class":118},[84,79186,29607],{"class":98},[84,79188,184],{"class":90},[84,79190,29612],{"class":118},[84,79192,5100],{"class":90},[84,79194,79195,79197,79199],{"class":86,"line":253},[84,79196,324],{"class":90},[84,79198,4653],{"class":94},[84,79200,102],{"class":90},[84,79202,79203,79205,79207],{"class":86,"line":266},[84,79204,274],{"class":90},[84,79206,291],{"class":94},[84,79208,102],{"class":90},[34,79210,29770],{"id":29769},[74,79212,79214],{"className":76,"code":29773,"filename":873,"highlights":79213,"language":79,"meta":80,"style":80},[196],[22,79215,79216,79232,79244,79248,79264,79272,79276,79284,79292,79313,79317,79325],{"__ignoreMap":80},[84,79217,79218,79220,79222,79224,79226,79228,79230],{"class":86,"line":87},[84,79219,91],{"class":90},[84,79221,95],{"class":94},[84,79223,99],{"class":98},[84,79225,1161],{"class":98},[84,79227,184],{"class":90},[84,79229,1166],{"class":118},[84,79231,102],{"class":90},[84,79233,79234,79236,79238,79240,79242],{"class":86,"line":105},[84,79235,109],{"class":108},[84,79237,112],{"class":90},[84,79239,115],{"class":108},[84,79241,18866],{"class":118},[84,79243,18869],{"class":90},[84,79245,79246],{"class":86,"line":122},[84,79247,126],{"emptyLinePlaceholder":125},[84,79249,79250,79252,79254,79256,79258,79260,79262],{"class":86,"line":129},[84,79251,132],{"class":108},[84,79253,29815],{"class":135},[84,79255,139],{"class":108},[84,79257,142],{"class":98},[84,79259,145],{"class":90},[84,79261,148],{"class":135},[84,79263,18994],{"class":90},[84,79265,79266,79268,79270],{"class":86,"line":154},[84,79267,274],{"class":90},[84,79269,95],{"class":94},[84,79271,102],{"class":90},[84,79273,79274],{"class":86,"line":159},[84,79275,126],{"emptyLinePlaceholder":125},[84,79277,79278,79280,79282],{"class":86,"line":178},[84,79279,91],{"class":90},[84,79281,291],{"class":94},[84,79283,102],{"class":90},[84,79285,79286,79288,79290],{"class":86,"line":190},[84,79287,299],{"class":90},[84,79289,4653],{"class":94},[84,79291,102],{"class":90},[84,79293,79295,79297,79299,79301,79303,79305,79307,79309,79311],{"class":79294,"line":196},[86,10151],[84,79296,1642],{"class":90},[84,79298,18759],{"class":94},[84,79300,24454],{"class":98},[84,79302,184],{"class":90},[84,79304,29867],{"class":118},[84,79306,5046],{"class":98},[84,79308,184],{"class":90},[84,79310,29874],{"class":118},[84,79312,5100],{"class":90},[84,79314,79315],{"class":86,"line":201},[84,79316,29881],{"class":90},[84,79318,79319,79321,79323],{"class":86,"line":217},[84,79320,324],{"class":90},[84,79322,4653],{"class":94},[84,79324,102],{"class":90},[84,79326,79327,79329,79331],{"class":86,"line":227},[84,79328,274],{"class":90},[84,79330,291],{"class":94},[84,79332,102],{"class":90},[74,79334,79336],{"className":76,"code":29900,"filename":1782,"highlights":79335,"language":79,"meta":80,"style":80},[232],[22,79337,79338,79352,79360,79366,79372,79380,79384,79388,79392,79400,79404,79412,79420,79441,79445,79453],{"__ignoreMap":80},[84,79339,79340,79342,79344,79346,79348,79350],{"class":86,"line":87},[84,79341,91],{"class":90},[84,79343,95],{"class":94},[84,79345,1161],{"class":98},[84,79347,184],{"class":90},[84,79349,1166],{"class":118},[84,79351,102],{"class":90},[84,79353,79354,79356,79358],{"class":86,"line":105},[84,79355,418],{"class":108},[84,79357,1870],{"class":108},[84,79359,175],{"class":90},[84,79361,79362,79364],{"class":86,"line":122},[84,79363,1896],{"class":98},[84,79365,1307],{"class":90},[84,79367,79368,79370],{"class":86,"line":129},[84,79369,1903],{"class":108},[84,79371,175],{"class":90},[84,79373,79374,79376,79378],{"class":86,"line":154},[84,79375,29942],{"class":90},[84,79377,148],{"class":135},[84,79379,1887],{"class":90},[84,79381,79382],{"class":86,"line":159},[84,79383,19195],{"class":90},[84,79385,79386],{"class":86,"line":178},[84,79387,1941],{"class":90},[84,79389,79390],{"class":86,"line":190},[84,79391,18973],{"class":90},[84,79393,79394,79396,79398],{"class":86,"line":196},[84,79395,274],{"class":90},[84,79397,95],{"class":94},[84,79399,102],{"class":90},[84,79401,79402],{"class":86,"line":201},[84,79403,126],{"emptyLinePlaceholder":125},[84,79405,79406,79408,79410],{"class":86,"line":217},[84,79407,91],{"class":90},[84,79409,291],{"class":94},[84,79411,102],{"class":90},[84,79413,79414,79416,79418],{"class":86,"line":227},[84,79415,299],{"class":90},[84,79417,4653],{"class":94},[84,79419,102],{"class":90},[84,79421,79423,79425,79427,79429,79431,79433,79435,79437,79439],{"class":79422,"line":232},[86,10151],[84,79424,1642],{"class":90},[84,79426,18759],{"class":94},[84,79428,24454],{"class":98},[84,79430,184],{"class":90},[84,79432,29867],{"class":118},[84,79434,5046],{"class":98},[84,79436,184],{"class":90},[84,79438,29874],{"class":118},[84,79440,5100],{"class":90},[84,79442,79443],{"class":86,"line":237},[84,79444,29881],{"class":90},[84,79446,79447,79449,79451],{"class":86,"line":253},[84,79448,324],{"class":90},[84,79450,4653],{"class":94},[84,79452,102],{"class":90},[84,79454,79455,79457,79459],{"class":86,"line":266},[84,79456,274],{"class":90},[84,79458,291],{"class":94},[84,79460,102],{"class":90},[34,79462,30031],{"id":30030},[1074,79464,27553],{"id":27552},[15,79466,79467,30039,79469,30042],{},[22,79468,30038],{},[22,79470,29097],{},[74,79472,79474],{"className":76,"code":30045,"filename":30046,"highlights":79473,"language":79,"meta":80,"style":80},[196],[22,79475,79476,79492,79512,79520,79524,79532,79546,79550,79556,79565,79573,79581,79585,79593],{"__ignoreMap":80},[84,79477,79478,79480,79482,79484,79486,79488,79490],{"class":86,"line":87},[84,79479,91],{"class":90},[84,79481,95],{"class":94},[84,79483,99],{"class":98},[84,79485,1161],{"class":98},[84,79487,184],{"class":90},[84,79489,1166],{"class":118},[84,79491,102],{"class":90},[84,79493,79494,79496,79498,79500,79502,79504,79506,79508,79510],{"class":86,"line":105},[84,79495,132],{"class":108},[84,79497,30072],{"class":135},[84,79499,139],{"class":108},[84,79501,30077],{"class":98},[84,79503,91],{"class":90},[84,79505,6521],{"class":135},[84,79507,30084],{"class":90},[84,79509,26013],{"class":118},[84,79511,30089],{"class":90},[84,79513,79514,79516,79518],{"class":86,"line":122},[84,79515,274],{"class":90},[84,79517,95],{"class":94},[84,79519,102],{"class":90},[84,79521,79522],{"class":86,"line":129},[84,79523,126],{"emptyLinePlaceholder":125},[84,79525,79526,79528,79530],{"class":86,"line":154},[84,79527,91],{"class":90},[84,79529,291],{"class":94},[84,79531,102],{"class":90},[84,79533,79534,79536,79538,79540,79542,79544],{"class":86,"line":159},[84,79535,299],{"class":90},[84,79537,4653],{"class":94},[84,79539,1629],{"class":98},[84,79541,184],{"class":90},[84,79543,30122],{"class":118},[84,79545,102],{"class":90},[84,79547,79548],{"class":86,"line":178},[84,79549,30129],{"class":90},[84,79551,79552,79554],{"class":86,"line":190},[84,79553,1642],{"class":90},[84,79555,12295],{"class":94},[84,79557,79559,79561,79563],{"class":79558,"line":196},[86,10151],[84,79560,30141],{"class":98},[84,79562,184],{"class":90},[84,79564,30146],{"class":118},[84,79566,79567,79569,79571],{"class":86,"line":201},[84,79568,12309],{"class":98},[84,79570,184],{"class":90},[84,79572,30155],{"class":118},[84,79574,79575,79577,79579],{"class":86,"line":217},[84,79576,12319],{"class":98},[84,79578,184],{"class":90},[84,79580,30164],{"class":118},[84,79582,79583],{"class":86,"line":227},[84,79584,30169],{"class":90},[84,79586,79587,79589,79591],{"class":86,"line":232},[84,79588,324],{"class":90},[84,79590,4653],{"class":94},[84,79592,102],{"class":90},[84,79594,79595,79597,79599],{"class":86,"line":237},[84,79596,274],{"class":90},[84,79598,291],{"class":94},[84,79600,102],{"class":90},[74,79602,79603],{"className":76,"code":30188,"filename":30189,"language":79,"meta":80,"style":80},[22,79604,79605,79621,79633,79645,79649,79665,79689,79705,79709,79721,79741,79761,79781,79785,79789,79803,79819,79827,79843,79851,79867,79883,79887,79901,79905,79909,79917,79921,79929,79937,79949,79953,79967,79971,79979,79983,80009,80017,80021,80029,80049,80053,80061,80065,80073,80093,80097,80115,80123,80131,80139],{"__ignoreMap":80},[84,79606,79607,79609,79611,79613,79615,79617,79619],{"class":86,"line":87},[84,79608,91],{"class":90},[84,79610,95],{"class":94},[84,79612,99],{"class":98},[84,79614,1161],{"class":98},[84,79616,184],{"class":90},[84,79618,1166],{"class":118},[84,79620,102],{"class":90},[84,79622,79623,79625,79627,79629,79631],{"class":86,"line":105},[84,79624,109],{"class":108},[84,79626,24087],{"class":90},[84,79628,115],{"class":108},[84,79630,18866],{"class":118},[84,79632,18869],{"class":90},[84,79634,79635,79637,79639,79641,79643],{"class":86,"line":122},[84,79636,109],{"class":108},[84,79638,30226],{"class":90},[84,79640,115],{"class":108},[84,79642,30231],{"class":118},[84,79644,18869],{"class":90},[84,79646,79647],{"class":86,"line":129},[84,79648,126],{"emptyLinePlaceholder":125},[84,79650,79651,79653,79655,79657,79659,79661,79663],{"class":86,"line":154},[84,79652,132],{"class":108},[84,79654,30244],{"class":135},[84,79656,139],{"class":108},[84,79658,142],{"class":98},[84,79660,145],{"class":90},[84,79662,26013],{"class":118},[84,79664,18994],{"class":90},[84,79666,79667,79669,79671,79673,79675,79677,79679,79681,79683,79685,79687],{"class":86,"line":159},[84,79668,132],{"class":108},[84,79670,30261],{"class":135},[84,79672,139],{"class":108},[84,79674,142],{"class":98},[84,79676,91],{"class":90},[84,79678,8732],{"class":135},[84,79680,1261],{"class":108},[84,79682,1264],{"class":135},[84,79684,1267],{"class":90},[84,79686,1270],{"class":135},[84,79688,18994],{"class":90},[84,79690,79691,79693,79695,79697,79699,79701,79703],{"class":86,"line":178},[84,79692,132],{"class":108},[84,79694,30286],{"class":135},[84,79696,139],{"class":108},[84,79698,142],{"class":98},[84,79700,145],{"class":90},[84,79702,148],{"class":135},[84,79704,18994],{"class":90},[84,79706,79707],{"class":86,"line":190},[84,79708,126],{"emptyLinePlaceholder":125},[84,79710,79711,79713,79715,79717,79719],{"class":86,"line":196},[84,79712,132],{"class":108},[84,79714,30307],{"class":135},[84,79716,139],{"class":108},[84,79718,142],{"class":98},[84,79720,2894],{"class":90},[84,79722,79723,79725,79727,79729,79731,79733,79735,79737,79739],{"class":86,"line":201},[84,79724,2899],{"class":90},[84,79726,2862],{"class":135},[84,79728,23323],{"class":90},[84,79730,30324],{"class":118},[84,79732,30327],{"class":90},[84,79734,30330],{"class":135},[84,79736,30333],{"class":90},[84,79738,2938],{"class":135},[84,79740,2921],{"class":90},[84,79742,79743,79745,79747,79749,79751,79753,79755,79757,79759],{"class":86,"line":217},[84,79744,2899],{"class":90},[84,79746,2928],{"class":135},[84,79748,23323],{"class":90},[84,79750,30348],{"class":118},[84,79752,30327],{"class":90},[84,79754,30353],{"class":135},[84,79756,30333],{"class":90},[84,79758,148],{"class":135},[84,79760,2921],{"class":90},[84,79762,79763,79765,79767,79769,79771,79773,79775,79777,79779],{"class":86,"line":227},[84,79764,2899],{"class":90},[84,79766,2952],{"class":135},[84,79768,23323],{"class":90},[84,79770,30370],{"class":118},[84,79772,30327],{"class":90},[84,79774,30375],{"class":135},[84,79776,30333],{"class":90},[84,79778,2938],{"class":135},[84,79780,2921],{"class":90},[84,79782,79783],{"class":86,"line":232},[84,79784,23387],{"class":90},[84,79786,79787],{"class":86,"line":237},[84,79788,126],{"emptyLinePlaceholder":125},[84,79790,79791,79793,79795,79797,79799,79801],{"class":86,"line":253},[84,79792,132],{"class":108},[84,79794,30396],{"class":135},[84,79796,139],{"class":108},[84,79798,2989],{"class":98},[84,79800,2992],{"class":90},[84,79802,4494],{"class":108},[84,79804,79805,79807,79809,79811,79813,79815,79817],{"class":86,"line":266},[84,79806,30409],{"class":90},[84,79808,3006],{"class":98},[84,79810,3120],{"class":90},[84,79812,15],{"class":429},[84,79814,3126],{"class":90},[84,79816,172],{"class":108},[84,79818,175],{"class":90},[84,79820,79821,79823,79825],{"class":86,"line":271},[84,79822,3021],{"class":108},[84,79824,30428],{"class":135},[84,79826,30431],{"class":108},[84,79828,79829,79831,79833,79835,79837,79839,79841],{"class":86,"line":281},[84,79830,30436],{"class":90},[84,79832,3037],{"class":98},[84,79834,6802],{"class":90},[84,79836,3046],{"class":98},[84,79838,30445],{"class":90},[84,79840,3037],{"class":98},[84,79842,30450],{"class":90},[84,79844,79845,79847,79849],{"class":86,"line":286},[84,79846,3021],{"class":108},[84,79848,30457],{"class":135},[84,79850,30431],{"class":108},[84,79852,79853,79855,79857,79859,79861,79863,79865],{"class":86,"line":296},[84,79854,30464],{"class":90},[84,79856,30467],{"class":108},[84,79858,1264],{"class":135},[84,79860,30472],{"class":108},[84,79862,30475],{"class":90},[84,79864,30478],{"class":108},[84,79866,30481],{"class":90},[84,79868,79869,79871,79873,79875,79877,79879,79881],{"class":86,"line":315},[84,79870,3021],{"class":108},[84,79872,30488],{"class":135},[84,79874,139],{"class":108},[84,79876,260],{"class":108},[84,79878,30495],{"class":90},[84,79880,1524],{"class":108},[84,79882,30500],{"class":90},[84,79884,79885],{"class":86,"line":321},[84,79886,126],{"emptyLinePlaceholder":125},[84,79888,79889,79891,79893,79895,79897,79899],{"class":86,"line":331},[84,79890,1903],{"class":108},[84,79892,30511],{"class":90},[84,79894,3096],{"class":108},[84,79896,30516],{"class":90},[84,79898,3096],{"class":108},[84,79900,30521],{"class":90},[84,79902,79903],{"class":86,"line":336},[84,79904,3104],{"class":90},[84,79906,79907],{"class":86,"line":354},[84,79908,18994],{"class":90},[84,79910,79911,79913,79915],{"class":86,"line":360},[84,79912,274],{"class":90},[84,79914,95],{"class":94},[84,79916,102],{"class":90},[84,79918,79919],{"class":86,"line":369},[84,79920,126],{"emptyLinePlaceholder":125},[84,79922,79923,79925,79927],{"class":86,"line":1453},[84,79924,91],{"class":90},[84,79926,291],{"class":94},[84,79928,102],{"class":90},[84,79930,79931,79933,79935],{"class":86,"line":1462},[84,79932,299],{"class":90},[84,79934,4898],{"class":94},[84,79936,102],{"class":90},[84,79938,79939,79941,79943,79945,79947],{"class":86,"line":1484},[84,79940,1642],{"class":90},[84,79942,34],{"class":94},[84,79944,30566],{"class":90},[84,79946,34],{"class":94},[84,79948,102],{"class":90},[84,79950,79951],{"class":86,"line":1489},[84,79952,126],{"emptyLinePlaceholder":125},[84,79954,79955,79957,79959,79961,79963,79965],{"class":86,"line":1495},[84,79956,1642],{"class":90},[84,79958,30038],{"class":94},[84,79960,24454],{"class":98},[84,79962,184],{"class":90},[84,79964,30587],{"class":118},[84,79966,5100],{"class":90},[84,79968,79969],{"class":86,"line":1500},[84,79970,126],{"emptyLinePlaceholder":125},[84,79972,79973,79975,79977],{"class":86,"line":1516},[84,79974,1642],{"class":90},[84,79976,4653],{"class":94},[84,79978,102],{"class":90},[84,79980,79981],{"class":86,"line":1533},[84,79982,30606],{"class":90},[84,79984,79985,79987,79989,79991,79993,79995,79997,79999,80001,80003,80005,80007],{"class":86,"line":1538},[84,79986,1691],{"class":90},[84,79988,18759],{"class":94},[84,79990,29592],{"class":98},[84,79992,184],{"class":90},[84,79994,30619],{"class":118},[84,79996,5046],{"class":98},[84,79998,184],{"class":90},[84,80000,29604],{"class":118},[84,80002,29607],{"class":98},[84,80004,184],{"class":90},[84,80006,29612],{"class":118},[84,80008,5100],{"class":90},[84,80010,80011,80013,80015],{"class":86,"line":1545},[84,80012,1734],{"class":90},[84,80014,4653],{"class":94},[84,80016,102],{"class":90},[84,80018,80019],{"class":86,"line":1554},[84,80020,126],{"emptyLinePlaceholder":125},[84,80022,80023,80025,80027],{"class":86,"line":1563},[84,80024,1642],{"class":90},[84,80026,4653],{"class":94},[84,80028,102],{"class":90},[84,80030,80031,80033,80035,80037,80039,80041,80043,80045,80047],{"class":86,"line":1570},[84,80032,1691],{"class":90},[84,80034,18759],{"class":94},[84,80036,24454],{"class":98},[84,80038,184],{"class":90},[84,80040,30666],{"class":118},[84,80042,5046],{"class":98},[84,80044,184],{"class":90},[84,80046,29874],{"class":118},[84,80048,5100],{"class":90},[84,80050,80051],{"class":86,"line":1588},[84,80052,30679],{"class":90},[84,80054,80055,80057,80059],{"class":86,"line":1593},[84,80056,1734],{"class":90},[84,80058,4653],{"class":94},[84,80060,102],{"class":90},[84,80062,80063],{"class":86,"line":1598},[84,80064,126],{"emptyLinePlaceholder":125},[84,80066,80067,80069,80071],{"class":86,"line":1607},[84,80068,1642],{"class":90},[84,80070,737],{"class":94},[84,80072,102],{"class":90},[84,80074,80075,80077,80079,80081,80083,80085,80087,80089,80091],{"class":86,"line":1612},[84,80076,1691],{"class":90},[84,80078,740],{"class":94},[84,80080,13525],{"class":98},[84,80082,184],{"class":90},[84,80084,30712],{"class":118},[84,80086,5092],{"class":98},[84,80088,184],{"class":90},[84,80090,30719],{"class":118},[84,80092,102],{"class":90},[84,80094,80095],{"class":86,"line":1621},[84,80096,30726],{"class":90},[84,80098,80099,80101,80103,80105,80107,80109,80111,80113],{"class":86,"line":1639},[84,80100,27377],{"class":90},[84,80102,84],{"class":94},[84,80104,344],{"class":98},[84,80106,184],{"class":90},[84,80108,30739],{"class":118},[84,80110,30742],{"class":90},[84,80112,84],{"class":94},[84,80114,102],{"class":90},[84,80116,80117,80119,80121],{"class":86,"line":1661},[84,80118,4952],{"class":90},[84,80120,740],{"class":94},[84,80122,102],{"class":90},[84,80124,80125,80127,80129],{"class":86,"line":1666},[84,80126,1734],{"class":90},[84,80128,737],{"class":94},[84,80130,102],{"class":90},[84,80132,80133,80135,80137],{"class":86,"line":1688},[84,80134,324],{"class":90},[84,80136,4898],{"class":94},[84,80138,102],{"class":90},[84,80140,80141,80143,80145],{"class":86,"line":1703},[84,80142,274],{"class":90},[84,80144,291],{"class":94},[84,80146,102],{"class":90},[1074,80148,28143],{"id":28142},[15,80150,30783,80151,2488,80153,1203],{},[22,80152,28916],{},[22,80154,28922],{},[74,80156,80157],{"className":76,"code":30790,"filename":30046,"language":79,"meta":80,"style":80},[22,80158,80159,80173,80181,80189,80193,80197,80201,80209,80213,80217,80225,80229,80237,80241,80249,80263,80267,80273,80281,80289,80297,80305,80309,80317],{"__ignoreMap":80},[84,80160,80161,80163,80165,80167,80169,80171],{"class":86,"line":87},[84,80162,91],{"class":90},[84,80164,95],{"class":94},[84,80166,1161],{"class":98},[84,80168,184],{"class":90},[84,80170,1166],{"class":118},[84,80172,102],{"class":90},[84,80174,80175,80177,80179],{"class":86,"line":105},[84,80176,418],{"class":108},[84,80178,1870],{"class":108},[84,80180,175],{"class":90},[84,80182,80183,80185,80187],{"class":86,"line":122},[84,80184,1881],{"class":90},[84,80186,30821],{"class":118},[84,80188,1887],{"class":90},[84,80190,80191],{"class":86,"line":129},[84,80192,28172],{"class":90},[84,80194,80195],{"class":86,"line":154},[84,80196,30832],{"class":90},[84,80198,80199],{"class":86,"line":159},[84,80200,30837],{"class":90},[84,80202,80203,80205,80207],{"class":86,"line":178},[84,80204,30842],{"class":90},[84,80206,26013],{"class":118},[84,80208,1887],{"class":90},[84,80210,80211],{"class":86,"line":190},[84,80212,7783],{"class":90},[84,80214,80215],{"class":86,"line":196},[84,80216,1941],{"class":90},[84,80218,80219,80221,80223],{"class":86,"line":201},[84,80220,30859],{"class":90},[84,80222,30862],{"class":118},[84,80224,30865],{"class":90},[84,80226,80227],{"class":86,"line":217},[84,80228,18973],{"class":90},[84,80230,80231,80233,80235],{"class":86,"line":227},[84,80232,274],{"class":90},[84,80234,95],{"class":94},[84,80236,102],{"class":90},[84,80238,80239],{"class":86,"line":232},[84,80240,126],{"emptyLinePlaceholder":125},[84,80242,80243,80245,80247],{"class":86,"line":237},[84,80244,91],{"class":90},[84,80246,291],{"class":94},[84,80248,102],{"class":90},[84,80250,80251,80253,80255,80257,80259,80261],{"class":86,"line":253},[84,80252,299],{"class":90},[84,80254,4653],{"class":94},[84,80256,1629],{"class":98},[84,80258,184],{"class":90},[84,80260,30122],{"class":118},[84,80262,102],{"class":90},[84,80264,80265],{"class":86,"line":266},[84,80266,30129],{"class":90},[84,80268,80269,80271],{"class":86,"line":271},[84,80270,1642],{"class":90},[84,80272,12295],{"class":94},[84,80274,80275,80277,80279],{"class":86,"line":281},[84,80276,30918],{"class":98},[84,80278,184],{"class":90},[84,80280,30923],{"class":118},[84,80282,80283,80285,80287],{"class":86,"line":286},[84,80284,12309],{"class":98},[84,80286,184],{"class":90},[84,80288,30155],{"class":118},[84,80290,80291,80293,80295],{"class":86,"line":296},[84,80292,12319],{"class":98},[84,80294,184],{"class":90},[84,80296,30164],{"class":118},[84,80298,80299,80301,80303],{"class":86,"line":315},[84,80300,30944],{"class":98},[84,80302,184],{"class":90},[84,80304,30949],{"class":118},[84,80306,80307],{"class":86,"line":321},[84,80308,30169],{"class":90},[84,80310,80311,80313,80315],{"class":86,"line":331},[84,80312,324],{"class":90},[84,80314,4653],{"class":94},[84,80316,102],{"class":90},[84,80318,80319,80321,80323],{"class":86,"line":336},[84,80320,274],{"class":90},[84,80322,291],{"class":94},[84,80324,102],{"class":90},[74,80326,80327],{"className":76,"code":30972,"filename":30189,"language":79,"meta":80,"style":80},[22,80328,80329,80343,80355,80359,80367,80375,80379,80385,80391,80399,80407,80415,80419,80439,80459,80479,80483,80487,80491,80495,80501,80521,80531,80539,80555,80563,80587,80605,80609,80623,80627,80631,80635,80639,80647,80651,80659,80667,80679,80683,80697,80701,80709,80713,80739,80747,80751,80759,80779,80783,80791,80795,80803,80823,80827,80845,80853,80861,80869],{"__ignoreMap":80},[84,80330,80331,80333,80335,80337,80339,80341],{"class":86,"line":87},[84,80332,91],{"class":90},[84,80334,95],{"class":94},[84,80336,1161],{"class":98},[84,80338,184],{"class":90},[84,80340,1166],{"class":118},[84,80342,102],{"class":90},[84,80344,80345,80347,80349,80351,80353],{"class":86,"line":105},[84,80346,109],{"class":108},[84,80348,30226],{"class":90},[84,80350,115],{"class":108},[84,80352,30231],{"class":118},[84,80354,18869],{"class":90},[84,80356,80357],{"class":86,"line":122},[84,80358,126],{"emptyLinePlaceholder":125},[84,80360,80361,80363,80365],{"class":86,"line":129},[84,80362,418],{"class":108},[84,80364,1870],{"class":108},[84,80366,175],{"class":90},[84,80368,80369,80371,80373],{"class":86,"line":154},[84,80370,1881],{"class":90},[84,80372,31019],{"class":118},[84,80374,1887],{"class":90},[84,80376,80377],{"class":86,"line":159},[84,80378,31026],{"class":90},[84,80380,80381,80383],{"class":86,"line":178},[84,80382,1896],{"class":98},[84,80384,1307],{"class":90},[84,80386,80387,80389],{"class":86,"line":190},[84,80388,1903],{"class":108},[84,80390,175],{"class":90},[84,80392,80393,80395,80397],{"class":86,"line":196},[84,80394,31043],{"class":90},[84,80396,26013],{"class":118},[84,80398,1887],{"class":90},[84,80400,80401,80403,80405],{"class":86,"line":201},[84,80402,31052],{"class":90},[84,80404,1270],{"class":135},[84,80406,1887],{"class":90},[84,80408,80409,80411,80413],{"class":86,"line":217},[84,80410,31061],{"class":90},[84,80412,148],{"class":135},[84,80414,1887],{"class":90},[84,80416,80417],{"class":86,"line":227},[84,80418,31070],{"class":90},[84,80420,80421,80423,80425,80427,80429,80431,80433,80435,80437],{"class":86,"line":232},[84,80422,3449],{"class":90},[84,80424,2862],{"class":135},[84,80426,23323],{"class":90},[84,80428,30324],{"class":118},[84,80430,30327],{"class":90},[84,80432,30330],{"class":135},[84,80434,30333],{"class":90},[84,80436,2938],{"class":135},[84,80438,2921],{"class":90},[84,80440,80441,80443,80445,80447,80449,80451,80453,80455,80457],{"class":86,"line":237},[84,80442,3449],{"class":90},[84,80444,2928],{"class":135},[84,80446,23323],{"class":90},[84,80448,30348],{"class":118},[84,80450,30327],{"class":90},[84,80452,30353],{"class":135},[84,80454,30333],{"class":90},[84,80456,148],{"class":135},[84,80458,2921],{"class":90},[84,80460,80461,80463,80465,80467,80469,80471,80473,80475,80477],{"class":86,"line":253},[84,80462,3449],{"class":90},[84,80464,2952],{"class":135},[84,80466,23323],{"class":90},[84,80468,30370],{"class":118},[84,80470,30327],{"class":90},[84,80472,30375],{"class":135},[84,80474,30333],{"class":90},[84,80476,2938],{"class":135},[84,80478,2921],{"class":90},[84,80480,80481],{"class":86,"line":266},[84,80482,10927],{"class":90},[84,80484,80485],{"class":86,"line":271},[84,80486,19195],{"class":90},[84,80488,80489],{"class":86,"line":281},[84,80490,1941],{"class":90},[84,80492,80493],{"class":86,"line":286},[84,80494,3527],{"class":90},[84,80496,80497,80499],{"class":86,"line":296},[84,80498,31151],{"class":98},[84,80500,1307],{"class":90},[84,80502,80503,80505,80507,80509,80511,80513,80515,80517,80519],{"class":86,"line":315},[84,80504,3539],{"class":108},[84,80506,2078],{"class":135},[84,80508,31162],{"class":90},[84,80510,3006],{"class":98},[84,80512,3120],{"class":90},[84,80514,15],{"class":429},[84,80516,3126],{"class":90},[84,80518,172],{"class":108},[84,80520,175],{"class":90},[84,80522,80523,80525,80527,80529],{"class":86,"line":321},[84,80524,3559],{"class":108},[84,80526,30428],{"class":135},[84,80528,139],{"class":108},[84,80530,31185],{"class":90},[84,80532,80533,80535,80537],{"class":86,"line":331},[84,80534,3570],{"class":90},[84,80536,3037],{"class":98},[84,80538,635],{"class":90},[84,80540,80541,80543,80545,80547,80549,80551,80553],{"class":86,"line":336},[84,80542,3570],{"class":90},[84,80544,3046],{"class":98},[84,80546,145],{"class":90},[84,80548,2151],{"class":135},[84,80550,31206],{"class":90},[84,80552,3037],{"class":98},[84,80554,30450],{"class":90},[84,80556,80557,80559,80561],{"class":86,"line":354},[84,80558,3559],{"class":108},[84,80560,30457],{"class":135},[84,80562,30431],{"class":108},[84,80564,80565,80567,80569,80571,80573,80575,80577,80579,80581,80583,80585],{"class":86,"line":360},[84,80566,31223],{"class":135},[84,80568,31226],{"class":90},[84,80570,30467],{"class":108},[84,80572,1264],{"class":135},[84,80574,30472],{"class":108},[84,80576,30475],{"class":90},[84,80578,30478],{"class":108},[84,80580,31239],{"class":98},[84,80582,145],{"class":90},[84,80584,2151],{"class":135},[84,80586,31246],{"class":90},[84,80588,80589,80591,80593,80595,80597,80599,80601,80603],{"class":86,"line":369},[84,80590,3559],{"class":108},[84,80592,30488],{"class":135},[84,80594,139],{"class":108},[84,80596,260],{"class":108},[84,80598,2151],{"class":135},[84,80600,31261],{"class":90},[84,80602,1524],{"class":108},[84,80604,30500],{"class":90},[84,80606,80607],{"class":86,"line":1453},[84,80608,126],{"emptyLinePlaceholder":125},[84,80610,80611,80613,80615,80617,80619,80621],{"class":86,"line":1462},[84,80612,3627],{"class":108},[84,80614,30511],{"class":90},[84,80616,3096],{"class":108},[84,80618,30516],{"class":90},[84,80620,3096],{"class":108},[84,80622,30521],{"class":90},[84,80624,80625],{"class":86,"line":1484},[84,80626,31288],{"class":90},[84,80628,80629],{"class":86,"line":1489},[84,80630,7783],{"class":90},[84,80632,80633],{"class":86,"line":1495},[84,80634,1941],{"class":90},[84,80636,80637],{"class":86,"line":1500},[84,80638,18973],{"class":90},[84,80640,80641,80643,80645],{"class":86,"line":1516},[84,80642,274],{"class":90},[84,80644,95],{"class":94},[84,80646,102],{"class":90},[84,80648,80649],{"class":86,"line":1533},[84,80650,126],{"emptyLinePlaceholder":125},[84,80652,80653,80655,80657],{"class":86,"line":1538},[84,80654,91],{"class":90},[84,80656,291],{"class":94},[84,80658,102],{"class":90},[84,80660,80661,80663,80665],{"class":86,"line":1545},[84,80662,299],{"class":90},[84,80664,4898],{"class":94},[84,80666,102],{"class":90},[84,80668,80669,80671,80673,80675,80677],{"class":86,"line":1554},[84,80670,1642],{"class":90},[84,80672,34],{"class":94},[84,80674,30566],{"class":90},[84,80676,34],{"class":94},[84,80678,102],{"class":90},[84,80680,80681],{"class":86,"line":1563},[84,80682,126],{"emptyLinePlaceholder":125},[84,80684,80685,80687,80689,80691,80693,80695],{"class":86,"line":1570},[84,80686,1642],{"class":90},[84,80688,30038],{"class":94},[84,80690,24454],{"class":98},[84,80692,184],{"class":90},[84,80694,30587],{"class":118},[84,80696,5100],{"class":90},[84,80698,80699],{"class":86,"line":1588},[84,80700,126],{"emptyLinePlaceholder":125},[84,80702,80703,80705,80707],{"class":86,"line":1593},[84,80704,1642],{"class":90},[84,80706,4653],{"class":94},[84,80708,102],{"class":90},[84,80710,80711],{"class":86,"line":1598},[84,80712,30606],{"class":90},[84,80714,80715,80717,80719,80721,80723,80725,80727,80729,80731,80733,80735,80737],{"class":86,"line":1607},[84,80716,1691],{"class":90},[84,80718,18759],{"class":94},[84,80720,29592],{"class":98},[84,80722,184],{"class":90},[84,80724,30619],{"class":118},[84,80726,5046],{"class":98},[84,80728,184],{"class":90},[84,80730,29604],{"class":118},[84,80732,29607],{"class":98},[84,80734,184],{"class":90},[84,80736,29612],{"class":118},[84,80738,5100],{"class":90},[84,80740,80741,80743,80745],{"class":86,"line":1612},[84,80742,1734],{"class":90},[84,80744,4653],{"class":94},[84,80746,102],{"class":90},[84,80748,80749],{"class":86,"line":1621},[84,80750,126],{"emptyLinePlaceholder":125},[84,80752,80753,80755,80757],{"class":86,"line":1639},[84,80754,1642],{"class":90},[84,80756,4653],{"class":94},[84,80758,102],{"class":90},[84,80760,80761,80763,80765,80767,80769,80771,80773,80775,80777],{"class":86,"line":1661},[84,80762,1691],{"class":90},[84,80764,18759],{"class":94},[84,80766,24454],{"class":98},[84,80768,184],{"class":90},[84,80770,30666],{"class":118},[84,80772,5046],{"class":98},[84,80774,184],{"class":90},[84,80776,29874],{"class":118},[84,80778,5100],{"class":90},[84,80780,80781],{"class":86,"line":1666},[84,80782,30679],{"class":90},[84,80784,80785,80787,80789],{"class":86,"line":1688},[84,80786,1734],{"class":90},[84,80788,4653],{"class":94},[84,80790,102],{"class":90},[84,80792,80793],{"class":86,"line":1703},[84,80794,126],{"emptyLinePlaceholder":125},[84,80796,80797,80799,80801],{"class":86,"line":1717},[84,80798,1642],{"class":90},[84,80800,737],{"class":94},[84,80802,102],{"class":90},[84,80804,80805,80807,80809,80811,80813,80815,80817,80819,80821],{"class":86,"line":1731},[84,80806,1691],{"class":90},[84,80808,740],{"class":94},[84,80810,13525],{"class":98},[84,80812,184],{"class":90},[84,80814,30712],{"class":118},[84,80816,5092],{"class":98},[84,80818,184],{"class":90},[84,80820,30719],{"class":118},[84,80822,102],{"class":90},[84,80824,80825],{"class":86,"line":1741},[84,80826,30726],{"class":90},[84,80828,80829,80831,80833,80835,80837,80839,80841,80843],{"class":86,"line":1746},[84,80830,27377],{"class":90},[84,80832,84],{"class":94},[84,80834,344],{"class":98},[84,80836,184],{"class":90},[84,80838,30739],{"class":118},[84,80840,30742],{"class":90},[84,80842,84],{"class":94},[84,80844,102],{"class":90},[84,80846,80847,80849,80851],{"class":86,"line":1763},[84,80848,4952],{"class":90},[84,80850,740],{"class":94},[84,80852,102],{"class":90},[84,80854,80855,80857,80859],{"class":86,"line":1772},[84,80856,1734],{"class":90},[84,80858,737],{"class":94},[84,80860,102],{"class":90},[84,80862,80863,80865,80867],{"class":86,"line":2283},[84,80864,324],{"class":90},[84,80866,4898],{"class":94},[84,80868,102],{"class":90},[84,80870,80871,80873,80875],{"class":86,"line":2288},[84,80872,274],{"class":90},[84,80874,291],{"class":94},[84,80876,102],{"class":90},[34,80878,2406],{"id":2405},[15,80880,80881,31545],{},[22,80882,18689],{},[15,80884,31548],{},[15,80886,22533],{},[737,80888,80889,80893,80901,80909],{},[740,80890,31555,80891,31558],{},[22,80892,28839],{},[740,80894,31561,80895,6014,80897,29094,80899,764],{},[22,80896,28916],{},[22,80898,28922],{},[22,80900,29097],{},[740,80902,31570,80903,754,80905,754,80907,31577],{},[22,80904,28941],{},[22,80906,28946],{},[22,80908,28951],{},[740,80910,31580],{},[835,80912,3902],{},{"title":80,"searchDepth":105,"depth":105,"links":80914},[80915,80916,80920,80921,80922,80928,80929,80930,80931,80935],{"id":21333,"depth":105,"text":21334},{"id":946,"depth":105,"text":947,"children":80917},[80918,80919],{"id":28859,"depth":122,"text":28860},{"id":28904,"depth":122,"text":28905},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":783,"depth":105,"text":784,"children":80923},[80924,80925,80926,80927],{"id":29022,"depth":122,"text":29023},{"id":29105,"depth":122,"text":31596},{"id":29179,"depth":122,"text":29180},{"id":29208,"depth":122,"text":29209},{"id":29220,"depth":105,"text":29221},{"id":29482,"depth":105,"text":31601},{"id":29769,"depth":105,"text":29770},{"id":30030,"depth":105,"text":30031,"children":80932},[80933,80934],{"id":27552,"depth":122,"text":27553},{"id":28142,"depth":122,"text":28143},{"id":2405,"depth":105,"text":2406},{"updatedAt":31613,"coverCaption":18477,"author":868,"keywords":80937},[870,18689,31615,31616,873,1782],[80939],{"headline":31620,"author":80940,"datePublished":31613,"@type":880},{"name":868,"@type":879},{"title":28806,"description":31611},[80943,80944,80945,80946],{"tag":21297,"color":21298},{"tag":31627,"color":31628},{"tag":3945,"color":3946},{"tag":894,"color":895},{"id":31633,"title":31634,"body":80948,"cover":34634,"coverAlt":34635,"date":34636,"description":34637,"draft":852,"extension":853,"lab":882,"locale":864,"meta":83734,"navigation":125,"path":34643,"schemaOrg":83736,"seo":83739,"series":21291,"seriesDescription":21292,"seriesOrder":154,"seriesTitle":21293,"slug":882,"stem":34649,"tags":83740,"__hash__":34656},{"type":8,"value":80949,"toc":83714},[80950,80954,80960,80962,80968,80976,80982,80984,80986,81016,81018,81046,81050,81088,81090,81094,81096,81118,81120,81124,81134,81138,81140,81142,81144,81174,81178,81206,81210,81212,81236,81238,81266,81272,81274,81276,81334,81336,81364,81366,81370,81372,81398,81400,81426,81430,81432,81434,81535,81642,81646,81840,82048,82050,82182,82326,82328,82441,82570,82572,82574,82588,83160,83684,83686,83690,83692,83712],[11,80951,21314,80952],{"id":31639},[22,80953,18695],{},[15,80955,80956,31646,80958,31649],{},[22,80957,18695],{},[22,80959,18695],{},[34,80961,21334],{"id":21333},[15,80963,16664,80964,31656,80966,31659],{},[22,80965,18695],{},[22,80967,18695],{},[737,80969,80970,80972,80974],{},[740,80971,31664],{},[740,80973,31667],{},[740,80975,31670],{},[823,80977,80978],{},[15,80979,80980,31677],{},[22,80981,18695],{},[34,80983,25350],{"id":25349},[15,80985,31682],{},[74,80987,80988],{"className":76,"code":31685,"filename":10092,"language":79,"meta":80,"style":80},[22,80989,80990],{"__ignoreMap":80},[84,80991,80992,80994,80996,80998,81000,81002,81004,81006,81008,81010,81012,81014],{"class":86,"line":87},[84,80993,91],{"class":90},[84,80995,302],{"class":94},[84,80997,31696],{"class":98},[84,80999,1203],{"class":90},[84,81001,31701],{"class":98},[84,81003,184],{"class":90},[84,81005,1678],{"class":118},[84,81007,31708],{"class":90},[84,81009,1678],{"class":118},[84,81011,31713],{"class":90},[84,81013,302],{"class":94},[84,81015,102],{"class":90},[15,81017,31720],{},[74,81019,81020],{"className":76,"code":31723,"filename":10092,"language":79,"meta":80,"style":80},[22,81021,81022],{"__ignoreMap":80},[84,81023,81024,81026,81028,81030,81032,81034,81036,81038,81040,81042,81044],{"class":86,"line":87},[84,81025,91],{"class":90},[84,81027,302],{"class":94},[84,81029,31734],{"class":90},[84,81031,31701],{"class":98},[84,81033,184],{"class":90},[84,81035,1678],{"class":118},[84,81037,31708],{"class":90},[84,81039,1678],{"class":118},[84,81041,31713],{"class":90},[84,81043,302],{"class":94},[84,81045,102],{"class":90},[15,81047,81048,31755],{},[22,81049,18695],{},[737,81051,81052,81062,81068,81078],{},[740,81053,31760,81054,754,81056,754,81058,754,81060,2686],{},[22,81055,31701],{},[22,81057,18759],{},[22,81059,31767],{},[22,81061,31770],{},[740,81063,31773,81064,754,81066,2686],{},[22,81065,31776],{},[22,81067,31779],{},[740,81069,31782,81070,754,81072,754,81074,754,81076,2686],{},[22,81071,31785],{},[22,81073,31788],{},[22,81075,31791],{},[22,81077,31794],{},[740,81079,31797,81080,754,81082,31804,81084,754,81086,2599],{},[22,81081,31800],{},[22,81083,31803],{},[22,81085,31807],{},[22,81087,31810],{},[34,81089,1013],{"id":1012},[15,81091,21486,81092,31817],{},[22,81093,18695],{},[15,81095,4083],{},[737,81097,81098,81102,81106,81110,81114],{},[740,81099,31824,81100,2686],{},[22,81101,31827],{},[740,81103,31830,81104,2686],{},[22,81105,31833],{},[740,81107,31836,81108,2686],{},[22,81109,31839],{},[740,81111,18526,81112,2686],{},[22,81113,31844],{},[740,81115,31847,81116,2686],{},[22,81117,31850],{},[34,81119,1040],{"id":1039},[15,81121,8425,81122,31857],{},[22,81123,18695],{},[737,81125,81126,81128,81132],{},[740,81127,31862],{},[740,81129,31865,81130,764],{},[22,81131,2523],{},[740,81133,31870],{},[823,81135,81136],{},[15,81137,31875],{},[34,81139,784],{"id":783},[1074,81141,31881],{"id":31880},[15,81143,25589],{},[74,81145,81146],{"className":76,"code":31886,"filename":29029,"language":79,"meta":80,"style":80},[22,81147,81148],{"__ignoreMap":80},[84,81149,81150,81152,81154,81156,81158,81160,81162,81164,81166,81168,81170,81172],{"class":86,"line":87},[84,81151,91],{"class":90},[84,81153,302],{"class":94},[84,81155,31734],{"class":90},[84,81157,31701],{"class":98},[84,81159,184],{"class":90},[84,81161,1678],{"class":118},[84,81163,31905],{"class":98},[84,81165,29137],{"class":90},[84,81167,1678],{"class":118},[84,81169,31912],{"class":90},[84,81171,302],{"class":94},[84,81173,102],{"class":90},[15,81175,31919,81176,31923],{},[958,81177,31922],{},[74,81179,81180],{"className":76,"code":31926,"filename":29155,"language":79,"meta":80,"style":80},[22,81181,81182],{"__ignoreMap":80},[84,81183,81184,81186,81188,81190,81192,81194,81196,81198,81200,81202,81204],{"class":86,"line":87},[84,81185,91],{"class":90},[84,81187,302],{"class":94},[84,81189,31734],{"class":90},[84,81191,31701],{"class":98},[84,81193,184],{"class":90},[84,81195,1678],{"class":118},[84,81197,31905],{"class":90},[84,81199,1678],{"class":118},[84,81201,31912],{"class":90},[84,81203,302],{"class":94},[84,81205,102],{"class":90},[1074,81207,31956,81208,31959],{"id":31955},[22,81209,31785],{},[15,81211,25589],{},[74,81213,81214],{"className":76,"code":31964,"filename":29029,"language":79,"meta":80,"style":80},[22,81215,81216],{"__ignoreMap":80},[84,81217,81218,81220,81222,81224,81226,81228,81230,81232,81234],{"class":86,"line":87},[84,81219,91],{"class":90},[84,81221,31973],{"class":94},[84,81223,31734],{"class":90},[84,81225,31767],{"class":98},[84,81227,184],{"class":90},[84,81229,1678],{"class":118},[84,81231,31984],{"class":90},[84,81233,1678],{"class":118},[84,81235,102],{"class":90},[15,81237,29151],{},[74,81239,81240],{"className":76,"code":31993,"filename":29155,"language":79,"meta":80,"style":80},[22,81241,81242],{"__ignoreMap":80},[84,81243,81244,81246,81248,81250,81252,81254,81256,81258,81260,81262,81264],{"class":86,"line":87},[84,81245,91],{"class":90},[84,81247,31973],{"class":94},[84,81249,31734],{"class":90},[84,81251,31767],{"class":98},[84,81253,764],{"class":90},[84,81255,32010],{"class":98},[84,81257,184],{"class":90},[84,81259,1678],{"class":118},[84,81261,31984],{"class":90},[84,81263,1678],{"class":118},[84,81265,102],{"class":90},[823,81267,81268],{},[15,81269,16664,81270,32027],{},[22,81271,31785],{},[1074,81273,32031],{"id":32030},[15,81275,32034],{},[74,81277,81278],{"className":76,"code":32037,"filename":29029,"language":79,"meta":80,"style":80},[22,81279,81280,81322,81326],{"__ignoreMap":80},[84,81281,81282,81284,81286,81288,81290,81292,81294,81296,81298,81300,81302,81304,81306,81308,81310,81312,81314,81316,81318,81320],{"class":86,"line":87},[84,81283,91],{"class":90},[84,81285,302],{"class":94},[84,81287,31734],{"class":90},[84,81289,31701],{"class":98},[84,81291,184],{"class":90},[84,81293,1678],{"class":118},[84,81295,32056],{"class":90},[84,81297,3096],{"class":108},[84,81299,32061],{"class":90},[84,81301,3096],{"class":108},[84,81303,260],{"class":108},[84,81305,32068],{"class":90},[84,81307,3073],{"class":108},[84,81309,32073],{"class":98},[84,81311,8890],{"class":90},[84,81313,1203],{"class":108},[84,81315,32080],{"class":98},[84,81317,29137],{"class":90},[84,81319,1678],{"class":118},[84,81321,102],{"class":90},[84,81323,81324],{"class":86,"line":105},[84,81325,32091],{"class":90},[84,81327,81328,81330,81332],{"class":86,"line":122},[84,81329,274],{"class":90},[84,81331,302],{"class":94},[84,81333,102],{"class":90},[15,81335,32102],{},[74,81337,81338],{"className":76,"code":32105,"filename":29155,"language":79,"meta":80,"style":80},[22,81339,81340],{"__ignoreMap":80},[84,81341,81342,81344,81346,81348,81350,81352,81354,81356,81358,81360,81362],{"class":86,"line":87},[84,81343,91],{"class":90},[84,81345,302],{"class":94},[84,81347,31734],{"class":90},[84,81349,31701],{"class":98},[84,81351,184],{"class":90},[84,81353,1678],{"class":118},[84,81355,32124],{"class":90},[84,81357,1678],{"class":118},[84,81359,32129],{"class":90},[84,81361,302],{"class":94},[84,81363,102],{"class":90},[15,81365,32136],{},[1074,81367,32140,81368,32143],{"id":32139},[22,81369,3123],{},[15,81371,25589],{},[74,81373,81374],{"className":76,"code":32148,"filename":29029,"language":79,"meta":80,"style":80},[22,81375,81376],{"__ignoreMap":80},[84,81377,81378,81380,81382,81384,81386,81388,81390,81392,81394,81396],{"class":86,"line":87},[84,81379,91],{"class":90},[84,81381,18759],{"class":94},[84,81383,31734],{"class":90},[84,81385,18759],{"class":98},[84,81387,184],{"class":90},[84,81389,1678],{"class":118},[84,81391,32167],{"class":98},[84,81393,32170],{"class":90},[84,81395,1678],{"class":118},[84,81397,5100],{"class":90},[15,81399,29151],{},[74,81401,81402],{"className":76,"code":32179,"filename":29155,"language":79,"meta":80,"style":80},[22,81403,81404],{"__ignoreMap":80},[84,81405,81406,81408,81410,81412,81414,81416,81418,81420,81422,81424],{"class":86,"line":87},[84,81407,91],{"class":90},[84,81409,18759],{"class":94},[84,81411,31734],{"class":90},[84,81413,18759],{"class":98},[84,81415,184],{"class":90},[84,81417,1678],{"class":118},[84,81419,32167],{"class":98},[84,81421,32200],{"class":90},[84,81423,1678],{"class":118},[84,81425,5100],{"class":90},[15,81427,32207,81428,32210],{},[22,81429,2574],{},[34,81431,2736],{"id":2735},[1074,81433,32216],{"id":32215},[74,81435,81437],{"className":76,"code":32219,"filename":873,"highlights":81436,"language":79,"meta":80,"style":80},[129,190],[22,81438,81439,81455,81467,81471,81488,81496,81500,81508,81527],{"__ignoreMap":80},[84,81440,81441,81443,81445,81447,81449,81451,81453],{"class":86,"line":87},[84,81442,91],{"class":90},[84,81444,95],{"class":94},[84,81446,99],{"class":98},[84,81448,1161],{"class":98},[84,81450,184],{"class":90},[84,81452,1166],{"class":118},[84,81454,102],{"class":90},[84,81456,81457,81459,81461,81463,81465],{"class":86,"line":105},[84,81458,109],{"class":108},[84,81460,112],{"class":90},[84,81462,115],{"class":108},[84,81464,18866],{"class":118},[84,81466,18869],{"class":90},[84,81468,81469],{"class":86,"line":122},[84,81470,126],{"emptyLinePlaceholder":125},[84,81472,81474,81476,81478,81480,81482,81484,81486],{"class":81473,"line":129},[86,10151],[84,81475,132],{"class":108},[84,81477,10133],{"class":135},[84,81479,139],{"class":108},[84,81481,142],{"class":98},[84,81483,145],{"class":90},[84,81485,4320],{"class":135},[84,81487,18994],{"class":90},[84,81489,81490,81492,81494],{"class":86,"line":154},[84,81491,274],{"class":90},[84,81493,95],{"class":94},[84,81495,102],{"class":90},[84,81497,81498],{"class":86,"line":159},[84,81499,126],{"emptyLinePlaceholder":125},[84,81501,81502,81504,81506],{"class":86,"line":178},[84,81503,91],{"class":90},[84,81505,291],{"class":94},[84,81507,102],{"class":90},[84,81509,81511,81513,81515,81517,81519,81521,81523,81525],{"class":81510,"line":190},[86,10151],[84,81512,299],{"class":90},[84,81514,302],{"class":94},[84,81516,305],{"class":98},[84,81518,184],{"class":90},[84,81520,13204],{"class":118},[84,81522,32307],{"class":90},[84,81524,302],{"class":94},[84,81526,102],{"class":90},[84,81528,81529,81531,81533],{"class":86,"line":196},[84,81530,274],{"class":90},[84,81532,291],{"class":94},[84,81534,102],{"class":90},[74,81536,81538],{"className":76,"code":32322,"filename":1782,"highlights":81537,"language":79,"meta":80,"style":80},[154,227],[22,81539,81540,81554,81562,81568,81574,81583,81587,81591,81595,81603,81607,81615,81634],{"__ignoreMap":80},[84,81541,81542,81544,81546,81548,81550,81552],{"class":86,"line":87},[84,81543,91],{"class":90},[84,81545,95],{"class":94},[84,81547,1161],{"class":98},[84,81549,184],{"class":90},[84,81551,1166],{"class":118},[84,81553,102],{"class":90},[84,81555,81556,81558,81560],{"class":86,"line":105},[84,81557,418],{"class":108},[84,81559,1870],{"class":108},[84,81561,175],{"class":90},[84,81563,81564,81566],{"class":86,"line":122},[84,81565,1896],{"class":98},[84,81567,1307],{"class":90},[84,81569,81570,81572],{"class":86,"line":129},[84,81571,1903],{"class":108},[84,81573,175],{"class":90},[84,81575,81577,81579,81581],{"class":81576,"line":154},[86,10151],[84,81578,32365],{"class":90},[84,81580,4320],{"class":135},[84,81582,1887],{"class":90},[84,81584,81585],{"class":86,"line":159},[84,81586,19195],{"class":90},[84,81588,81589],{"class":86,"line":178},[84,81590,1941],{"class":90},[84,81592,81593],{"class":86,"line":190},[84,81594,18973],{"class":90},[84,81596,81597,81599,81601],{"class":86,"line":196},[84,81598,274],{"class":90},[84,81600,95],{"class":94},[84,81602,102],{"class":90},[84,81604,81605],{"class":86,"line":201},[84,81606,126],{"emptyLinePlaceholder":125},[84,81608,81609,81611,81613],{"class":86,"line":217},[84,81610,91],{"class":90},[84,81612,291],{"class":94},[84,81614,102],{"class":90},[84,81616,81618,81620,81622,81624,81626,81628,81630,81632],{"class":81617,"line":227},[86,10151],[84,81619,299],{"class":90},[84,81621,302],{"class":94},[84,81623,305],{"class":98},[84,81625,184],{"class":90},[84,81627,13204],{"class":118},[84,81629,32307],{"class":90},[84,81631,302],{"class":94},[84,81633,102],{"class":90},[84,81635,81636,81638,81640],{"class":86,"line":232},[84,81637,274],{"class":90},[84,81639,291],{"class":94},[84,81641,102],{"class":90},[1074,81643,32432,81644],{"id":32431},[22,81645,31785],{},[74,81647,81649],{"className":76,"code":32437,"filename":873,"highlights":81648,"language":79,"meta":80,"style":80},[232],[22,81650,81651,81667,81679,81683,81699,81703,81711,81729,81741,81745,81753,81757,81765,81780,81806,81824,81832],{"__ignoreMap":80},[84,81652,81653,81655,81657,81659,81661,81663,81665],{"class":86,"line":87},[84,81654,91],{"class":90},[84,81656,95],{"class":94},[84,81658,99],{"class":98},[84,81660,1161],{"class":98},[84,81662,184],{"class":90},[84,81664,1166],{"class":118},[84,81666,102],{"class":90},[84,81668,81669,81671,81673,81675,81677],{"class":86,"line":105},[84,81670,109],{"class":108},[84,81672,112],{"class":90},[84,81674,115],{"class":108},[84,81676,18866],{"class":118},[84,81678,18869],{"class":90},[84,81680,81681],{"class":86,"line":122},[84,81682,126],{"emptyLinePlaceholder":125},[84,81684,81685,81687,81689,81691,81693,81695,81697],{"class":86,"line":129},[84,81686,132],{"class":108},[84,81688,32479],{"class":135},[84,81690,139],{"class":108},[84,81692,142],{"class":98},[84,81694,145],{"class":90},[84,81696,26013],{"class":118},[84,81698,18994],{"class":90},[84,81700,81701],{"class":86,"line":154},[84,81702,126],{"emptyLinePlaceholder":125},[84,81704,81705,81707,81709],{"class":86,"line":159},[84,81706,3246],{"class":108},[84,81708,32500],{"class":98},[84,81710,1307],{"class":90},[84,81712,81713,81715,81717,81719,81721,81723,81725,81727],{"class":86,"line":178},[84,81714,1338],{"class":108},[84,81716,1341],{"class":90},[84,81718,1344],{"class":108},[84,81720,32513],{"class":90},[84,81722,32516],{"class":98},[84,81724,1394],{"class":90},[84,81726,19063],{"class":108},[84,81728,18869],{"class":90},[84,81730,81731,81733,81735,81737,81739],{"class":86,"line":190},[84,81732,3135],{"class":90},[84,81734,3138],{"class":98},[84,81736,145],{"class":90},[84,81738,32533],{"class":118},[84,81740,32536],{"class":90},[84,81742,81743],{"class":86,"line":196},[84,81744,193],{"class":90},[84,81746,81747,81749,81751],{"class":86,"line":201},[84,81748,274],{"class":90},[84,81750,95],{"class":94},[84,81752,102],{"class":90},[84,81754,81755],{"class":86,"line":217},[84,81756,126],{"emptyLinePlaceholder":125},[84,81758,81759,81761,81763],{"class":86,"line":227},[84,81760,91],{"class":90},[84,81762,291],{"class":94},[84,81764,102],{"class":90},[84,81766,81768,81770,81772,81774,81776,81778],{"class":81767,"line":232},[86,10151],[84,81769,299],{"class":90},[84,81771,31973],{"class":94},[84,81773,32570],{"class":98},[84,81775,184],{"class":90},[84,81777,32575],{"class":118},[84,81779,102],{"class":90},[84,81781,81782,81784,81786,81788,81790,81792,81794,81796,81798,81800,81802,81804],{"class":86,"line":237},[84,81783,1642],{"class":90},[84,81785,18759],{"class":94},[84,81787,24454],{"class":98},[84,81789,184],{"class":90},[84,81791,32590],{"class":118},[84,81793,5046],{"class":98},[84,81795,184],{"class":90},[84,81797,32590],{"class":118},[84,81799,32599],{"class":98},[84,81801,184],{"class":90},[84,81803,32604],{"class":118},[84,81805,5100],{"class":90},[84,81807,81808,81810,81812,81814,81816,81818,81820,81822],{"class":86,"line":253},[84,81809,1642],{"class":90},[84,81811,302],{"class":94},[84,81813,5046],{"class":98},[84,81815,184],{"class":90},[84,81817,32619],{"class":118},[84,81819,32622],{"class":90},[84,81821,302],{"class":94},[84,81823,102],{"class":90},[84,81825,81826,81828,81830],{"class":86,"line":266},[84,81827,324],{"class":90},[84,81829,31973],{"class":94},[84,81831,102],{"class":90},[84,81833,81834,81836,81838],{"class":86,"line":271},[84,81835,274],{"class":90},[84,81837,291],{"class":94},[84,81839,102],{"class":90},[74,81841,81843],{"className":76,"code":32645,"filename":1782,"highlights":81842,"language":79,"meta":80,"style":80},[281],[22,81844,81845,81859,81867,81873,81879,81887,81891,81895,81899,81905,81925,81941,81945,81949,81953,81961,81965,81973,81988,82014,82032,82040],{"__ignoreMap":80},[84,81846,81847,81849,81851,81853,81855,81857],{"class":86,"line":87},[84,81848,91],{"class":90},[84,81850,95],{"class":94},[84,81852,1161],{"class":98},[84,81854,184],{"class":90},[84,81856,1166],{"class":118},[84,81858,102],{"class":90},[84,81860,81861,81863,81865],{"class":86,"line":105},[84,81862,418],{"class":108},[84,81864,1870],{"class":108},[84,81866,175],{"class":90},[84,81868,81869,81871],{"class":86,"line":122},[84,81870,1896],{"class":98},[84,81872,1307],{"class":90},[84,81874,81875,81877],{"class":86,"line":129},[84,81876,1903],{"class":108},[84,81878,175],{"class":90},[84,81880,81881,81883,81885],{"class":86,"line":154},[84,81882,32687],{"class":90},[84,81884,26013],{"class":118},[84,81886,1887],{"class":90},[84,81888,81889],{"class":86,"line":159},[84,81890,19195],{"class":90},[84,81892,81893],{"class":86,"line":178},[84,81894,1941],{"class":90},[84,81896,81897],{"class":86,"line":190},[84,81898,1950],{"class":90},[84,81900,81901,81903],{"class":86,"line":196},[84,81902,32708],{"class":98},[84,81904,1307],{"class":90},[84,81906,81907,81909,81911,81913,81915,81917,81919,81921,81923],{"class":86,"line":201},[84,81908,1987],{"class":108},[84,81910,1341],{"class":90},[84,81912,1344],{"class":108},[84,81914,2151],{"class":135},[84,81916,32723],{"class":90},[84,81918,32516],{"class":98},[84,81920,1394],{"class":90},[84,81922,19063],{"class":108},[84,81924,18869],{"class":90},[84,81926,81927,81929,81931,81933,81935,81937,81939],{"class":86,"line":217},[84,81928,15261],{"class":90},[84,81930,3138],{"class":98},[84,81932,145],{"class":90},[84,81934,32533],{"class":118},[84,81936,754],{"class":90},[84,81938,2151],{"class":135},[84,81940,32748],{"class":90},[84,81942,81943],{"class":86,"line":227},[84,81944,7783],{"class":90},[84,81946,81947],{"class":86,"line":232},[84,81948,1941],{"class":90},[84,81950,81951],{"class":86,"line":237},[84,81952,18973],{"class":90},[84,81954,81955,81957,81959],{"class":86,"line":253},[84,81956,274],{"class":90},[84,81958,95],{"class":94},[84,81960,102],{"class":90},[84,81962,81963],{"class":86,"line":266},[84,81964,126],{"emptyLinePlaceholder":125},[84,81966,81967,81969,81971],{"class":86,"line":271},[84,81968,91],{"class":90},[84,81970,291],{"class":94},[84,81972,102],{"class":90},[84,81974,81976,81978,81980,81982,81984,81986],{"class":81975,"line":281},[86,10151],[84,81977,299],{"class":90},[84,81979,31973],{"class":94},[84,81981,32570],{"class":98},[84,81983,184],{"class":90},[84,81985,32575],{"class":118},[84,81987,102],{"class":90},[84,81989,81990,81992,81994,81996,81998,82000,82002,82004,82006,82008,82010,82012],{"class":86,"line":286},[84,81991,1642],{"class":90},[84,81993,18759],{"class":94},[84,81995,24454],{"class":98},[84,81997,184],{"class":90},[84,81999,32590],{"class":118},[84,82001,5046],{"class":98},[84,82003,184],{"class":90},[84,82005,32590],{"class":118},[84,82007,32599],{"class":98},[84,82009,184],{"class":90},[84,82011,32604],{"class":118},[84,82013,5100],{"class":90},[84,82015,82016,82018,82020,82022,82024,82026,82028,82030],{"class":86,"line":296},[84,82017,1642],{"class":90},[84,82019,302],{"class":94},[84,82021,5046],{"class":98},[84,82023,184],{"class":90},[84,82025,32619],{"class":118},[84,82027,32622],{"class":90},[84,82029,302],{"class":94},[84,82031,102],{"class":90},[84,82033,82034,82036,82038],{"class":86,"line":315},[84,82035,324],{"class":90},[84,82037,31973],{"class":94},[84,82039,102],{"class":90},[84,82041,82042,82044,82046],{"class":86,"line":321},[84,82043,274],{"class":90},[84,82045,291],{"class":94},[84,82047,102],{"class":90},[1074,82049,32859],{"id":32858},[74,82051,82053],{"className":76,"code":32862,"filename":873,"highlights":82052,"language":79,"meta":80,"style":80},[227],[22,82054,82055,82071,82083,82087,82103,82107,82115,82127,82131,82139,82143,82151,82174],{"__ignoreMap":80},[84,82056,82057,82059,82061,82063,82065,82067,82069],{"class":86,"line":87},[84,82058,91],{"class":90},[84,82060,95],{"class":94},[84,82062,99],{"class":98},[84,82064,1161],{"class":98},[84,82066,184],{"class":90},[84,82068,1166],{"class":118},[84,82070,102],{"class":90},[84,82072,82073,82075,82077,82079,82081],{"class":86,"line":105},[84,82074,109],{"class":108},[84,82076,112],{"class":90},[84,82078,115],{"class":108},[84,82080,18866],{"class":118},[84,82082,18869],{"class":90},[84,82084,82085],{"class":86,"line":122},[84,82086,126],{"emptyLinePlaceholder":125},[84,82088,82089,82091,82093,82095,82097,82099,82101],{"class":86,"line":129},[84,82090,132],{"class":108},[84,82092,32904],{"class":135},[84,82094,139],{"class":108},[84,82096,142],{"class":98},[84,82098,145],{"class":90},[84,82100,26013],{"class":118},[84,82102,18994],{"class":90},[84,82104,82105],{"class":86,"line":154},[84,82106,126],{"emptyLinePlaceholder":125},[84,82108,82109,82111,82113],{"class":86,"line":159},[84,82110,3246],{"class":108},[84,82112,32925],{"class":98},[84,82114,1307],{"class":90},[84,82116,82117,82119,82121,82123,82125],{"class":86,"line":178},[84,82118,3135],{"class":90},[84,82120,3138],{"class":98},[84,82122,145],{"class":90},[84,82124,32938],{"class":118},[84,82126,32941],{"class":90},[84,82128,82129],{"class":86,"line":190},[84,82130,193],{"class":90},[84,82132,82133,82135,82137],{"class":86,"line":196},[84,82134,274],{"class":90},[84,82136,95],{"class":94},[84,82138,102],{"class":90},[84,82140,82141],{"class":86,"line":201},[84,82142,126],{"emptyLinePlaceholder":125},[84,82144,82145,82147,82149],{"class":86,"line":217},[84,82146,91],{"class":90},[84,82148,291],{"class":94},[84,82150,102],{"class":90},[84,82152,82154,82156,82158,82160,82162,82164,82166,82168,82170,82172],{"class":82153,"line":227},[86,10151],[84,82155,299],{"class":90},[84,82157,32973],{"class":94},[84,82159,24454],{"class":98},[84,82161,184],{"class":90},[84,82163,32980],{"class":118},[84,82165,32983],{"class":98},[84,82167,184],{"class":90},[84,82169,32988],{"class":118},[84,82171,26642],{"class":26641},[84,82173,102],{"class":90},[84,82175,82176,82178,82180],{"class":86,"line":232},[84,82177,274],{"class":90},[84,82179,291],{"class":94},[84,82181,102],{"class":90},[74,82183,82185],{"className":76,"code":33003,"filename":1782,"highlights":82184,"language":79,"meta":80,"style":80},[271],[22,82186,82187,82201,82209,82215,82221,82229,82233,82237,82241,82247,82263,82267,82271,82275,82283,82287,82295,82318],{"__ignoreMap":80},[84,82188,82189,82191,82193,82195,82197,82199],{"class":86,"line":87},[84,82190,91],{"class":90},[84,82192,95],{"class":94},[84,82194,1161],{"class":98},[84,82196,184],{"class":90},[84,82198,1166],{"class":118},[84,82200,102],{"class":90},[84,82202,82203,82205,82207],{"class":86,"line":105},[84,82204,418],{"class":108},[84,82206,1870],{"class":108},[84,82208,175],{"class":90},[84,82210,82211,82213],{"class":86,"line":122},[84,82212,1896],{"class":98},[84,82214,1307],{"class":90},[84,82216,82217,82219],{"class":86,"line":129},[84,82218,1903],{"class":108},[84,82220,175],{"class":90},[84,82222,82223,82225,82227],{"class":86,"line":154},[84,82224,33045],{"class":90},[84,82226,26013],{"class":118},[84,82228,1887],{"class":90},[84,82230,82231],{"class":86,"line":159},[84,82232,19195],{"class":90},[84,82234,82235],{"class":86,"line":178},[84,82236,1941],{"class":90},[84,82238,82239],{"class":86,"line":190},[84,82240,1950],{"class":90},[84,82242,82243,82245],{"class":86,"line":196},[84,82244,33066],{"class":98},[84,82246,1307],{"class":90},[84,82248,82249,82251,82253,82255,82257,82259,82261],{"class":86,"line":201},[84,82250,15261],{"class":90},[84,82252,3138],{"class":98},[84,82254,145],{"class":90},[84,82256,32938],{"class":118},[84,82258,754],{"class":90},[84,82260,2151],{"class":135},[84,82262,33085],{"class":90},[84,82264,82265],{"class":86,"line":217},[84,82266,7783],{"class":90},[84,82268,82269],{"class":86,"line":227},[84,82270,1941],{"class":90},[84,82272,82273],{"class":86,"line":232},[84,82274,18973],{"class":90},[84,82276,82277,82279,82281],{"class":86,"line":237},[84,82278,274],{"class":90},[84,82280,95],{"class":94},[84,82282,102],{"class":90},[84,82284,82285],{"class":86,"line":253},[84,82286,126],{"emptyLinePlaceholder":125},[84,82288,82289,82291,82293],{"class":86,"line":266},[84,82290,91],{"class":90},[84,82292,291],{"class":94},[84,82294,102],{"class":90},[84,82296,82298,82300,82302,82304,82306,82308,82310,82312,82314,82316],{"class":82297,"line":271},[86,10151],[84,82299,299],{"class":90},[84,82301,32973],{"class":94},[84,82303,24454],{"class":98},[84,82305,184],{"class":90},[84,82307,32980],{"class":118},[84,82309,32983],{"class":98},[84,82311,184],{"class":90},[84,82313,32988],{"class":118},[84,82315,26642],{"class":26641},[84,82317,102],{"class":90},[84,82319,82320,82322,82324],{"class":86,"line":281},[84,82321,274],{"class":90},[84,82323,291],{"class":94},[84,82325,102],{"class":90},[1074,82327,33152],{"id":33151},[74,82329,82331],{"className":76,"code":33155,"filename":873,"highlights":82330,"language":79,"meta":80,"style":80},[129,201],[22,82332,82333,82349,82361,82365,82382,82394,82398,82406,82410,82418,82433],{"__ignoreMap":80},[84,82334,82335,82337,82339,82341,82343,82345,82347],{"class":86,"line":87},[84,82336,91],{"class":90},[84,82338,95],{"class":94},[84,82340,99],{"class":98},[84,82342,1161],{"class":98},[84,82344,184],{"class":90},[84,82346,1166],{"class":118},[84,82348,102],{"class":90},[84,82350,82351,82353,82355,82357,82359],{"class":86,"line":105},[84,82352,109],{"class":108},[84,82354,33181],{"class":90},[84,82356,115],{"class":108},[84,82358,33186],{"class":118},[84,82360,18869],{"class":90},[84,82362,82363],{"class":86,"line":122},[84,82364,126],{"emptyLinePlaceholder":125},[84,82366,82368,82370,82372,82374,82376,82378,82380],{"class":82367,"line":129},[86,10151],[84,82369,3246],{"class":108},[84,82371,33200],{"class":98},[84,82373,145],{"class":90},[84,82375,33205],{"class":429},[84,82377,1203],{"class":108},[84,82379,22085],{"class":135},[84,82381,438],{"class":90},[84,82383,82384,82386,82388,82390,82392],{"class":86,"line":154},[84,82385,3135],{"class":90},[84,82387,3138],{"class":98},[84,82389,145],{"class":90},[84,82391,33222],{"class":118},[84,82393,33225],{"class":90},[84,82395,82396],{"class":86,"line":159},[84,82397,193],{"class":90},[84,82399,82400,82402,82404],{"class":86,"line":178},[84,82401,274],{"class":90},[84,82403,95],{"class":94},[84,82405,102],{"class":90},[84,82407,82408],{"class":86,"line":190},[84,82409,126],{"emptyLinePlaceholder":125},[84,82411,82412,82414,82416],{"class":86,"line":196},[84,82413,91],{"class":90},[84,82415,291],{"class":94},[84,82417,102],{"class":90},[84,82419,82421,82423,82425,82427,82429,82431],{"class":82420,"line":201},[86,10151],[84,82422,299],{"class":90},[84,82424,33257],{"class":94},[84,82426,33260],{"class":98},[84,82428,184],{"class":90},[84,82430,33265],{"class":118},[84,82432,5100],{"class":90},[84,82434,82435,82437,82439],{"class":86,"line":217},[84,82436,274],{"class":90},[84,82438,291],{"class":94},[84,82440,102],{"class":90},[74,82442,82444],{"className":76,"code":33278,"filename":1782,"highlights":82443,"language":79,"meta":80,"style":80},[159,237],[22,82445,82446,82460,82472,82476,82484,82488,82493,82503,82515,82519,82523,82527,82535,82539,82548,82562],{"__ignoreMap":80},[84,82447,82448,82450,82452,82454,82456,82458],{"class":86,"line":87},[84,82449,91],{"class":90},[84,82451,95],{"class":94},[84,82453,1161],{"class":98},[84,82455,184],{"class":90},[84,82457,1166],{"class":118},[84,82459,102],{"class":90},[84,82461,82462,82464,82466,82468,82470],{"class":86,"line":105},[84,82463,109],{"class":108},[84,82465,33181],{"class":90},[84,82467,115],{"class":108},[84,82469,33186],{"class":118},[84,82471,18869],{"class":90},[84,82473,82474],{"class":86,"line":122},[84,82475,126],{"emptyLinePlaceholder":125},[84,82477,82478,82480,82482],{"class":86,"line":129},[84,82479,418],{"class":108},[84,82481,1870],{"class":108},[84,82483,175],{"class":90},[84,82485,82486],{"class":86,"line":154},[84,82487,33324],{"class":90},[84,82489,82491],{"class":82490,"line":159},[86,10151],[84,82492,1950],{"class":90},[84,82494,82495,82497,82499,82501],{"class":86,"line":178},[84,82496,33334],{"class":98},[84,82498,145],{"class":90},[84,82500,33205],{"class":429},[84,82502,438],{"class":90},[84,82504,82505,82507,82509,82511,82513],{"class":86,"line":190},[84,82506,15261],{"class":90},[84,82508,3138],{"class":98},[84,82510,145],{"class":90},[84,82512,33222],{"class":118},[84,82514,33225],{"class":90},[84,82516,82517],{"class":86,"line":196},[84,82518,7783],{"class":90},[84,82520,82521],{"class":86,"line":201},[84,82522,1941],{"class":90},[84,82524,82525],{"class":86,"line":217},[84,82526,18973],{"class":90},[84,82528,82529,82531,82533],{"class":86,"line":227},[84,82530,274],{"class":90},[84,82532,95],{"class":94},[84,82534,102],{"class":90},[84,82536,82537],{"class":86,"line":232},[84,82538,126],{"emptyLinePlaceholder":125},[84,82540,82542,82544,82546],{"class":82541,"line":237},[86,10151],[84,82543,91],{"class":90},[84,82545,291],{"class":94},[84,82547,102],{"class":90},[84,82549,82550,82552,82554,82556,82558,82560],{"class":86,"line":253},[84,82551,299],{"class":90},[84,82553,33257],{"class":94},[84,82555,33260],{"class":98},[84,82557,184],{"class":90},[84,82559,33265],{"class":118},[84,82561,5100],{"class":90},[84,82563,82564,82566,82568],{"class":86,"line":266},[84,82565,274],{"class":90},[84,82567,291],{"class":94},[84,82569,102],{"class":90},[34,82571,2766],{"id":2765},[15,82573,33412],{},[737,82575,82576,82580,82584],{},[740,82577,82578,33420],{},[22,82579,33419],{},[740,82581,82582,33425],{},[22,82583,25481],{},[740,82585,82586,33431],{},[22,82587,33430],{},[74,82589,82590],{"className":76,"code":33434,"filename":873,"language":79,"meta":80,"style":80},[22,82591,82592,82608,82620,82624,82634,82644,82654,82664,82668,82672,82688,82704,82708,82742,82746,82754,82768,82782,82786,82794,82802,82806,82814,82818,82828,82832,82836,82852,82878,82892,82902,82906,82914,82918,82926,82934,82946,82958,82962,82976,82982,82990,82998,83006,83014,83018,83036,83044,83048,83056,83076,83090,83094,83102,83116,83120,83128,83136,83144,83152],{"__ignoreMap":80},[84,82593,82594,82596,82598,82600,82602,82604,82606],{"class":86,"line":87},[84,82595,91],{"class":90},[84,82597,95],{"class":94},[84,82599,99],{"class":98},[84,82601,1161],{"class":98},[84,82603,184],{"class":90},[84,82605,1166],{"class":118},[84,82607,102],{"class":90},[84,82609,82610,82612,82614,82616,82618],{"class":86,"line":105},[84,82611,109],{"class":108},[84,82613,24087],{"class":90},[84,82615,115],{"class":108},[84,82617,18866],{"class":118},[84,82619,18869],{"class":90},[84,82621,82622],{"class":86,"line":122},[84,82623,126],{"emptyLinePlaceholder":125},[84,82625,82626,82628,82630,82632],{"class":86,"line":129},[84,82627,1188],{"class":108},[84,82629,6398],{"class":98},[84,82631,139],{"class":108},[84,82633,175],{"class":90},[84,82635,82636,82638,82640,82642],{"class":86,"line":154},[84,82637,1200],{"class":429},[84,82639,1203],{"class":108},[84,82641,3259],{"class":135},[84,82643,18869],{"class":90},[84,82645,82646,82648,82650,82652],{"class":86,"line":159},[84,82647,6415],{"class":429},[84,82649,1203],{"class":108},[84,82651,22085],{"class":135},[84,82653,18869],{"class":90},[84,82655,82656,82658,82660,82662],{"class":86,"line":178},[84,82657,6424],{"class":429},[84,82659,1203],{"class":108},[84,82661,23256],{"class":135},[84,82663,18869],{"class":90},[84,82665,82666],{"class":86,"line":190},[84,82667,18973],{"class":90},[84,82669,82670],{"class":86,"line":196},[84,82671,126],{"emptyLinePlaceholder":125},[84,82673,82674,82676,82678,82680,82682,82684,82686],{"class":86,"line":201},[84,82675,132],{"class":108},[84,82677,33523],{"class":135},[84,82679,139],{"class":108},[84,82681,142],{"class":98},[84,82683,145],{"class":90},[84,82685,26013],{"class":118},[84,82687,18994],{"class":90},[84,82689,82690,82692,82694,82696,82698,82700,82702],{"class":86,"line":217},[84,82691,132],{"class":108},[84,82693,2887],{"class":135},[84,82695,139],{"class":108},[84,82697,142],{"class":98},[84,82699,91],{"class":90},[84,82701,6452],{"class":98},[84,82703,33550],{"class":90},[84,82705,82706],{"class":86,"line":227},[84,82707,126],{"emptyLinePlaceholder":125},[84,82709,82710,82712,82714,82716,82718,82720,82722,82724,82726,82728,82730,82732,82734,82736,82738,82740],{"class":86,"line":232},[84,82711,132],{"class":108},[84,82713,33561],{"class":135},[84,82715,139],{"class":108},[84,82717,2989],{"class":98},[84,82719,2992],{"class":90},[84,82721,172],{"class":108},[84,82723,3003],{"class":90},[84,82725,3006],{"class":98},[84,82727,3120],{"class":90},[84,82729,3011],{"class":429},[84,82731,3126],{"class":90},[84,82733,172],{"class":108},[84,82735,260],{"class":108},[84,82737,33586],{"class":90},[84,82739,10566],{"class":135},[84,82741,18994],{"class":90},[84,82743,82744],{"class":86,"line":237},[84,82745,126],{"emptyLinePlaceholder":125},[84,82747,82748,82750,82752],{"class":86,"line":253},[84,82749,3246],{"class":108},[84,82751,33601],{"class":98},[84,82753,1307],{"class":90},[84,82755,82756,82758,82760,82762,82764,82766],{"class":86,"line":266},[84,82757,443],{"class":108},[84,82759,33610],{"class":135},[84,82761,139],{"class":108},[84,82763,33615],{"class":90},[84,82765,32516],{"class":98},[84,82767,20137],{"class":90},[84,82769,82770,82772,82774,82776,82778,82780],{"class":86,"line":271},[84,82771,1338],{"class":108},[84,82773,1341],{"class":90},[84,82775,1344],{"class":108},[84,82777,33630],{"class":90},[84,82779,19063],{"class":108},[84,82781,18869],{"class":90},[84,82783,82784],{"class":86,"line":281},[84,82785,126],{"emptyLinePlaceholder":125},[84,82787,82788,82790,82792],{"class":86,"line":286},[84,82789,33643],{"class":90},[84,82791,10533],{"class":98},[84,82793,1876],{"class":90},[84,82795,82796,82798,82800],{"class":86,"line":296},[84,82797,10540],{"class":90},[84,82799,10543],{"class":98},[84,82801,10546],{"class":90},[84,82803,82804],{"class":86,"line":315},[84,82805,33660],{"class":90},[84,82807,82808,82810,82812],{"class":86,"line":321},[84,82809,33665],{"class":90},[84,82811,148],{"class":135},[84,82813,1887],{"class":90},[84,82815,82816],{"class":86,"line":331},[84,82817,33674],{"class":90},[84,82819,82820,82822,82824,82826],{"class":86,"line":336},[84,82821,33679],{"class":90},[84,82823,184],{"class":108},[84,82825,33684],{"class":118},[84,82827,18869],{"class":90},[84,82829,82830],{"class":86,"line":354},[84,82831,193],{"class":90},[84,82833,82834],{"class":86,"line":360},[84,82835,126],{"emptyLinePlaceholder":125},[84,82837,82838,82840,82842,82844,82846,82848,82850],{"class":86,"line":369},[84,82839,3246],{"class":108},[84,82841,3249],{"class":98},[84,82843,145],{"class":90},[84,82845,22745],{"class":429},[84,82847,1203],{"class":108},[84,82849,3259],{"class":135},[84,82851,438],{"class":90},[84,82853,82854,82856,82858,82860,82862,82864,82866,82868,82870,82872,82874,82876],{"class":86,"line":1453},[84,82855,443],{"class":108},[84,82857,3268],{"class":135},[84,82859,139],{"class":108},[84,82861,3003],{"class":90},[84,82863,3275],{"class":98},[84,82865,3120],{"class":90},[84,82867,3280],{"class":429},[84,82869,3126],{"class":90},[84,82871,172],{"class":108},[84,82873,3285],{"class":90},[84,82875,3288],{"class":108},[84,82877,33737],{"class":90},[84,82879,82880,82882,82884,82886,82888,82890],{"class":86,"line":1462},[84,82881,1338],{"class":108},[84,82883,1341],{"class":90},[84,82885,1344],{"class":108},[84,82887,3306],{"class":90},[84,82889,19063],{"class":108},[84,82891,18869],{"class":90},[84,82893,82894,82896,82898,82900],{"class":86,"line":1484},[84,82895,3317],{"class":90},[84,82897,184],{"class":108},[84,82899,260],{"class":108},[84,82901,33762],{"class":90},[84,82903,82904],{"class":86,"line":1489},[84,82905,193],{"class":90},[84,82907,82908,82910,82912],{"class":86,"line":1495},[84,82909,274],{"class":90},[84,82911,95],{"class":94},[84,82913,102],{"class":90},[84,82915,82916],{"class":86,"line":1500},[84,82917,126],{"emptyLinePlaceholder":125},[84,82919,82920,82922,82924],{"class":86,"line":1516},[84,82921,91],{"class":90},[84,82923,291],{"class":94},[84,82925,102],{"class":90},[84,82927,82928,82930,82932],{"class":86,"line":1533},[84,82929,299],{"class":90},[84,82931,4898],{"class":94},[84,82933,102],{"class":90},[84,82935,82936,82938,82940,82942,82944],{"class":86,"line":1538},[84,82937,1642],{"class":90},[84,82939,34],{"class":94},[84,82941,33803],{"class":90},[84,82943,34],{"class":94},[84,82945,102],{"class":90},[84,82947,82948,82950,82952,82954,82956],{"class":86,"line":1545},[84,82949,1642],{"class":90},[84,82951,15],{"class":94},[84,82953,33816],{"class":90},[84,82955,15],{"class":94},[84,82957,102],{"class":90},[84,82959,82960],{"class":86,"line":1554},[84,82961,126],{"emptyLinePlaceholder":125},[84,82963,82964,82966,82968,82970,82972,82974],{"class":86,"line":1563},[84,82965,1642],{"class":90},[84,82967,31973],{"class":94},[84,82969,32570],{"class":98},[84,82971,184],{"class":90},[84,82973,33837],{"class":118},[84,82975,102],{"class":90},[84,82977,82978,82980],{"class":86,"line":1570},[84,82979,1691],{"class":90},[84,82981,12295],{"class":94},[84,82983,82984,82986,82988],{"class":86,"line":1588},[84,82985,33850],{"class":98},[84,82987,184],{"class":90},[84,82989,33855],{"class":118},[84,82991,82992,82994,82996],{"class":86,"line":1593},[84,82993,33860],{"class":98},[84,82995,184],{"class":90},[84,82997,30155],{"class":118},[84,82999,83000,83002,83004],{"class":86,"line":1598},[84,83001,33869],{"class":98},[84,83003,184],{"class":90},[84,83005,33874],{"class":118},[84,83007,83008,83010,83012],{"class":86,"line":1607},[84,83009,33879],{"class":98},[84,83011,184],{"class":90},[84,83013,33884],{"class":118},[84,83015,83016],{"class":86,"line":1612},[84,83017,33889],{"class":90},[84,83019,83020,83022,83024,83026,83028,83030,83032,83034],{"class":86,"line":1621},[84,83021,1691],{"class":90},[84,83023,302],{"class":94},[84,83025,5046],{"class":98},[84,83027,184],{"class":90},[84,83029,32619],{"class":118},[84,83031,33904],{"class":90},[84,83033,302],{"class":94},[84,83035,102],{"class":90},[84,83037,83038,83040,83042],{"class":86,"line":1639},[84,83039,1734],{"class":90},[84,83041,31973],{"class":94},[84,83043,102],{"class":90},[84,83045,83046],{"class":86,"line":1661},[84,83047,126],{"emptyLinePlaceholder":125},[84,83049,83050,83052,83054],{"class":86,"line":1666},[84,83051,1642],{"class":90},[84,83053,737],{"class":94},[84,83055,102],{"class":90},[84,83057,83058,83060,83062,83064,83066,83068,83070,83072,83074],{"class":86,"line":1688},[84,83059,1691],{"class":90},[84,83061,740],{"class":94},[84,83063,13525],{"class":98},[84,83065,184],{"class":90},[84,83067,33941],{"class":118},[84,83069,5092],{"class":98},[84,83071,184],{"class":90},[84,83073,33948],{"class":118},[84,83075,102],{"class":90},[84,83077,83078,83080,83082,83084,83086,83088],{"class":86,"line":1703},[84,83079,27377],{"class":90},[84,83081,302],{"class":94},[84,83083,305],{"class":98},[84,83085,184],{"class":90},[84,83087,33963],{"class":118},[84,83089,102],{"class":90},[84,83091,83092],{"class":86,"line":1717},[84,83093,33970],{"class":90},[84,83095,83096,83098,83100],{"class":86,"line":1731},[84,83097,27425],{"class":90},[84,83099,302],{"class":94},[84,83101,102],{"class":90},[84,83103,83104,83106,83108,83110,83112,83114],{"class":86,"line":1741},[84,83105,27377],{"class":90},[84,83107,84],{"class":94},[84,83109,33987],{"class":98},[84,83111,184],{"class":90},[84,83113,33992],{"class":118},[84,83115,102],{"class":90},[84,83117,83118],{"class":86,"line":1746},[84,83119,33999],{"class":90},[84,83121,83122,83124,83126],{"class":86,"line":1763},[84,83123,27425],{"class":90},[84,83125,84],{"class":94},[84,83127,102],{"class":90},[84,83129,83130,83132,83134],{"class":86,"line":1772},[84,83131,4952],{"class":90},[84,83133,740],{"class":94},[84,83135,102],{"class":90},[84,83137,83138,83140,83142],{"class":86,"line":2283},[84,83139,1734],{"class":90},[84,83141,737],{"class":94},[84,83143,102],{"class":90},[84,83145,83146,83148,83150],{"class":86,"line":2288},[84,83147,324],{"class":90},[84,83149,4898],{"class":94},[84,83151,102],{"class":90},[84,83153,83154,83156,83158],{"class":86,"line":2307},[84,83155,274],{"class":90},[84,83157,291],{"class":94},[84,83159,102],{"class":90},[74,83161,83162],{"className":76,"code":34042,"filename":1782,"language":79,"meta":80,"style":80},[22,83163,83164,83178,83186,83192,83198,83206,83210,83214,83218,83222,83228,83254,83258,83262,83266,83272,83288,83302,83306,83316,83324,83328,83336,83340,83352,83356,83366,83394,83408,83418,83422,83426,83430,83438,83442,83450,83458,83470,83482,83486,83500,83506,83514,83522,83530,83538,83542,83560,83568,83572,83580,83600,83614,83618,83626,83640,83644,83652,83660,83668,83676],{"__ignoreMap":80},[84,83165,83166,83168,83170,83172,83174,83176],{"class":86,"line":87},[84,83167,91],{"class":90},[84,83169,95],{"class":94},[84,83171,1161],{"class":98},[84,83173,184],{"class":90},[84,83175,1166],{"class":118},[84,83177,102],{"class":90},[84,83179,83180,83182,83184],{"class":86,"line":105},[84,83181,418],{"class":108},[84,83183,1870],{"class":108},[84,83185,175],{"class":90},[84,83187,83188,83190],{"class":86,"line":122},[84,83189,1896],{"class":98},[84,83191,1307],{"class":90},[84,83193,83194,83196],{"class":86,"line":129},[84,83195,1903],{"class":108},[84,83197,175],{"class":90},[84,83199,83200,83202,83204],{"class":86,"line":154},[84,83201,34083],{"class":90},[84,83203,26013],{"class":118},[84,83205,1887],{"class":90},[84,83207,83208],{"class":86,"line":159},[84,83209,7373],{"class":90},[84,83211,83212],{"class":86,"line":178},[84,83213,19195],{"class":90},[84,83215,83216],{"class":86,"line":190},[84,83217,1941],{"class":90},[84,83219,83220],{"class":86,"line":196},[84,83221,3527],{"class":90},[84,83223,83224,83226],{"class":86,"line":201},[84,83225,34108],{"class":98},[84,83227,1307],{"class":90},[84,83229,83230,83232,83234,83236,83238,83240,83242,83244,83246,83248,83250,83252],{"class":86,"line":217},[84,83231,3539],{"class":108},[84,83233,2078],{"class":135},[84,83235,3544],{"class":90},[84,83237,3006],{"class":98},[84,83239,3120],{"class":90},[84,83241,3011],{"class":429},[84,83243,3126],{"class":90},[84,83245,172],{"class":108},[84,83247,260],{"class":108},[84,83249,33586],{"class":90},[84,83251,10566],{"class":135},[84,83253,18869],{"class":90},[84,83255,83256],{"class":86,"line":227},[84,83257,7783],{"class":90},[84,83259,83260],{"class":86,"line":232},[84,83261,1941],{"class":90},[84,83263,83264],{"class":86,"line":237},[84,83265,1950],{"class":90},[84,83267,83268,83270],{"class":86,"line":253},[84,83269,34153],{"class":98},[84,83271,1307],{"class":90},[84,83273,83274,83276,83278,83280,83282,83284,83286],{"class":86,"line":266},[84,83275,1964],{"class":108},[84,83277,33610],{"class":135},[84,83279,139],{"class":108},[84,83281,2078],{"class":135},[84,83283,34168],{"class":90},[84,83285,32516],{"class":98},[84,83287,20137],{"class":90},[84,83289,83290,83292,83294,83296,83298,83300],{"class":86,"line":271},[84,83291,1987],{"class":108},[84,83293,1341],{"class":90},[84,83295,1344],{"class":108},[84,83297,33630],{"class":90},[84,83299,19063],{"class":108},[84,83301,18869],{"class":90},[84,83303,83304],{"class":86,"line":281},[84,83305,126],{"emptyLinePlaceholder":125},[84,83307,83308,83310,83312,83314],{"class":86,"line":286},[84,83309,2022],{"class":135},[84,83311,3544],{"class":90},[84,83313,10533],{"class":98},[84,83315,1876],{"class":90},[84,83317,83318,83320,83322],{"class":86,"line":296},[84,83319,10973],{"class":90},[84,83321,10543],{"class":98},[84,83323,10546],{"class":90},[84,83325,83326],{"class":86,"line":315},[84,83327,34213],{"class":90},[84,83329,83330,83332,83334],{"class":86,"line":321},[84,83331,34218],{"class":90},[84,83333,148],{"class":135},[84,83335,1887],{"class":90},[84,83337,83338],{"class":86,"line":331},[84,83339,31288],{"class":90},[84,83341,83342,83344,83346,83348,83350],{"class":86,"line":336},[84,83343,2022],{"class":135},[84,83345,34233],{"class":90},[84,83347,184],{"class":108},[84,83349,33684],{"class":118},[84,83351,18869],{"class":90},[84,83353,83354],{"class":86,"line":354},[84,83355,7783],{"class":90},[84,83357,83358,83360,83362,83364],{"class":86,"line":360},[84,83359,3772],{"class":98},[84,83361,145],{"class":90},[84,83363,22745],{"class":429},[84,83365,438],{"class":90},[84,83367,83368,83370,83372,83374,83376,83378,83380,83382,83384,83386,83388,83390,83392],{"class":86,"line":369},[84,83369,1964],{"class":108},[84,83371,3268],{"class":135},[84,83373,139],{"class":108},[84,83375,2078],{"class":135},[84,83377,3544],{"class":90},[84,83379,3275],{"class":98},[84,83381,3120],{"class":90},[84,83383,3280],{"class":429},[84,83385,3126],{"class":90},[84,83387,172],{"class":108},[84,83389,3285],{"class":90},[84,83391,3288],{"class":108},[84,83393,33737],{"class":90},[84,83395,83396,83398,83400,83402,83404,83406],{"class":86,"line":1453},[84,83397,1987],{"class":108},[84,83399,1341],{"class":90},[84,83401,1344],{"class":108},[84,83403,3306],{"class":90},[84,83405,19063],{"class":108},[84,83407,18869],{"class":90},[84,83409,83410,83412,83414,83416],{"class":86,"line":1462},[84,83411,3829],{"class":90},[84,83413,184],{"class":108},[84,83415,260],{"class":108},[84,83417,33762],{"class":90},[84,83419,83420],{"class":86,"line":1484},[84,83421,7783],{"class":90},[84,83423,83424],{"class":86,"line":1489},[84,83425,1941],{"class":90},[84,83427,83428],{"class":86,"line":1495},[84,83429,18973],{"class":90},[84,83431,83432,83434,83436],{"class":86,"line":1500},[84,83433,274],{"class":90},[84,83435,95],{"class":94},[84,83437,102],{"class":90},[84,83439,83440],{"class":86,"line":1516},[84,83441,126],{"emptyLinePlaceholder":125},[84,83443,83444,83446,83448],{"class":86,"line":1533},[84,83445,91],{"class":90},[84,83447,291],{"class":94},[84,83449,102],{"class":90},[84,83451,83452,83454,83456],{"class":86,"line":1538},[84,83453,299],{"class":90},[84,83455,4898],{"class":94},[84,83457,102],{"class":90},[84,83459,83460,83462,83464,83466,83468],{"class":86,"line":1545},[84,83461,1642],{"class":90},[84,83463,34],{"class":94},[84,83465,33803],{"class":90},[84,83467,34],{"class":94},[84,83469,102],{"class":90},[84,83471,83472,83474,83476,83478,83480],{"class":86,"line":1554},[84,83473,1642],{"class":90},[84,83475,15],{"class":94},[84,83477,33816],{"class":90},[84,83479,15],{"class":94},[84,83481,102],{"class":90},[84,83483,83484],{"class":86,"line":1563},[84,83485,126],{"emptyLinePlaceholder":125},[84,83487,83488,83490,83492,83494,83496,83498],{"class":86,"line":1570},[84,83489,1642],{"class":90},[84,83491,31973],{"class":94},[84,83493,32570],{"class":98},[84,83495,184],{"class":90},[84,83497,33837],{"class":118},[84,83499,102],{"class":90},[84,83501,83502,83504],{"class":86,"line":1588},[84,83503,1691],{"class":90},[84,83505,12295],{"class":94},[84,83507,83508,83510,83512],{"class":86,"line":1593},[84,83509,33850],{"class":98},[84,83511,184],{"class":90},[84,83513,33855],{"class":118},[84,83515,83516,83518,83520],{"class":86,"line":1598},[84,83517,33860],{"class":98},[84,83519,184],{"class":90},[84,83521,30155],{"class":118},[84,83523,83524,83526,83528],{"class":86,"line":1607},[84,83525,33869],{"class":98},[84,83527,184],{"class":90},[84,83529,33874],{"class":118},[84,83531,83532,83534,83536],{"class":86,"line":1612},[84,83533,33879],{"class":98},[84,83535,184],{"class":90},[84,83537,33884],{"class":118},[84,83539,83540],{"class":86,"line":1621},[84,83541,33889],{"class":90},[84,83543,83544,83546,83548,83550,83552,83554,83556,83558],{"class":86,"line":1639},[84,83545,1691],{"class":90},[84,83547,302],{"class":94},[84,83549,5046],{"class":98},[84,83551,184],{"class":90},[84,83553,32619],{"class":118},[84,83555,33904],{"class":90},[84,83557,302],{"class":94},[84,83559,102],{"class":90},[84,83561,83562,83564,83566],{"class":86,"line":1661},[84,83563,1734],{"class":90},[84,83565,31973],{"class":94},[84,83567,102],{"class":90},[84,83569,83570],{"class":86,"line":1666},[84,83571,126],{"emptyLinePlaceholder":125},[84,83573,83574,83576,83578],{"class":86,"line":1688},[84,83575,1642],{"class":90},[84,83577,737],{"class":94},[84,83579,102],{"class":90},[84,83581,83582,83584,83586,83588,83590,83592,83594,83596,83598],{"class":86,"line":1703},[84,83583,1691],{"class":90},[84,83585,740],{"class":94},[84,83587,13525],{"class":98},[84,83589,184],{"class":90},[84,83591,33941],{"class":118},[84,83593,5092],{"class":98},[84,83595,184],{"class":90},[84,83597,33948],{"class":118},[84,83599,102],{"class":90},[84,83601,83602,83604,83606,83608,83610,83612],{"class":86,"line":1717},[84,83603,27377],{"class":90},[84,83605,302],{"class":94},[84,83607,305],{"class":98},[84,83609,184],{"class":90},[84,83611,33963],{"class":118},[84,83613,102],{"class":90},[84,83615,83616],{"class":86,"line":1731},[84,83617,33970],{"class":90},[84,83619,83620,83622,83624],{"class":86,"line":1741},[84,83621,27425],{"class":90},[84,83623,302],{"class":94},[84,83625,102],{"class":90},[84,83627,83628,83630,83632,83634,83636,83638],{"class":86,"line":1746},[84,83629,27377],{"class":90},[84,83631,84],{"class":94},[84,83633,33987],{"class":98},[84,83635,184],{"class":90},[84,83637,33992],{"class":118},[84,83639,102],{"class":90},[84,83641,83642],{"class":86,"line":1763},[84,83643,33999],{"class":90},[84,83645,83646,83648,83650],{"class":86,"line":1772},[84,83647,27425],{"class":90},[84,83649,84],{"class":94},[84,83651,102],{"class":90},[84,83653,83654,83656,83658],{"class":86,"line":2283},[84,83655,4952],{"class":90},[84,83657,740],{"class":94},[84,83659,102],{"class":90},[84,83661,83662,83664,83666],{"class":86,"line":2288},[84,83663,1734],{"class":90},[84,83665,737],{"class":94},[84,83667,102],{"class":90},[84,83669,83670,83672,83674],{"class":86,"line":2307},[84,83671,324],{"class":90},[84,83673,4898],{"class":94},[84,83675,102],{"class":90},[84,83677,83678,83680,83682],{"class":86,"line":2320},[84,83679,274],{"class":90},[84,83681,291],{"class":94},[84,83683,102],{"class":90},[34,83685,2406],{"id":2405},[15,83687,83688,34578],{},[22,83689,18695],{},[15,83691,34581],{},[737,83693,83694,83700,83702,83710],{},[740,83695,21486,83696,34589,83698,764],{},[22,83697,34588],{},[22,83699,18695],{},[740,83701,34594],{},[740,83703,34597,83704,754,83706,754,83708,34604],{},[22,83705,31785],{},[22,83707,31788],{},[22,83709,31791],{},[740,83711,34607],{},[835,83713,34610],{},{"title":80,"searchDepth":105,"depth":105,"links":83715},[83716,83717,83718,83719,83720,83726,83732,83733],{"id":21333,"depth":105,"text":21334},{"id":25349,"depth":105,"text":25350},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":783,"depth":105,"text":784,"children":83721},[83722,83723,83724,83725],{"id":31880,"depth":122,"text":31881},{"id":31955,"depth":122,"text":34621},{"id":32030,"depth":122,"text":32031},{"id":32139,"depth":122,"text":34624},{"id":2735,"depth":105,"text":2736,"children":83727},[83728,83729,83730,83731],{"id":32215,"depth":122,"text":32216},{"id":32431,"depth":122,"text":34629},{"id":32858,"depth":122,"text":32859},{"id":33151,"depth":122,"text":33152},{"id":2765,"depth":105,"text":2766},{"id":2405,"depth":105,"text":2406},{"updatedAt":34639,"coverCaption":18477,"author":868,"keywords":83735},[870,18695,34641,34642,873,1782],[83737],{"headline":34646,"author":83738,"datePublished":34639,"@type":880},{"name":868,"@type":879},{"title":31634,"description":34637},[83741,83742,83743],{"tag":21297,"color":21298},{"tag":34653,"color":34654},{"tag":894,"color":895},{"id":34658,"title":34659,"body":83745,"cover":37615,"coverAlt":37616,"date":37617,"description":37618,"draft":852,"extension":853,"lab":882,"locale":864,"meta":86477,"navigation":125,"path":37625,"schemaOrg":86479,"seo":86482,"series":21291,"seriesDescription":21292,"seriesOrder":129,"seriesTitle":21293,"slug":882,"stem":37631,"tags":86483,"__hash__":37637},{"type":8,"value":83746,"toc":86455},[83747,83751,83755,83759,83761,83765,83775,83779,83781,83783,83813,83815,83843,83847,83879,83881,83885,83899,83901,83903,83915,83917,83921,83923,83953,83955,83997,84001,84007,84009,84069,84073,84075,84079,84103,84109,84113,84117,84119,84123,84230,84343,84347,84450,84559,84563,84706,84847,84851,84971,85089,85093,85095,85207,85317,85321,85458,85601,85607,85609,85613,86011,86419,86421,86425,86427,86449,86453],[11,83748,21314,83749],{"id":34664},[22,83750,18692],{},[15,83752,83753,34671],{},[22,83754,18692],{},[15,83756,25290,83757,34676],{},[22,83758,18692],{},[34,83760,21334],{"id":21333},[15,83762,16664,83763,34683],{},[22,83764,18692],{},[737,83766,83767,83769,83771,83773],{},[740,83768,34688],{},[740,83770,34691],{},[740,83772,34694],{},[740,83774,34697],{},[15,83776,12736,83777,34702],{},[22,83778,18692],{},[34,83780,25350],{"id":25349},[15,83782,34707],{},[74,83784,83785],{"className":76,"code":34710,"filename":10092,"language":79,"meta":80,"style":80},[22,83786,83787],{"__ignoreMap":80},[84,83788,83789,83791,83793,83795,83797,83799,83801,83803,83805,83807,83809,83811],{"class":86,"line":87},[84,83790,91],{"class":90},[84,83792,13911],{"class":94},[84,83794,34721],{"class":98},[84,83796,1203],{"class":90},[84,83798,34726],{"class":98},[84,83800,184],{"class":90},[84,83802,1678],{"class":118},[84,83804,34733],{"class":90},[84,83806,1678],{"class":118},[84,83808,34738],{"class":90},[84,83810,13911],{"class":94},[84,83812,102],{"class":90},[15,83814,34745],{},[74,83816,83817],{"className":76,"code":34748,"filename":10092,"language":79,"meta":80,"style":80},[22,83818,83819],{"__ignoreMap":80},[84,83820,83821,83823,83825,83827,83829,83831,83833,83835,83837,83839,83841],{"class":86,"line":87},[84,83822,91],{"class":90},[84,83824,13911],{"class":94},[84,83826,7012],{"class":90},[84,83828,34726],{"class":98},[84,83830,184],{"class":90},[84,83832,1678],{"class":118},[84,83834,34733],{"class":90},[84,83836,1678],{"class":118},[84,83838,34738],{"class":90},[84,83840,13911],{"class":94},[84,83842,102],{"class":90},[15,83844,83845,34779],{},[22,83846,18692],{},[737,83848,83849,83861,83865,83871,83875],{},[740,83850,34784,83851,754,83853,754,83855,754,83857,754,83859,34797],{},[22,83852,34726],{},[22,83854,34789],{},[22,83856,34792],{},[22,83858,22745],{},[22,83860,24118],{},[740,83862,34800,83863,34797],{},[22,83864,34803],{},[740,83866,34806,83867,2488,83869,34812],{},[22,83868,34809],{},[22,83870,835],{},[740,83872,34815,83873,34797],{},[22,83874,34818],{},[740,83876,34821,83877,2686],{},[22,83878,34824],{},[34,83880,1013],{"id":1012},[15,83882,21486,83883,34831],{},[22,83884,18692],{},[737,83886,83887,83889,83895,83897],{},[740,83888,34836],{},[740,83890,34839,83891,6014,83893,2686],{},[22,83892,34809],{},[22,83894,835],{},[740,83896,34846],{},[740,83898,34849],{},[34,83900,1040],{"id":1039},[15,83902,1046],{},[737,83904,83905,83907,83911],{},[740,83906,34858],{},[740,83908,34861,83909,2686],{},[22,83910,2523],{},[740,83912,34866,83913,34869],{},[22,83914,18692],{},[34,83916,784],{"id":783},[1074,83918,34875,83919,34878],{"id":34874},[22,83920,18692],{},[15,83922,25589],{},[74,83924,83925],{"className":76,"code":34883,"filename":34884,"language":79,"meta":80,"style":80},[22,83926,83927],{"__ignoreMap":80},[84,83928,83929,83931,83933,83935,83937,83939,83941,83943,83945,83947,83949,83951],{"class":86,"line":87},[84,83930,91],{"class":90},[84,83932,34893],{"class":94},[84,83934,7012],{"class":90},[84,83936,34789],{"class":98},[84,83938,184],{"class":90},[84,83940,1678],{"class":118},[84,83942,16677],{"class":108},[84,83944,34906],{"class":90},[84,83946,16677],{"class":108},[84,83948,34911],{"class":90},[84,83950,1678],{"class":118},[84,83952,5100],{"class":90},[15,83954,29151],{},[74,83956,83957],{"className":76,"code":34920,"filename":34921,"language":79,"meta":80,"style":80},[22,83958,83959,83973,83977],{"__ignoreMap":80},[84,83960,83961,83963,83965,83967,83969,83971],{"class":86,"line":87},[84,83962,91],{"class":90},[84,83964,34893],{"class":94},[84,83966,34932],{"class":98},[84,83968,184],{"class":90},[84,83970,34937],{"class":118},[84,83972,5100],{"class":90},[84,83974,83975],{"class":86,"line":105},[84,83976,34944],{"class":13481},[84,83978,83979,83981,83983,83985,83987,83989,83991,83993,83995],{"class":86,"line":122},[84,83980,91],{"class":90},[84,83982,34893],{"class":94},[84,83984,7012],{"class":90},[84,83986,34789],{"class":98},[84,83988,184],{"class":90},[84,83990,1678],{"class":118},[84,83992,34961],{"class":90},[84,83994,1678],{"class":118},[84,83996,5100],{"class":90},[15,83998,34968,83999,34972],{},[22,84000,34971],{},[1074,84002,34976,84003,50,84005],{"id":34975},[22,84004,34979],{},[22,84006,34982],{},[15,84008,25589],{},[74,84010,84011],{"className":76,"code":34987,"filename":29029,"language":79,"meta":80,"style":80},[22,84012,84013,84057,84061],{"__ignoreMap":80},[84,84014,84015,84017,84019,84021,84023,84025,84027,84029,84031,84033,84035,84037,84039,84041,84043,84045,84047,84049,84051,84053,84055],{"class":86,"line":87},[84,84016,91],{"class":90},[84,84018,302],{"class":94},[84,84020,7012],{"class":90},[84,84022,34809],{"class":98},[84,84024,184],{"class":90},[84,84026,1678],{"class":118},[84,84028,32056],{"class":90},[84,84030,3096],{"class":108},[84,84032,35010],{"class":90},[84,84034,3096],{"class":108},[84,84036,260],{"class":108},[84,84038,32068],{"class":90},[84,84040,3073],{"class":108},[84,84042,35021],{"class":118},[84,84044,7012],{"class":108},[84,84046,35026],{"class":90},[84,84048,3073],{"class":108},[84,84050,35031],{"class":118},[84,84052,7012],{"class":108},[84,84054,35036],{"class":118},[84,84056,102],{"class":90},[84,84058,84059],{"class":86,"line":105},[84,84060,35043],{"class":90},[84,84062,84063,84065,84067],{"class":86,"line":122},[84,84064,274],{"class":90},[84,84066,302],{"class":94},[84,84068,102],{"class":90},[15,84070,35054,84071,764],{},[22,84072,2523],{},[1074,84074,35060],{"id":35059},[15,84076,84077,35065],{},[22,84078,18692],{},[74,84080,84081],{"className":76,"code":35068,"filename":35069,"language":79,"meta":80,"style":80},[22,84082,84083],{"__ignoreMap":80},[84,84084,84085,84087,84089,84091,84093,84095,84097,84099,84101],{"class":86,"line":87},[84,84086,91],{"class":90},[84,84088,23311],{"class":94},[84,84090,7012],{"class":90},[84,84092,28004],{"class":98},[84,84094,184],{"class":90},[84,84096,1678],{"class":118},[84,84098,28004],{"class":90},[84,84100,1678],{"class":118},[84,84102,5100],{"class":90},[15,84104,35094,84105,35098,84107,35101],{},[22,84106,35097],{},[22,84108,28004],{},[1074,84110,35105,84111,35108],{"id":35104},[22,84112,18692],{},[15,84114,84115,35113],{},[22,84116,18692],{},[34,84118,2736],{"id":2735},[1074,84120,35119,84121,909],{"id":35118},[22,84122,34726],{},[74,84124,84126],{"className":76,"code":35124,"filename":873,"highlights":84125,"language":79,"meta":80,"style":80},[129,190],[22,84127,84128,84138,84150,84154,84171,84179,84183,84191,84222],{"__ignoreMap":80},[84,84129,84130,84132,84134,84136],{"class":86,"line":87},[84,84131,91],{"class":90},[84,84133,95],{"class":94},[84,84135,99],{"class":98},[84,84137,102],{"class":90},[84,84139,84140,84142,84144,84146,84148],{"class":86,"line":105},[84,84141,109],{"class":108},[84,84143,112],{"class":90},[84,84145,115],{"class":108},[84,84147,18866],{"class":118},[84,84149,18869],{"class":90},[84,84151,84152],{"class":86,"line":122},[84,84153,126],{"emptyLinePlaceholder":125},[84,84155,84157,84159,84161,84163,84165,84167,84169],{"class":84156,"line":129},[86,10151],[84,84158,132],{"class":108},[84,84160,35161],{"class":135},[84,84162,139],{"class":108},[84,84164,142],{"class":98},[84,84166,145],{"class":90},[84,84168,35170],{"class":118},[84,84170,18994],{"class":90},[84,84172,84173,84175,84177],{"class":86,"line":154},[84,84174,274],{"class":90},[84,84176,95],{"class":94},[84,84178,102],{"class":90},[84,84180,84181],{"class":86,"line":159},[84,84182,126],{"emptyLinePlaceholder":125},[84,84184,84185,84187,84189],{"class":86,"line":178},[84,84186,91],{"class":90},[84,84188,291],{"class":94},[84,84190,102],{"class":90},[84,84192,84194,84196,84198,84200,84202,84204,84206,84208,84210,84212,84214,84216,84218,84220],{"class":84193,"line":190},[86,10151],[84,84195,299],{"class":90},[84,84197,13911],{"class":94},[84,84199,35202],{"class":98},[84,84201,184],{"class":90},[84,84203,35207],{"class":118},[84,84205,19118],{"class":98},[84,84207,184],{"class":90},[84,84209,35214],{"class":118},[84,84211,35217],{"class":98},[84,84213,184],{"class":90},[84,84215,35222],{"class":118},[84,84217,35225],{"class":90},[84,84219,13911],{"class":94},[84,84221,102],{"class":90},[84,84223,84224,84226,84228],{"class":86,"line":196},[84,84225,274],{"class":90},[84,84227,291],{"class":94},[84,84229,102],{"class":90},[74,84231,84233],{"className":76,"code":35240,"filename":1782,"highlights":84232,"language":79,"meta":80,"style":80},[154,227],[22,84234,84235,84243,84251,84257,84263,84272,84276,84280,84284,84292,84296,84304,84335],{"__ignoreMap":80},[84,84236,84237,84239,84241],{"class":86,"line":87},[84,84238,91],{"class":90},[84,84240,95],{"class":94},[84,84242,102],{"class":90},[84,84244,84245,84247,84249],{"class":86,"line":105},[84,84246,418],{"class":108},[84,84248,1870],{"class":108},[84,84250,175],{"class":90},[84,84252,84253,84255],{"class":86,"line":122},[84,84254,1896],{"class":98},[84,84256,1307],{"class":90},[84,84258,84259,84261],{"class":86,"line":129},[84,84260,1903],{"class":108},[84,84262,175],{"class":90},[84,84264,84266,84268,84270],{"class":84265,"line":154},[86,10151],[84,84267,35277],{"class":90},[84,84269,35170],{"class":118},[84,84271,1887],{"class":90},[84,84273,84274],{"class":86,"line":159},[84,84275,19195],{"class":90},[84,84277,84278],{"class":86,"line":178},[84,84279,1941],{"class":90},[84,84281,84282],{"class":86,"line":190},[84,84283,18973],{"class":90},[84,84285,84286,84288,84290],{"class":86,"line":196},[84,84287,274],{"class":90},[84,84289,95],{"class":94},[84,84291,102],{"class":90},[84,84293,84294],{"class":86,"line":201},[84,84295,126],{"emptyLinePlaceholder":125},[84,84297,84298,84300,84302],{"class":86,"line":217},[84,84299,91],{"class":90},[84,84301,291],{"class":94},[84,84303,102],{"class":90},[84,84305,84307,84309,84311,84313,84315,84317,84319,84321,84323,84325,84327,84329,84331,84333],{"class":84306,"line":227},[86,10151],[84,84308,299],{"class":90},[84,84310,13911],{"class":94},[84,84312,35202],{"class":98},[84,84314,184],{"class":90},[84,84316,35207],{"class":118},[84,84318,19118],{"class":98},[84,84320,184],{"class":90},[84,84322,35214],{"class":118},[84,84324,35217],{"class":98},[84,84326,184],{"class":90},[84,84328,35222],{"class":118},[84,84330,35225],{"class":90},[84,84332,13911],{"class":94},[84,84334,102],{"class":90},[84,84336,84337,84339,84341],{"class":86,"line":232},[84,84338,274],{"class":90},[84,84340,291],{"class":94},[84,84342,102],{"class":90},[1074,84344,35356,84345,909],{"id":35355},[22,84346,34792],{},[74,84348,84350],{"className":76,"code":35361,"filename":873,"highlights":84349,"language":79,"meta":80,"style":80},[129,190],[22,84351,84352,84362,84374,84378,84395,84403,84407,84415,84430,84434,84442],{"__ignoreMap":80},[84,84353,84354,84356,84358,84360],{"class":86,"line":87},[84,84355,91],{"class":90},[84,84357,95],{"class":94},[84,84359,99],{"class":98},[84,84361,102],{"class":90},[84,84363,84364,84366,84368,84370,84372],{"class":86,"line":105},[84,84365,109],{"class":108},[84,84367,112],{"class":90},[84,84369,115],{"class":108},[84,84371,18866],{"class":118},[84,84373,18869],{"class":90},[84,84375,84376],{"class":86,"line":122},[84,84377,126],{"emptyLinePlaceholder":125},[84,84379,84381,84383,84385,84387,84389,84391,84393],{"class":84380,"line":129},[86,10151],[84,84382,132],{"class":108},[84,84384,35398],{"class":135},[84,84386,139],{"class":108},[84,84388,142],{"class":98},[84,84390,145],{"class":90},[84,84392,148],{"class":135},[84,84394,18994],{"class":90},[84,84396,84397,84399,84401],{"class":86,"line":154},[84,84398,274],{"class":90},[84,84400,95],{"class":94},[84,84402,102],{"class":90},[84,84404,84405],{"class":86,"line":159},[84,84406,126],{"emptyLinePlaceholder":125},[84,84408,84409,84411,84413],{"class":86,"line":178},[84,84410,91],{"class":90},[84,84412,291],{"class":94},[84,84414,102],{"class":90},[84,84416,84418,84420,84422,84424,84426,84428],{"class":84417,"line":190},[86,10151],[84,84419,299],{"class":90},[84,84421,302],{"class":94},[84,84423,35438],{"class":98},[84,84425,184],{"class":90},[84,84427,35443],{"class":118},[84,84429,102],{"class":90},[84,84431,84432],{"class":86,"line":196},[84,84433,35450],{"class":90},[84,84435,84436,84438,84440],{"class":86,"line":201},[84,84437,324],{"class":90},[84,84439,302],{"class":94},[84,84441,102],{"class":90},[84,84443,84444,84446,84448],{"class":86,"line":217},[84,84445,274],{"class":90},[84,84447,291],{"class":94},[84,84449,102],{"class":90},[74,84451,84453],{"className":76,"code":35469,"filename":1782,"highlights":84452,"language":79,"meta":80,"style":80},[154,227],[22,84454,84455,84463,84471,84477,84483,84492,84496,84500,84504,84512,84516,84524,84539,84543,84551],{"__ignoreMap":80},[84,84456,84457,84459,84461],{"class":86,"line":87},[84,84458,91],{"class":90},[84,84460,95],{"class":94},[84,84462,102],{"class":90},[84,84464,84465,84467,84469],{"class":86,"line":105},[84,84466,418],{"class":108},[84,84468,1870],{"class":108},[84,84470,175],{"class":90},[84,84472,84473,84475],{"class":86,"line":122},[84,84474,1896],{"class":98},[84,84476,1307],{"class":90},[84,84478,84479,84481],{"class":86,"line":129},[84,84480,1903],{"class":108},[84,84482,175],{"class":90},[84,84484,84486,84488,84490],{"class":84485,"line":154},[86,10151],[84,84487,35506],{"class":90},[84,84489,148],{"class":135},[84,84491,1887],{"class":90},[84,84493,84494],{"class":86,"line":159},[84,84495,19195],{"class":90},[84,84497,84498],{"class":86,"line":178},[84,84499,1941],{"class":90},[84,84501,84502],{"class":86,"line":190},[84,84503,18973],{"class":90},[84,84505,84506,84508,84510],{"class":86,"line":196},[84,84507,274],{"class":90},[84,84509,95],{"class":94},[84,84511,102],{"class":90},[84,84513,84514],{"class":86,"line":201},[84,84515,126],{"emptyLinePlaceholder":125},[84,84517,84518,84520,84522],{"class":86,"line":217},[84,84519,91],{"class":90},[84,84521,291],{"class":94},[84,84523,102],{"class":90},[84,84525,84527,84529,84531,84533,84535,84537],{"class":84526,"line":227},[86,10151],[84,84528,299],{"class":90},[84,84530,302],{"class":94},[84,84532,35438],{"class":98},[84,84534,184],{"class":90},[84,84536,35443],{"class":118},[84,84538,102],{"class":90},[84,84540,84541],{"class":86,"line":232},[84,84542,35450],{"class":90},[84,84544,84545,84547,84549],{"class":86,"line":237},[84,84546,324],{"class":90},[84,84548,302],{"class":94},[84,84550,102],{"class":90},[84,84552,84553,84555,84557],{"class":86,"line":253},[84,84554,274],{"class":90},[84,84556,291],{"class":94},[84,84558,102],{"class":90},[1074,84560,35581,84561,35585],{"id":35580},[22,84562,35584],{},[74,84564,84566],{"className":76,"code":35588,"filename":873,"highlights":84565,"language":79,"meta":80,"style":80},[129,201,217,227,232,237],[22,84567,84568,84578,84590,84594,84611,84627,84635,84639,84647,84653,84662,84667,84672,84677,84682,84686,84690,84698],{"__ignoreMap":80},[84,84569,84570,84572,84574,84576],{"class":86,"line":87},[84,84571,91],{"class":90},[84,84573,95],{"class":94},[84,84575,99],{"class":98},[84,84577,102],{"class":90},[84,84579,84580,84582,84584,84586,84588],{"class":86,"line":105},[84,84581,109],{"class":108},[84,84583,112],{"class":90},[84,84585,115],{"class":108},[84,84587,18866],{"class":118},[84,84589,18869],{"class":90},[84,84591,84592],{"class":86,"line":122},[84,84593,126],{"emptyLinePlaceholder":125},[84,84595,84597,84599,84601,84603,84605,84607,84609],{"class":84596,"line":129},[86,10151],[84,84598,132],{"class":108},[84,84600,446],{"class":135},[84,84602,139],{"class":108},[84,84604,142],{"class":98},[84,84606,145],{"class":90},[84,84608,2938],{"class":135},[84,84610,18994],{"class":90},[84,84612,84613,84615,84617,84619,84621,84623,84625],{"class":86,"line":154},[84,84614,132],{"class":108},[84,84616,4261],{"class":135},[84,84618,139],{"class":108},[84,84620,142],{"class":98},[84,84622,145],{"class":90},[84,84624,148],{"class":135},[84,84626,18994],{"class":90},[84,84628,84629,84631,84633],{"class":86,"line":159},[84,84630,274],{"class":90},[84,84632,95],{"class":94},[84,84634,102],{"class":90},[84,84636,84637],{"class":86,"line":178},[84,84638,126],{"emptyLinePlaceholder":125},[84,84640,84641,84643,84645],{"class":86,"line":190},[84,84642,91],{"class":90},[84,84644,291],{"class":94},[84,84646,102],{"class":90},[84,84648,84649,84651],{"class":86,"line":196},[84,84650,299],{"class":90},[84,84652,35677],{"class":94},[84,84654,84656,84658,84660],{"class":84655,"line":201},[86,10151],[84,84657,35683],{"class":98},[84,84659,184],{"class":90},[84,84661,35688],{"class":118},[84,84663,84665],{"class":84664,"line":217},[86,10151],[84,84666,35694],{"class":118},[84,84668,84670],{"class":84669,"line":227},[86,10151],[84,84671,35700],{"class":118},[84,84673,84675],{"class":84674,"line":232},[86,10151],[84,84676,35706],{"class":118},[84,84678,84680],{"class":84679,"line":237},[86,10151],[84,84681,35712],{"class":118},[84,84683,84684],{"class":86,"line":253},[84,84685,23460],{"class":90},[84,84687,84688],{"class":86,"line":266},[84,84689,35721],{"class":90},[84,84691,84692,84694,84696],{"class":86,"line":271},[84,84693,324],{"class":90},[84,84695,15],{"class":94},[84,84697,102],{"class":90},[84,84699,84700,84702,84704],{"class":86,"line":281},[84,84701,274],{"class":90},[84,84703,291],{"class":94},[84,84705,102],{"class":90},[74,84707,84709],{"className":76,"code":35740,"filename":1782,"highlights":84708,"language":79,"meta":80,"style":80},[154,232,237,253,266,271],[22,84710,84711,84719,84727,84733,84739,84748,84756,84760,84764,84768,84776,84780,84788,84795,84804,84809,84814,84819,84823,84827,84831,84839],{"__ignoreMap":80},[84,84712,84713,84715,84717],{"class":86,"line":87},[84,84714,91],{"class":90},[84,84716,95],{"class":94},[84,84718,102],{"class":90},[84,84720,84721,84723,84725],{"class":86,"line":105},[84,84722,418],{"class":108},[84,84724,1870],{"class":108},[84,84726,175],{"class":90},[84,84728,84729,84731],{"class":86,"line":122},[84,84730,1896],{"class":98},[84,84732,1307],{"class":90},[84,84734,84735,84737],{"class":86,"line":129},[84,84736,1903],{"class":108},[84,84738,175],{"class":90},[84,84740,84742,84744,84746],{"class":84741,"line":154},[86,10151],[84,84743,35777],{"class":90},[84,84745,2938],{"class":135},[84,84747,1887],{"class":90},[84,84749,84750,84752,84754],{"class":86,"line":159},[84,84751,5438],{"class":90},[84,84753,148],{"class":135},[84,84755,1887],{"class":90},[84,84757,84758],{"class":86,"line":178},[84,84759,19195],{"class":90},[84,84761,84762],{"class":86,"line":190},[84,84763,1941],{"class":90},[84,84765,84766],{"class":86,"line":196},[84,84767,18973],{"class":90},[84,84769,84770,84772,84774],{"class":86,"line":201},[84,84771,274],{"class":90},[84,84773,95],{"class":94},[84,84775,102],{"class":90},[84,84777,84778],{"class":86,"line":217},[84,84779,126],{"emptyLinePlaceholder":125},[84,84781,84782,84784,84786],{"class":86,"line":227},[84,84783,91],{"class":90},[84,84785,291],{"class":94},[84,84787,102],{"class":90},[84,84789,84791,84793],{"class":84790,"line":232},[86,10151],[84,84792,299],{"class":90},[84,84794,35677],{"class":94},[84,84796,84798,84800,84802],{"class":84797,"line":237},[86,10151],[84,84799,35683],{"class":98},[84,84801,184],{"class":90},[84,84803,35688],{"class":118},[84,84805,84807],{"class":84806,"line":253},[86,10151],[84,84808,35694],{"class":118},[84,84810,84812],{"class":84811,"line":266},[86,10151],[84,84813,35700],{"class":118},[84,84815,84817],{"class":84816,"line":271},[86,10151],[84,84818,35706],{"class":118},[84,84820,84821],{"class":86,"line":281},[84,84822,35712],{"class":118},[84,84824,84825],{"class":86,"line":286},[84,84826,23460],{"class":90},[84,84828,84829],{"class":86,"line":296},[84,84830,35721],{"class":90},[84,84832,84833,84835,84837],{"class":86,"line":315},[84,84834,324],{"class":90},[84,84836,15],{"class":94},[84,84838,102],{"class":90},[84,84840,84841,84843,84845],{"class":86,"line":321},[84,84842,274],{"class":90},[84,84844,291],{"class":94},[84,84846,102],{"class":90},[1074,84848,27465,84849,35887],{"id":35883},[22,84850,35886],{},[74,84852,84854],{"className":76,"code":35890,"filename":873,"highlights":84853,"language":79,"meta":80,"style":80},[129,154,196],[22,84855,84856,84866,84878,84882,84899,84916,84924,84928,84936,84951,84955,84963],{"__ignoreMap":80},[84,84857,84858,84860,84862,84864],{"class":86,"line":87},[84,84859,91],{"class":90},[84,84861,95],{"class":94},[84,84863,99],{"class":98},[84,84865,102],{"class":90},[84,84867,84868,84870,84872,84874,84876],{"class":86,"line":105},[84,84869,109],{"class":108},[84,84871,112],{"class":90},[84,84873,115],{"class":108},[84,84875,18866],{"class":118},[84,84877,18869],{"class":90},[84,84879,84880],{"class":86,"line":122},[84,84881,126],{"emptyLinePlaceholder":125},[84,84883,84885,84887,84889,84891,84893,84895,84897],{"class":84884,"line":129},[86,10151],[84,84886,132],{"class":108},[84,84888,35927],{"class":135},[84,84890,139],{"class":108},[84,84892,142],{"class":98},[84,84894,145],{"class":90},[84,84896,35936],{"class":135},[84,84898,18994],{"class":90},[84,84900,84902,84904,84906,84908,84910,84912,84914],{"class":84901,"line":154},[86,10151],[84,84903,132],{"class":108},[84,84905,35946],{"class":135},[84,84907,139],{"class":108},[84,84909,142],{"class":98},[84,84911,145],{"class":90},[84,84913,35955],{"class":118},[84,84915,18994],{"class":90},[84,84917,84918,84920,84922],{"class":86,"line":159},[84,84919,274],{"class":90},[84,84921,95],{"class":94},[84,84923,102],{"class":90},[84,84925,84926],{"class":86,"line":178},[84,84927,126],{"emptyLinePlaceholder":125},[84,84929,84930,84932,84934],{"class":86,"line":190},[84,84931,91],{"class":90},[84,84933,291],{"class":94},[84,84935,102],{"class":90},[84,84937,84939,84941,84943,84945,84947,84949],{"class":84938,"line":196},[86,10151],[84,84940,299],{"class":90},[84,84942,15],{"class":94},[84,84944,33987],{"class":98},[84,84946,184],{"class":90},[84,84948,35991],{"class":118},[84,84950,102],{"class":90},[84,84952,84953],{"class":86,"line":201},[84,84954,35998],{"class":90},[84,84956,84957,84959,84961],{"class":86,"line":217},[84,84958,324],{"class":90},[84,84960,15],{"class":94},[84,84962,102],{"class":90},[84,84964,84965,84967,84969],{"class":86,"line":227},[84,84966,274],{"class":90},[84,84968,291],{"class":94},[84,84970,102],{"class":90},[74,84972,84974],{"className":76,"code":36017,"filename":1782,"highlights":84973,"language":79,"meta":80,"style":80},[154,159,232],[22,84975,84976,84984,84992,84998,85004,85013,85022,85026,85030,85034,85042,85046,85054,85069,85073,85081],{"__ignoreMap":80},[84,84977,84978,84980,84982],{"class":86,"line":87},[84,84979,91],{"class":90},[84,84981,95],{"class":94},[84,84983,102],{"class":90},[84,84985,84986,84988,84990],{"class":86,"line":105},[84,84987,418],{"class":108},[84,84989,1870],{"class":108},[84,84991,175],{"class":90},[84,84993,84994,84996],{"class":86,"line":122},[84,84995,1896],{"class":98},[84,84997,1307],{"class":90},[84,84999,85000,85002],{"class":86,"line":129},[84,85001,1903],{"class":108},[84,85003,175],{"class":90},[84,85005,85007,85009,85011],{"class":85006,"line":154},[86,10151],[84,85008,36054],{"class":90},[84,85010,35936],{"class":135},[84,85012,1887],{"class":90},[84,85014,85016,85018,85020],{"class":85015,"line":159},[86,10151],[84,85017,36064],{"class":90},[84,85019,35955],{"class":118},[84,85021,1887],{"class":90},[84,85023,85024],{"class":86,"line":178},[84,85025,19195],{"class":90},[84,85027,85028],{"class":86,"line":190},[84,85029,1941],{"class":90},[84,85031,85032],{"class":86,"line":196},[84,85033,18973],{"class":90},[84,85035,85036,85038,85040],{"class":86,"line":201},[84,85037,274],{"class":90},[84,85039,95],{"class":94},[84,85041,102],{"class":90},[84,85043,85044],{"class":86,"line":217},[84,85045,126],{"emptyLinePlaceholder":125},[84,85047,85048,85050,85052],{"class":86,"line":227},[84,85049,91],{"class":90},[84,85051,291],{"class":94},[84,85053,102],{"class":90},[84,85055,85057,85059,85061,85063,85065,85067],{"class":85056,"line":232},[86,10151],[84,85058,299],{"class":90},[84,85060,15],{"class":94},[84,85062,33987],{"class":98},[84,85064,184],{"class":90},[84,85066,35991],{"class":118},[84,85068,102],{"class":90},[84,85070,85071],{"class":86,"line":237},[84,85072,35998],{"class":90},[84,85074,85075,85077,85079],{"class":86,"line":253},[84,85076,324],{"class":90},[84,85078,15],{"class":94},[84,85080,102],{"class":90},[84,85082,85083,85085,85087],{"class":86,"line":266},[84,85084,274],{"class":90},[84,85086,291],{"class":94},[84,85088,102],{"class":90},[1074,85090,36139,85091],{"id":36138},[22,85092,34818],{},[15,85094,36144],{},[74,85096,85098],{"className":76,"code":36147,"filename":873,"highlights":85097,"language":79,"meta":80,"style":80},[129,154,196],[22,85099,85100,85110,85122,85126,85143,85160,85168,85172,85180,85199],{"__ignoreMap":80},[84,85101,85102,85104,85106,85108],{"class":86,"line":87},[84,85103,91],{"class":90},[84,85105,95],{"class":94},[84,85107,99],{"class":98},[84,85109,102],{"class":90},[84,85111,85112,85114,85116,85118,85120],{"class":86,"line":105},[84,85113,109],{"class":108},[84,85115,112],{"class":90},[84,85117,115],{"class":108},[84,85119,18866],{"class":118},[84,85121,18869],{"class":90},[84,85123,85124],{"class":86,"line":122},[84,85125,126],{"emptyLinePlaceholder":125},[84,85127,85129,85131,85133,85135,85137,85139,85141],{"class":85128,"line":129},[86,10151],[84,85130,132],{"class":108},[84,85132,36184],{"class":135},[84,85134,139],{"class":108},[84,85136,142],{"class":98},[84,85138,145],{"class":90},[84,85140,36193],{"class":118},[84,85142,18994],{"class":90},[84,85144,85146,85148,85150,85152,85154,85156,85158],{"class":85145,"line":154},[86,10151],[84,85147,132],{"class":108},[84,85149,36203],{"class":135},[84,85151,139],{"class":108},[84,85153,142],{"class":98},[84,85155,145],{"class":90},[84,85157,36212],{"class":118},[84,85159,18994],{"class":90},[84,85161,85162,85164,85166],{"class":86,"line":159},[84,85163,274],{"class":90},[84,85165,95],{"class":94},[84,85167,102],{"class":90},[84,85169,85170],{"class":86,"line":178},[84,85171,126],{"emptyLinePlaceholder":125},[84,85173,85174,85176,85178],{"class":86,"line":190},[84,85175,91],{"class":90},[84,85177,291],{"class":94},[84,85179,102],{"class":90},[84,85181,85183,85185,85187,85189,85191,85193,85195,85197],{"class":85182,"line":196},[86,10151],[84,85184,299],{"class":90},[84,85186,302],{"class":94},[84,85188,36244],{"class":98},[84,85190,184],{"class":90},[84,85192,36249],{"class":118},[84,85194,36252],{"class":90},[84,85196,302],{"class":94},[84,85198,102],{"class":90},[84,85200,85201,85203,85205],{"class":86,"line":201},[84,85202,274],{"class":90},[84,85204,291],{"class":94},[84,85206,102],{"class":90},[74,85208,85210],{"className":76,"code":36267,"filename":1782,"highlights":85209,"language":79,"meta":80,"style":80},[154,159,232],[22,85211,85212,85220,85228,85234,85240,85249,85258,85262,85266,85270,85278,85282,85290,85309],{"__ignoreMap":80},[84,85213,85214,85216,85218],{"class":86,"line":87},[84,85215,91],{"class":90},[84,85217,95],{"class":94},[84,85219,102],{"class":90},[84,85221,85222,85224,85226],{"class":86,"line":105},[84,85223,418],{"class":108},[84,85225,1870],{"class":108},[84,85227,175],{"class":90},[84,85229,85230,85232],{"class":86,"line":122},[84,85231,1896],{"class":98},[84,85233,1307],{"class":90},[84,85235,85236,85238],{"class":86,"line":129},[84,85237,1903],{"class":108},[84,85239,175],{"class":90},[84,85241,85243,85245,85247],{"class":85242,"line":154},[86,10151],[84,85244,36304],{"class":90},[84,85246,36193],{"class":118},[84,85248,1887],{"class":90},[84,85250,85252,85254,85256],{"class":85251,"line":159},[86,10151],[84,85253,36314],{"class":90},[84,85255,36212],{"class":118},[84,85257,1887],{"class":90},[84,85259,85260],{"class":86,"line":178},[84,85261,19195],{"class":90},[84,85263,85264],{"class":86,"line":190},[84,85265,1941],{"class":90},[84,85267,85268],{"class":86,"line":196},[84,85269,18973],{"class":90},[84,85271,85272,85274,85276],{"class":86,"line":201},[84,85273,274],{"class":90},[84,85275,95],{"class":94},[84,85277,102],{"class":90},[84,85279,85280],{"class":86,"line":217},[84,85281,126],{"emptyLinePlaceholder":125},[84,85283,85284,85286,85288],{"class":86,"line":227},[84,85285,91],{"class":90},[84,85287,291],{"class":94},[84,85289,102],{"class":90},[84,85291,85293,85295,85297,85299,85301,85303,85305,85307],{"class":85292,"line":232},[86,10151],[84,85294,299],{"class":90},[84,85296,302],{"class":94},[84,85298,36244],{"class":98},[84,85300,184],{"class":90},[84,85302,36249],{"class":118},[84,85304,36252],{"class":90},[84,85306,302],{"class":94},[84,85308,102],{"class":90},[84,85310,85311,85313,85315],{"class":86,"line":237},[84,85312,274],{"class":90},[84,85314,291],{"class":94},[84,85316,102],{"class":90},[1074,85318,36381,85319,36385],{"id":36380},[22,85320,36384],{},[74,85322,85324],{"className":76,"code":36388,"filename":873,"highlights":85323,"language":79,"meta":80,"style":80},[129,154,159,178,190,196,201,237],[22,85325,85326,85336,85348,85352,85365,85374,85383,85392,85401,85410,85415,85423,85427,85435,85450],{"__ignoreMap":80},[84,85327,85328,85330,85332,85334],{"class":86,"line":87},[84,85329,91],{"class":90},[84,85331,95],{"class":94},[84,85333,99],{"class":98},[84,85335,102],{"class":90},[84,85337,85338,85340,85342,85344,85346],{"class":86,"line":105},[84,85339,109],{"class":108},[84,85341,112],{"class":90},[84,85343,115],{"class":108},[84,85345,18866],{"class":118},[84,85347,18869],{"class":90},[84,85349,85350],{"class":86,"line":122},[84,85351,126],{"emptyLinePlaceholder":125},[84,85353,85355,85357,85359,85361,85363],{"class":85354,"line":129},[86,10151],[84,85356,132],{"class":108},[84,85358,36425],{"class":135},[84,85360,139],{"class":108},[84,85362,142],{"class":98},[84,85364,1876],{"class":90},[84,85366,85368,85370,85372],{"class":85367,"line":154},[86,10151],[84,85369,36437],{"class":90},[84,85371,32590],{"class":118},[84,85373,1887],{"class":90},[84,85375,85377,85379,85381],{"class":85376,"line":159},[86,10151],[84,85378,36447],{"class":90},[84,85380,32590],{"class":118},[84,85382,1887],{"class":90},[84,85384,85386,85388,85390],{"class":85385,"line":178},[86,10151],[84,85387,36457],{"class":90},[84,85389,32604],{"class":118},[84,85391,1887],{"class":90},[84,85393,85395,85397,85399],{"class":85394,"line":190},[86,10151],[84,85396,36467],{"class":90},[84,85398,32590],{"class":118},[84,85400,1887],{"class":90},[84,85402,85404,85406,85408],{"class":85403,"line":196},[86,10151],[84,85405,36477],{"class":90},[84,85407,2938],{"class":135},[84,85409,1887],{"class":90},[84,85411,85413],{"class":85412,"line":201},[86,10151],[84,85414,22163],{"class":90},[84,85416,85417,85419,85421],{"class":86,"line":217},[84,85418,274],{"class":90},[84,85420,95],{"class":94},[84,85422,102],{"class":90},[84,85424,85425],{"class":86,"line":227},[84,85426,126],{"emptyLinePlaceholder":125},[84,85428,85429,85431,85433],{"class":86,"line":232},[84,85430,91],{"class":90},[84,85432,291],{"class":94},[84,85434,102],{"class":90},[84,85436,85438,85440,85442,85444,85446,85448],{"class":85437,"line":237},[86,10151],[84,85439,299],{"class":90},[84,85441,18759],{"class":94},[84,85443,34721],{"class":98},[84,85445,184],{"class":90},[84,85447,36520],{"class":118},[84,85449,5100],{"class":90},[84,85451,85452,85454,85456],{"class":86,"line":253},[84,85453,274],{"class":90},[84,85455,291],{"class":94},[84,85457,102],{"class":90},[74,85459,85461],{"className":76,"code":36533,"filename":1782,"highlights":85460,"language":79,"meta":80,"style":80},[154,159,178,190,196,201,217,281],[22,85462,85463,85471,85479,85485,85491,85496,85505,85514,85523,85532,85541,85546,85550,85554,85558,85566,85570,85578,85593],{"__ignoreMap":80},[84,85464,85465,85467,85469],{"class":86,"line":87},[84,85466,91],{"class":90},[84,85468,95],{"class":94},[84,85470,102],{"class":90},[84,85472,85473,85475,85477],{"class":86,"line":105},[84,85474,418],{"class":108},[84,85476,1870],{"class":108},[84,85478,175],{"class":90},[84,85480,85481,85483],{"class":86,"line":122},[84,85482,1896],{"class":98},[84,85484,1307],{"class":90},[84,85486,85487,85489],{"class":86,"line":129},[84,85488,1903],{"class":108},[84,85490,175],{"class":90},[84,85492,85494],{"class":85493,"line":154},[86,10151],[84,85495,36570],{"class":90},[84,85497,85499,85501,85503],{"class":85498,"line":159},[86,10151],[84,85500,36576],{"class":90},[84,85502,32590],{"class":118},[84,85504,1887],{"class":90},[84,85506,85508,85510,85512],{"class":85507,"line":178},[86,10151],[84,85509,36586],{"class":90},[84,85511,32590],{"class":118},[84,85513,1887],{"class":90},[84,85515,85517,85519,85521],{"class":85516,"line":190},[86,10151],[84,85518,36596],{"class":90},[84,85520,32604],{"class":118},[84,85522,1887],{"class":90},[84,85524,85526,85528,85530],{"class":85525,"line":196},[86,10151],[84,85527,36606],{"class":90},[84,85529,32590],{"class":118},[84,85531,1887],{"class":90},[84,85533,85535,85537,85539],{"class":85534,"line":201},[86,10151],[84,85536,36616],{"class":90},[84,85538,2938],{"class":135},[84,85540,1887],{"class":90},[84,85542,85544],{"class":85543,"line":217},[86,10151],[84,85545,3414],{"class":90},[84,85547,85548],{"class":86,"line":227},[84,85549,19195],{"class":90},[84,85551,85552],{"class":86,"line":232},[84,85553,1941],{"class":90},[84,85555,85556],{"class":86,"line":237},[84,85557,18973],{"class":90},[84,85559,85560,85562,85564],{"class":86,"line":253},[84,85561,274],{"class":90},[84,85563,95],{"class":94},[84,85565,102],{"class":90},[84,85567,85568],{"class":86,"line":266},[84,85569,126],{"emptyLinePlaceholder":125},[84,85571,85572,85574,85576],{"class":86,"line":271},[84,85573,91],{"class":90},[84,85575,291],{"class":94},[84,85577,102],{"class":90},[84,85579,85581,85583,85585,85587,85589,85591],{"class":85580,"line":281},[86,10151],[84,85582,299],{"class":90},[84,85584,18759],{"class":94},[84,85586,34721],{"class":98},[84,85588,184],{"class":90},[84,85590,36520],{"class":118},[84,85592,5100],{"class":90},[84,85594,85595,85597,85599],{"class":86,"line":286},[84,85596,274],{"class":90},[84,85598,291],{"class":94},[84,85600,102],{"class":90},[823,85602,85603],{},[15,85604,85605,36687],{},[22,85606,36384],{},[34,85608,36691],{"id":36690},[15,85610,36694,85611,36697],{},[22,85612,18692],{},[74,85614,85615],{"className":76,"code":36700,"filename":873,"language":79,"meta":80,"style":80},[22,85616,85617,85627,85639,85643,85659,85675,85691,85695,85711,85719,85727,85735,85743,85747,85751,85767,85777,85783,85787,85791,85799,85817,85827,85837,85847,85857,85865,85869,85877,85881,85889,85903,85929,85933,85953,85957,85965,85969,85983,85987,85995,86003],{"__ignoreMap":80},[84,85618,85619,85621,85623,85625],{"class":86,"line":87},[84,85620,91],{"class":90},[84,85622,95],{"class":94},[84,85624,99],{"class":98},[84,85626,102],{"class":90},[84,85628,85629,85631,85633,85635,85637],{"class":86,"line":105},[84,85630,109],{"class":108},[84,85632,24087],{"class":90},[84,85634,115],{"class":108},[84,85636,18866],{"class":118},[84,85638,18869],{"class":90},[84,85640,85641],{"class":86,"line":122},[84,85642,126],{"emptyLinePlaceholder":125},[84,85644,85645,85647,85649,85651,85653,85655,85657],{"class":86,"line":129},[84,85646,132],{"class":108},[84,85648,32479],{"class":135},[84,85650,139],{"class":108},[84,85652,142],{"class":98},[84,85654,145],{"class":90},[84,85656,26013],{"class":118},[84,85658,18994],{"class":90},[84,85660,85661,85663,85665,85667,85669,85671,85673],{"class":86,"line":154},[84,85662,132],{"class":108},[84,85664,36751],{"class":135},[84,85666,139],{"class":108},[84,85668,142],{"class":98},[84,85670,145],{"class":90},[84,85672,148],{"class":135},[84,85674,18994],{"class":90},[84,85676,85677,85679,85681,85683,85685,85687,85689],{"class":86,"line":159},[84,85678,132],{"class":108},[84,85680,4261],{"class":135},[84,85682,139],{"class":108},[84,85684,142],{"class":98},[84,85686,145],{"class":90},[84,85688,148],{"class":135},[84,85690,18994],{"class":90},[84,85692,85693],{"class":86,"line":178},[84,85694,126],{"emptyLinePlaceholder":125},[84,85696,85697,85699,85701,85703,85705,85707,85709],{"class":86,"line":190},[84,85698,132],{"class":108},[84,85700,36425],{"class":135},[84,85702,139],{"class":108},[84,85704,2989],{"class":98},[84,85706,2992],{"class":90},[84,85708,172],{"class":108},[84,85710,36798],{"class":90},[84,85712,85713,85715,85717],{"class":86,"line":196},[84,85714,36447],{"class":90},[84,85716,32590],{"class":118},[84,85718,1887],{"class":90},[84,85720,85721,85723,85725],{"class":86,"line":201},[84,85722,36457],{"class":90},[84,85724,36813],{"class":118},[84,85726,1887],{"class":90},[84,85728,85729,85731,85733],{"class":86,"line":217},[84,85730,36467],{"class":90},[84,85732,32590],{"class":118},[84,85734,1887],{"class":90},[84,85736,85737,85739,85741],{"class":86,"line":227},[84,85738,36477],{"class":90},[84,85740,2938],{"class":135},[84,85742,1887],{"class":90},[84,85744,85745],{"class":86,"line":232},[84,85746,36836],{"class":90},[84,85748,85749],{"class":86,"line":237},[84,85750,126],{"emptyLinePlaceholder":125},[84,85752,85753,85755,85757,85759,85761,85763,85765],{"class":86,"line":253},[84,85754,132],{"class":108},[84,85756,36847],{"class":135},[84,85758,139],{"class":108},[84,85760,2989],{"class":98},[84,85762,2992],{"class":90},[84,85764,172],{"class":108},[84,85766,36798],{"class":90},[84,85768,85769,85771,85773,85775],{"class":86,"line":266},[84,85770,36862],{"class":118},[84,85772,21408],{"class":90},[84,85774,1344],{"class":108},[84,85776,36869],{"class":90},[84,85778,85779,85781],{"class":86,"line":271},[84,85780,36874],{"class":118},[84,85782,36877],{"class":90},[84,85784,85785],{"class":86,"line":281},[84,85786,36836],{"class":90},[84,85788,85789],{"class":86,"line":286},[84,85790,126],{"emptyLinePlaceholder":125},[84,85792,85793,85795,85797],{"class":86,"line":296},[84,85794,3246],{"class":108},[84,85796,36892],{"class":98},[84,85798,1307],{"class":90},[84,85800,85801,85803,85805,85807,85809,85811,85813,85815],{"class":86,"line":315},[84,85802,4723],{"class":90},[84,85804,184],{"class":108},[84,85806,36903],{"class":90},[84,85808,32516],{"class":98},[84,85810,8890],{"class":90},[84,85812,3288],{"class":108},[84,85814,33684],{"class":118},[84,85816,18869],{"class":90},[84,85818,85819,85821,85823,85825],{"class":86,"line":321},[84,85820,1338],{"class":108},[84,85822,36920],{"class":90},[84,85824,19063],{"class":108},[84,85826,18869],{"class":90},[84,85828,85829,85831,85833,85835],{"class":86,"line":331},[84,85830,36929],{"class":90},[84,85832,184],{"class":108},[84,85834,21148],{"class":135},[84,85836,18869],{"class":90},[84,85838,85839,85841,85843,85845],{"class":86,"line":336},[84,85840,36940],{"class":98},[84,85842,2992],{"class":90},[84,85844,172],{"class":108},[84,85846,175],{"class":90},[84,85848,85849,85851,85853,85855],{"class":86,"line":354},[84,85850,36951],{"class":90},[84,85852,184],{"class":108},[84,85854,435],{"class":135},[84,85856,18869],{"class":90},[84,85858,85859,85861,85863],{"class":86,"line":360},[84,85860,6888],{"class":90},[84,85862,11994],{"class":135},[84,85864,18994],{"class":90},[84,85866,85867],{"class":86,"line":369},[84,85868,193],{"class":90},[84,85870,85871,85873,85875],{"class":86,"line":1453},[84,85872,274],{"class":90},[84,85874,95],{"class":94},[84,85876,102],{"class":90},[84,85878,85879],{"class":86,"line":1462},[84,85880,126],{"emptyLinePlaceholder":125},[84,85882,85883,85885,85887],{"class":86,"line":1484},[84,85884,91],{"class":90},[84,85886,291],{"class":94},[84,85888,102],{"class":90},[84,85890,85891,85893,85895,85897,85899,85901],{"class":86,"line":1489},[84,85892,299],{"class":90},[84,85894,31973],{"class":94},[84,85896,32570],{"class":98},[84,85898,184],{"class":90},[84,85900,32619],{"class":118},[84,85902,102],{"class":90},[84,85904,85905,85907,85909,85911,85913,85915,85917,85919,85921,85923,85925,85927],{"class":86,"line":1495},[84,85906,1642],{"class":90},[84,85908,18759],{"class":94},[84,85910,34721],{"class":98},[84,85912,184],{"class":90},[84,85914,36520],{"class":118},[84,85916,24454],{"class":98},[84,85918,184],{"class":90},[84,85920,32590],{"class":118},[84,85922,37024],{"class":98},[84,85924,184],{"class":90},[84,85926,37029],{"class":118},[84,85928,5100],{"class":90},[84,85930,85931],{"class":86,"line":1500},[84,85932,126],{"emptyLinePlaceholder":125},[84,85934,85935,85937,85939,85941,85943,85945,85947,85949,85951],{"class":86,"line":1516},[84,85936,1642],{"class":90},[84,85938,302],{"class":94},[84,85940,35438],{"class":98},[84,85942,184],{"class":90},[84,85944,37048],{"class":118},[84,85946,37024],{"class":98},[84,85948,184],{"class":90},[84,85950,37055],{"class":118},[84,85952,102],{"class":90},[84,85954,85955],{"class":86,"line":1533},[84,85956,37062],{"class":90},[84,85958,85959,85961,85963],{"class":86,"line":1538},[84,85960,1734],{"class":90},[84,85962,302],{"class":94},[84,85964,102],{"class":90},[84,85966,85967],{"class":86,"line":1545},[84,85968,126],{"emptyLinePlaceholder":125},[84,85970,85971,85973,85975,85977,85979,85981],{"class":86,"line":1554},[84,85972,1642],{"class":90},[84,85974,15],{"class":94},[84,85976,33987],{"class":98},[84,85978,184],{"class":90},[84,85980,37087],{"class":118},[84,85982,102],{"class":90},[84,85984,85985],{"class":86,"line":1563},[84,85986,37094],{"class":90},[84,85988,85989,85991,85993],{"class":86,"line":1570},[84,85990,1734],{"class":90},[84,85992,15],{"class":94},[84,85994,102],{"class":90},[84,85996,85997,85999,86001],{"class":86,"line":1588},[84,85998,324],{"class":90},[84,86000,31973],{"class":94},[84,86002,102],{"class":90},[84,86004,86005,86007,86009],{"class":86,"line":1593},[84,86006,274],{"class":90},[84,86008,291],{"class":94},[84,86010,102],{"class":90},[74,86012,86013],{"className":76,"code":37121,"filename":1782,"language":79,"meta":80,"style":80},[22,86014,86015,86023,86031,86037,86043,86051,86059,86067,86071,86075,86079,86085,86091,86099,86107,86115,86123,86127,86131,86137,86143,86155,86165,86169,86173,86177,86181,86187,86209,86223,86235,86245,86257,86265,86269,86273,86277,86285,86289,86297,86311,86337,86341,86361,86365,86373,86377,86391,86395,86403,86411],{"__ignoreMap":80},[84,86016,86017,86019,86021],{"class":86,"line":87},[84,86018,91],{"class":90},[84,86020,95],{"class":94},[84,86022,102],{"class":90},[84,86024,86025,86027,86029],{"class":86,"line":105},[84,86026,418],{"class":108},[84,86028,1870],{"class":108},[84,86030,175],{"class":90},[84,86032,86033,86035],{"class":86,"line":122},[84,86034,1896],{"class":98},[84,86036,1307],{"class":90},[84,86038,86039,86041],{"class":86,"line":129},[84,86040,1903],{"class":108},[84,86042,175],{"class":90},[84,86044,86045,86047,86049],{"class":86,"line":154},[84,86046,32687],{"class":90},[84,86048,26013],{"class":118},[84,86050,1887],{"class":90},[84,86052,86053,86055,86057],{"class":86,"line":159},[84,86054,37164],{"class":90},[84,86056,148],{"class":135},[84,86058,1887],{"class":90},[84,86060,86061,86063,86065],{"class":86,"line":178},[84,86062,5438],{"class":90},[84,86064,148],{"class":135},[84,86066,1887],{"class":90},[84,86068,86069],{"class":86,"line":190},[84,86070,19195],{"class":90},[84,86072,86073],{"class":86,"line":196},[84,86074,1941],{"class":90},[84,86076,86077],{"class":86,"line":201},[84,86078,3527],{"class":90},[84,86080,86081,86083],{"class":86,"line":217},[84,86082,37193],{"class":98},[84,86084,1307],{"class":90},[84,86086,86087,86089],{"class":86,"line":227},[84,86088,3539],{"class":108},[84,86090,175],{"class":90},[84,86092,86093,86095,86097],{"class":86,"line":232},[84,86094,36586],{"class":90},[84,86096,32590],{"class":118},[84,86098,1887],{"class":90},[84,86100,86101,86103,86105],{"class":86,"line":237},[84,86102,36596],{"class":90},[84,86104,36813],{"class":118},[84,86106,1887],{"class":90},[84,86108,86109,86111,86113],{"class":86,"line":253},[84,86110,36606],{"class":90},[84,86112,32590],{"class":118},[84,86114,1887],{"class":90},[84,86116,86117,86119,86121],{"class":86,"line":266},[84,86118,36616],{"class":90},[84,86120,2938],{"class":135},[84,86122,1887],{"class":90},[84,86124,86125],{"class":86,"line":271},[84,86126,37238],{"class":90},[84,86128,86129],{"class":86,"line":281},[84,86130,7783],{"class":90},[84,86132,86133,86135],{"class":86,"line":286},[84,86134,37247],{"class":98},[84,86136,1307],{"class":90},[84,86138,86139,86141],{"class":86,"line":296},[84,86140,3539],{"class":108},[84,86142,175],{"class":90},[84,86144,86145,86147,86149,86151,86153],{"class":86,"line":315},[84,86146,37260],{"class":118},[84,86148,21408],{"class":90},[84,86150,1344],{"class":108},[84,86152,2151],{"class":135},[84,86154,37269],{"class":90},[84,86156,86157,86159,86161,86163],{"class":86,"line":321},[84,86158,37274],{"class":118},[84,86160,21408],{"class":90},[84,86162,2151],{"class":135},[84,86164,37269],{"class":90},[84,86166,86167],{"class":86,"line":331},[84,86168,37238],{"class":90},[84,86170,86171],{"class":86,"line":336},[84,86172,7783],{"class":90},[84,86174,86175],{"class":86,"line":354},[84,86176,1941],{"class":90},[84,86178,86179],{"class":86,"line":360},[84,86180,1950],{"class":90},[84,86182,86183,86185],{"class":86,"line":369},[84,86184,37301],{"class":98},[84,86186,1307],{"class":90},[84,86188,86189,86191,86193,86195,86197,86199,86201,86203,86205,86207],{"class":86,"line":1453},[84,86190,2022],{"class":135},[84,86192,5502],{"class":90},[84,86194,184],{"class":108},[84,86196,2078],{"class":135},[84,86198,32723],{"class":90},[84,86200,32516],{"class":98},[84,86202,8890],{"class":90},[84,86204,3288],{"class":108},[84,86206,33684],{"class":118},[84,86208,18869],{"class":90},[84,86210,86211,86213,86215,86217,86219,86221],{"class":86,"line":1462},[84,86212,1987],{"class":108},[84,86214,1341],{"class":90},[84,86216,2151],{"class":135},[84,86218,37336],{"class":90},[84,86220,19063],{"class":108},[84,86222,18869],{"class":90},[84,86224,86225,86227,86229,86231,86233],{"class":86,"line":1484},[84,86226,2022],{"class":135},[84,86228,37347],{"class":90},[84,86230,184],{"class":108},[84,86232,21148],{"class":135},[84,86234,18869],{"class":90},[84,86236,86237,86239,86241,86243],{"class":86,"line":1489},[84,86238,37358],{"class":98},[84,86240,2992],{"class":90},[84,86242,172],{"class":108},[84,86244,175],{"class":90},[84,86246,86247,86249,86251,86253,86255],{"class":86,"line":1495},[84,86248,9580],{"class":135},[84,86250,37347],{"class":90},[84,86252,184],{"class":108},[84,86254,435],{"class":135},[84,86256,18869],{"class":90},[84,86258,86259,86261,86263],{"class":86,"line":1500},[84,86260,7851],{"class":90},[84,86262,11994],{"class":135},[84,86264,18994],{"class":90},[84,86266,86267],{"class":86,"line":1516},[84,86268,7783],{"class":90},[84,86270,86271],{"class":86,"line":1533},[84,86272,1941],{"class":90},[84,86274,86275],{"class":86,"line":1538},[84,86276,18973],{"class":90},[84,86278,86279,86281,86283],{"class":86,"line":1545},[84,86280,274],{"class":90},[84,86282,95],{"class":94},[84,86284,102],{"class":90},[84,86286,86287],{"class":86,"line":1554},[84,86288,126],{"emptyLinePlaceholder":125},[84,86290,86291,86293,86295],{"class":86,"line":1563},[84,86292,91],{"class":90},[84,86294,291],{"class":94},[84,86296,102],{"class":90},[84,86298,86299,86301,86303,86305,86307,86309],{"class":86,"line":1570},[84,86300,299],{"class":90},[84,86302,31973],{"class":94},[84,86304,32570],{"class":98},[84,86306,184],{"class":90},[84,86308,32619],{"class":118},[84,86310,102],{"class":90},[84,86312,86313,86315,86317,86319,86321,86323,86325,86327,86329,86331,86333,86335],{"class":86,"line":1588},[84,86314,1642],{"class":90},[84,86316,18759],{"class":94},[84,86318,34721],{"class":98},[84,86320,184],{"class":90},[84,86322,36520],{"class":118},[84,86324,24454],{"class":98},[84,86326,184],{"class":90},[84,86328,32590],{"class":118},[84,86330,37024],{"class":98},[84,86332,184],{"class":90},[84,86334,37029],{"class":118},[84,86336,5100],{"class":90},[84,86338,86339],{"class":86,"line":1593},[84,86340,126],{"emptyLinePlaceholder":125},[84,86342,86343,86345,86347,86349,86351,86353,86355,86357,86359],{"class":86,"line":1598},[84,86344,1642],{"class":90},[84,86346,302],{"class":94},[84,86348,35438],{"class":98},[84,86350,184],{"class":90},[84,86352,37048],{"class":118},[84,86354,37024],{"class":98},[84,86356,184],{"class":90},[84,86358,37055],{"class":118},[84,86360,102],{"class":90},[84,86362,86363],{"class":86,"line":1607},[84,86364,37062],{"class":90},[84,86366,86367,86369,86371],{"class":86,"line":1612},[84,86368,1734],{"class":90},[84,86370,302],{"class":94},[84,86372,102],{"class":90},[84,86374,86375],{"class":86,"line":1621},[84,86376,126],{"emptyLinePlaceholder":125},[84,86378,86379,86381,86383,86385,86387,86389],{"class":86,"line":1639},[84,86380,1642],{"class":90},[84,86382,15],{"class":94},[84,86384,33987],{"class":98},[84,86386,184],{"class":90},[84,86388,37087],{"class":118},[84,86390,102],{"class":90},[84,86392,86393],{"class":86,"line":1661},[84,86394,37094],{"class":90},[84,86396,86397,86399,86401],{"class":86,"line":1666},[84,86398,1734],{"class":90},[84,86400,15],{"class":94},[84,86402,102],{"class":90},[84,86404,86405,86407,86409],{"class":86,"line":1688},[84,86406,324],{"class":90},[84,86408,31973],{"class":94},[84,86410,102],{"class":90},[84,86412,86413,86415,86417],{"class":86,"line":1703},[84,86414,274],{"class":90},[84,86416,291],{"class":94},[84,86418,102],{"class":90},[34,86420,2406],{"id":2405},[15,86422,86423,37545],{},[22,86424,18692],{},[15,86426,37548],{},[737,86428,86429,86435,86441,86445],{},[740,86430,86431,37555,86433,764],{},[22,86432,1203],{},[22,86434,18692],{},[740,86436,37560,86437,2488,86439,764],{},[22,86438,34809],{},[22,86440,835],{},[740,86442,37567,86443,764],{},[22,86444,2523],{},[740,86446,86447,37574],{},[22,86448,36384],{},[15,86450,37577,86451,37580],{},[22,86452,18692],{},[835,86454,37583],{},{"title":80,"searchDepth":105,"depth":105,"links":86456},[86457,86458,86459,86460,86461,86467,86475,86476],{"id":21333,"depth":105,"text":21334},{"id":25349,"depth":105,"text":25350},{"id":1012,"depth":105,"text":1013},{"id":1039,"depth":105,"text":1040},{"id":783,"depth":105,"text":784,"children":86462},[86463,86464,86465,86466],{"id":34874,"depth":122,"text":37593},{"id":34975,"depth":122,"text":37595},{"id":35059,"depth":122,"text":35060},{"id":35104,"depth":122,"text":37598},{"id":2735,"depth":105,"text":2736,"children":86468},[86469,86470,86471,86472,86473,86474],{"id":35118,"depth":122,"text":37602},{"id":35355,"depth":122,"text":37604},{"id":35580,"depth":122,"text":37606},{"id":35883,"depth":122,"text":37608},{"id":36138,"depth":122,"text":37610},{"id":36380,"depth":122,"text":37612},{"id":36690,"depth":105,"text":36691},{"id":2405,"depth":105,"text":2406},{"updatedAt":37620,"coverCaption":18477,"author":868,"keywords":86478},[870,18692,37622,37623,37624,873,1782],[86480],{"headline":37628,"author":86481,"datePublished":37620,"@type":880},{"name":868,"@type":879},{"title":34659,"description":37618},[86484,86485,86486,86487],{"tag":21297,"color":21298},{"tag":22594,"color":22595},{"tag":3945,"color":3946},{"tag":894,"color":895},{"id":37639,"title":37640,"body":86489,"cover":40966,"coverAlt":40967,"date":40968,"description":40969,"draft":852,"extension":853,"lab":882,"locale":864,"meta":89582,"navigation":125,"path":40974,"schemaOrg":89584,"seo":89587,"series":21291,"seriesDescription":21292,"seriesOrder":122,"seriesTitle":21293,"slug":882,"stem":40980,"tags":89588,"__hash__":40987},{"type":8,"value":86490,"toc":89557},[86491,86495,86499,86501,86511,86513,86515,86517,86529,86533,86541,86545,86547,86555,86557,86561,86579,86581,86695,86817,86819,86821,87018,87223,87227,87231,87233,87347,87469,87471,87599,87735,87739,87919,88107,88109,88113,88119,88373,88633,88637,88779,88937,88939,89142,89353,89357,89363,89415,89417,89423,89429,89491,89497,89501,89503,89507,89511,89513,89533,89535,89539,89541,89553,89555],[11,86492,37646,86493,37649],{"id":37645},[22,86494,25577],{},[15,86496,86497,37654],{},[22,86498,25577],{},[15,86500,37657],{},[737,86502,86503,86507],{},[740,86504,86505,37664],{},[22,86506,25577],{},[740,86508,86509,37670],{},[22,86510,37669],{},[15,86512,37673],{},[34,86514,21334],{"id":21333},[15,86516,37678],{},[737,86518,86519,86521,86523,86525,86527],{},[740,86520,37683],{},[740,86522,37686],{},[740,86524,37689],{},[740,86526,37692],{},[740,86528,37695],{},[15,86530,37698,86531,37701],{},[22,86532,2580],{},[737,86534,86535,86537,86539],{},[740,86536,37706],{},[740,86538,37709],{},[740,86540,37712],{},[34,86542,37716,86543],{"id":37715},[22,86544,25577],{},[15,86546,37721],{},[737,86548,86549,86551,86553],{},[740,86550,37726],{},[740,86552,37729],{},[740,86554,37732],{},[34,86556,1040],{"id":1039},[15,86558,37737,86559,37740],{},[22,86560,25577],{},[737,86562,86563,86565,86573],{},[740,86564,37745],{},[740,86566,37748,86567,2488,86569,37753,86571],{},[22,86568,8299],{},[22,86570,25577],{},[22,86572,2523],{},[740,86574,10045,86575,37761,86577,37764],{},[22,86576,37760],{},[22,86578,2580],{},[34,86580,37768],{"id":37767},[74,86582,86584],{"className":76,"code":37771,"filename":873,"highlights":86583,"language":79,"meta":80,"style":80},[190],[22,86585,86586,86596,86606,86610,86634,86642,86646,86654,86675,86679,86687],{"__ignoreMap":80},[84,86587,86588,86590,86592,86594],{"class":86,"line":87},[84,86589,91],{"class":90},[84,86591,95],{"class":94},[84,86593,99],{"class":98},[84,86595,102],{"class":90},[84,86597,86598,86600,86602,86604],{"class":86,"line":105},[84,86599,109],{"class":108},[84,86601,112],{"class":90},[84,86603,115],{"class":108},[84,86605,119],{"class":118},[84,86607,86608],{"class":86,"line":122},[84,86609,126],{"emptyLinePlaceholder":125},[84,86611,86612,86614,86616,86618,86620,86622,86624,86626,86628,86630,86632],{"class":86,"line":129},[84,86613,132],{"class":108},[84,86615,37805],{"class":135},[84,86617,139],{"class":108},[84,86619,142],{"class":98},[84,86621,37812],{"class":90},[84,86623,37815],{"class":118},[84,86625,754],{"class":90},[84,86627,37820],{"class":118},[84,86629,754],{"class":90},[84,86631,37825],{"class":118},[84,86633,2973],{"class":90},[84,86635,86636,86638,86640],{"class":86,"line":154},[84,86637,274],{"class":90},[84,86639,95],{"class":94},[84,86641,102],{"class":90},[84,86643,86644],{"class":86,"line":159},[84,86645,126],{"emptyLinePlaceholder":125},[84,86647,86648,86650,86652],{"class":86,"line":178},[84,86649,91],{"class":90},[84,86651,291],{"class":94},[84,86653,102],{"class":90},[84,86655,86657,86659,86661,86663,86665,86667,86669,86671,86673],{"class":86656,"line":190},[86,10151],[84,86658,299],{"class":90},[84,86660,740],{"class":94},[84,86662,13525],{"class":98},[84,86664,184],{"class":90},[84,86666,37861],{"class":118},[84,86668,5092],{"class":98},[84,86670,184],{"class":90},[84,86672,37868],{"class":118},[84,86674,102],{"class":90},[84,86676,86677],{"class":86,"line":196},[84,86678,37875],{"class":90},[84,86680,86681,86683,86685],{"class":86,"line":201},[84,86682,324],{"class":90},[84,86684,740],{"class":94},[84,86686,102],{"class":90},[84,86688,86689,86691,86693],{"class":86,"line":217},[84,86690,274],{"class":90},[84,86692,291],{"class":94},[84,86694,102],{"class":90},[74,86696,86698],{"className":76,"code":37894,"filename":1782,"highlights":86697,"language":79,"meta":80,"style":80},[227],[22,86699,86700,86708,86716,86722,86728,86744,86748,86752,86756,86764,86768,86776,86797,86801,86809],{"__ignoreMap":80},[84,86701,86702,86704,86706],{"class":86,"line":87},[84,86703,91],{"class":90},[84,86705,95],{"class":94},[84,86707,102],{"class":90},[84,86709,86710,86712,86714],{"class":86,"line":105},[84,86711,418],{"class":108},[84,86713,1870],{"class":108},[84,86715,175],{"class":90},[84,86717,86718,86720],{"class":86,"line":122},[84,86719,1896],{"class":98},[84,86721,1307],{"class":90},[84,86723,86724,86726],{"class":86,"line":129},[84,86725,1903],{"class":108},[84,86727,175],{"class":90},[84,86729,86730,86732,86734,86736,86738,86740,86742],{"class":86,"line":154},[84,86731,37930],{"class":90},[84,86733,37815],{"class":118},[84,86735,754],{"class":90},[84,86737,37820],{"class":118},[84,86739,754],{"class":90},[84,86741,37825],{"class":118},[84,86743,37943],{"class":90},[84,86745,86746],{"class":86,"line":159},[84,86747,1936],{"class":90},[84,86749,86750],{"class":86,"line":178},[84,86751,485],{"class":90},[84,86753,86754],{"class":86,"line":190},[84,86755,193],{"class":90},[84,86757,86758,86760,86762],{"class":86,"line":196},[84,86759,274],{"class":90},[84,86761,95],{"class":94},[84,86763,102],{"class":90},[84,86765,86766],{"class":86,"line":201},[84,86767,126],{"emptyLinePlaceholder":125},[84,86769,86770,86772,86774],{"class":86,"line":217},[84,86771,91],{"class":90},[84,86773,291],{"class":94},[84,86775,102],{"class":90},[84,86777,86779,86781,86783,86785,86787,86789,86791,86793,86795],{"class":86778,"line":227},[86,10151],[84,86780,299],{"class":90},[84,86782,740],{"class":94},[84,86784,13525],{"class":98},[84,86786,184],{"class":90},[84,86788,37861],{"class":118},[84,86790,5092],{"class":98},[84,86792,184],{"class":90},[84,86794,37868],{"class":118},[84,86796,102],{"class":90},[84,86798,86799],{"class":86,"line":232},[84,86800,37875],{"class":90},[84,86802,86803,86805,86807],{"class":86,"line":237},[84,86804,324],{"class":90},[84,86806,740],{"class":94},[84,86808,102],{"class":90},[84,86810,86811,86813,86815],{"class":86,"line":253},[84,86812,274],{"class":90},[84,86814,291],{"class":94},[84,86816,102],{"class":90},[34,86818,38020],{"id":38019},[15,86820,38023],{},[74,86822,86824],{"className":76,"code":38026,"filename":873,"highlights":86823,"language":79,"meta":80,"style":80},[129,154,159,178,190,232],[22,86825,86826,86836,86846,86850,86863,86880,86897,86914,86919,86927,86931,86939,86947,86968,86982,86986,86994,87002,87010],{"__ignoreMap":80},[84,86827,86828,86830,86832,86834],{"class":86,"line":87},[84,86829,91],{"class":90},[84,86831,95],{"class":94},[84,86833,99],{"class":98},[84,86835,102],{"class":90},[84,86837,86838,86840,86842,86844],{"class":86,"line":105},[84,86839,109],{"class":108},[84,86841,112],{"class":90},[84,86843,115],{"class":108},[84,86845,119],{"class":118},[84,86847,86848],{"class":86,"line":122},[84,86849,126],{"emptyLinePlaceholder":125},[84,86851,86853,86855,86857,86859,86861],{"class":86852,"line":129},[86,10151],[84,86854,132],{"class":108},[84,86856,38061],{"class":135},[84,86858,139],{"class":108},[84,86860,142],{"class":98},[84,86862,2894],{"class":90},[84,86864,86866,86868,86870,86872,86874,86876,86878],{"class":86865,"line":154},[86,10151],[84,86867,2899],{"class":90},[84,86869,2862],{"class":135},[84,86871,10443],{"class":90},[84,86873,38079],{"class":118},[84,86875,2910],{"class":90},[84,86877,2938],{"class":135},[84,86879,2921],{"class":90},[84,86881,86883,86885,86887,86889,86891,86893,86895],{"class":86882,"line":159},[86,10151],[84,86884,2899],{"class":90},[84,86886,2928],{"class":135},[84,86888,10443],{"class":90},[84,86890,38097],{"class":118},[84,86892,2910],{"class":90},[84,86894,148],{"class":135},[84,86896,2921],{"class":90},[84,86898,86900,86902,86904,86906,86908,86910,86912],{"class":86899,"line":178},[86,10151],[84,86901,2899],{"class":90},[84,86903,2952],{"class":135},[84,86905,10443],{"class":90},[84,86907,38115],{"class":118},[84,86909,2910],{"class":90},[84,86911,148],{"class":135},[84,86913,2968],{"class":90},[84,86915,86917],{"class":86916,"line":190},[86,10151],[84,86918,2973],{"class":90},[84,86920,86921,86923,86925],{"class":86,"line":196},[84,86922,274],{"class":90},[84,86924,95],{"class":94},[84,86926,102],{"class":90},[84,86928,86929],{"class":86,"line":201},[84,86930,126],{"emptyLinePlaceholder":125},[84,86932,86933,86935,86937],{"class":86,"line":217},[84,86934,91],{"class":90},[84,86936,291],{"class":94},[84,86938,102],{"class":90},[84,86940,86941,86943,86945],{"class":86,"line":227},[84,86942,299],{"class":90},[84,86944,737],{"class":94},[84,86946,102],{"class":90},[84,86948,86950,86952,86954,86956,86958,86960,86962,86964,86966],{"class":86949,"line":232},[86,10151],[84,86951,1642],{"class":90},[84,86953,740],{"class":94},[84,86955,13525],{"class":98},[84,86957,184],{"class":90},[84,86959,38168],{"class":118},[84,86961,5092],{"class":98},[84,86963,184],{"class":90},[84,86965,38175],{"class":118},[84,86967,102],{"class":90},[84,86969,86970,86972,86974,86976,86978,86980],{"class":86,"line":237},[84,86971,1691],{"class":90},[84,86973,84],{"class":94},[84,86975,33987],{"class":98},[84,86977,184],{"class":90},[84,86979,38190],{"class":118},[84,86981,102],{"class":90},[84,86983,86984],{"class":86,"line":253},[84,86985,38197],{"class":90},[84,86987,86988,86990,86992],{"class":86,"line":266},[84,86989,4952],{"class":90},[84,86991,84],{"class":94},[84,86993,102],{"class":90},[84,86995,86996,86998,87000],{"class":86,"line":271},[84,86997,1734],{"class":90},[84,86999,740],{"class":94},[84,87001,102],{"class":90},[84,87003,87004,87006,87008],{"class":86,"line":281},[84,87005,324],{"class":90},[84,87007,737],{"class":94},[84,87009,102],{"class":90},[84,87011,87012,87014,87016],{"class":86,"line":286},[84,87013,274],{"class":90},[84,87015,291],{"class":94},[84,87017,102],{"class":90},[74,87019,87021],{"className":76,"code":38232,"filename":1782,"highlights":87020,"language":79,"meta":80,"style":80},[154,159,178,190,196,271],[22,87022,87023,87031,87039,87045,87051,87056,87073,87090,87107,87112,87116,87120,87124,87132,87136,87144,87152,87173,87187,87191,87199,87207,87215],{"__ignoreMap":80},[84,87024,87025,87027,87029],{"class":86,"line":87},[84,87026,91],{"class":90},[84,87028,95],{"class":94},[84,87030,102],{"class":90},[84,87032,87033,87035,87037],{"class":86,"line":105},[84,87034,418],{"class":108},[84,87036,1870],{"class":108},[84,87038,175],{"class":90},[84,87040,87041,87043],{"class":86,"line":122},[84,87042,1896],{"class":98},[84,87044,1307],{"class":90},[84,87046,87047,87049],{"class":86,"line":129},[84,87048,1903],{"class":108},[84,87050,175],{"class":90},[84,87052,87054],{"class":87053,"line":154},[86,10151],[84,87055,38269],{"class":90},[84,87057,87059,87061,87063,87065,87067,87069,87071],{"class":87058,"line":159},[86,10151],[84,87060,3449],{"class":90},[84,87062,2862],{"class":135},[84,87064,10443],{"class":90},[84,87066,38079],{"class":118},[84,87068,2910],{"class":90},[84,87070,2938],{"class":135},[84,87072,2921],{"class":90},[84,87074,87076,87078,87080,87082,87084,87086,87088],{"class":87075,"line":178},[86,10151],[84,87077,3449],{"class":90},[84,87079,2928],{"class":135},[84,87081,10443],{"class":90},[84,87083,38097],{"class":118},[84,87085,2910],{"class":90},[84,87087,148],{"class":135},[84,87089,2921],{"class":90},[84,87091,87093,87095,87097,87099,87101,87103,87105],{"class":87092,"line":190},[86,10151],[84,87094,3449],{"class":90},[84,87096,2952],{"class":135},[84,87098,10443],{"class":90},[84,87100,38115],{"class":118},[84,87102,2910],{"class":90},[84,87104,148],{"class":135},[84,87106,2968],{"class":90},[84,87108,87110],{"class":87109,"line":196},[86,10151],[84,87111,3510],{"class":90},[84,87113,87114],{"class":86,"line":201},[84,87115,1936],{"class":90},[84,87117,87118],{"class":86,"line":217},[84,87119,485],{"class":90},[84,87121,87122],{"class":86,"line":227},[84,87123,193],{"class":90},[84,87125,87126,87128,87130],{"class":86,"line":232},[84,87127,274],{"class":90},[84,87129,95],{"class":94},[84,87131,102],{"class":90},[84,87133,87134],{"class":86,"line":237},[84,87135,126],{"emptyLinePlaceholder":125},[84,87137,87138,87140,87142],{"class":86,"line":253},[84,87139,91],{"class":90},[84,87141,291],{"class":94},[84,87143,102],{"class":90},[84,87145,87146,87148,87150],{"class":86,"line":266},[84,87147,299],{"class":90},[84,87149,737],{"class":94},[84,87151,102],{"class":90},[84,87153,87155,87157,87159,87161,87163,87165,87167,87169,87171],{"class":87154,"line":271},[86,10151],[84,87156,1642],{"class":90},[84,87158,740],{"class":94},[84,87160,13525],{"class":98},[84,87162,184],{"class":90},[84,87164,38168],{"class":118},[84,87166,5092],{"class":98},[84,87168,184],{"class":90},[84,87170,38175],{"class":118},[84,87172,102],{"class":90},[84,87174,87175,87177,87179,87181,87183,87185],{"class":86,"line":281},[84,87176,1691],{"class":90},[84,87178,84],{"class":94},[84,87180,33987],{"class":98},[84,87182,184],{"class":90},[84,87184,38190],{"class":118},[84,87186,102],{"class":90},[84,87188,87189],{"class":86,"line":286},[84,87190,38197],{"class":90},[84,87192,87193,87195,87197],{"class":86,"line":296},[84,87194,4952],{"class":90},[84,87196,84],{"class":94},[84,87198,102],{"class":90},[84,87200,87201,87203,87205],{"class":86,"line":315},[84,87202,1734],{"class":90},[84,87204,740],{"class":94},[84,87206,102],{"class":90},[84,87208,87209,87211,87213],{"class":86,"line":321},[84,87210,324],{"class":90},[84,87212,737],{"class":94},[84,87214,102],{"class":90},[84,87216,87217,87219,87221],{"class":86,"line":331},[84,87218,274],{"class":90},[84,87220,291],{"class":94},[84,87222,102],{"class":90},[34,87224,38440,87225],{"id":38439},[22,87226,38443],{},[1074,87228,38447,87229],{"id":38446},[22,87230,25577],{},[15,87232,38452],{},[74,87234,87236],{"className":76,"code":38455,"filename":873,"highlights":87235,"language":79,"meta":80,"style":80},[190],[22,87237,87238,87248,87258,87262,87286,87294,87298,87306,87327,87331,87339],{"__ignoreMap":80},[84,87239,87240,87242,87244,87246],{"class":86,"line":87},[84,87241,91],{"class":90},[84,87243,95],{"class":94},[84,87245,99],{"class":98},[84,87247,102],{"class":90},[84,87249,87250,87252,87254,87256],{"class":86,"line":105},[84,87251,109],{"class":108},[84,87253,112],{"class":90},[84,87255,115],{"class":108},[84,87257,119],{"class":118},[84,87259,87260],{"class":86,"line":122},[84,87261,126],{"emptyLinePlaceholder":125},[84,87263,87264,87266,87268,87270,87272,87274,87276,87278,87280,87282,87284],{"class":86,"line":129},[84,87265,132],{"class":108},[84,87267,11767],{"class":135},[84,87269,139],{"class":108},[84,87271,142],{"class":98},[84,87273,37812],{"class":90},[84,87275,2918],{"class":118},[84,87277,754],{"class":90},[84,87279,2943],{"class":118},[84,87281,754],{"class":90},[84,87283,38505],{"class":118},[84,87285,2973],{"class":90},[84,87287,87288,87290,87292],{"class":86,"line":154},[84,87289,274],{"class":90},[84,87291,95],{"class":94},[84,87293,102],{"class":90},[84,87295,87296],{"class":86,"line":159},[84,87297,126],{"emptyLinePlaceholder":125},[84,87299,87300,87302,87304],{"class":86,"line":178},[84,87301,91],{"class":90},[84,87303,291],{"class":94},[84,87305,102],{"class":90},[84,87307,87309,87311,87313,87315,87317,87319,87321,87323,87325],{"class":87308,"line":190},[86,10151],[84,87310,299],{"class":90},[84,87312,15],{"class":94},[84,87314,13525],{"class":98},[84,87316,184],{"class":90},[84,87318,38541],{"class":118},[84,87320,5092],{"class":98},[84,87322,184],{"class":90},[84,87324,22227],{"class":118},[84,87326,102],{"class":90},[84,87328,87329],{"class":86,"line":196},[84,87330,38554],{"class":90},[84,87332,87333,87335,87337],{"class":86,"line":201},[84,87334,324],{"class":90},[84,87336,15],{"class":94},[84,87338,102],{"class":90},[84,87340,87341,87343,87345],{"class":86,"line":217},[84,87342,274],{"class":90},[84,87344,291],{"class":94},[84,87346,102],{"class":90},[74,87348,87350],{"className":76,"code":38573,"filename":1782,"highlights":87349,"language":79,"meta":80,"style":80},[227],[22,87351,87352,87360,87368,87374,87380,87396,87400,87404,87408,87416,87420,87428,87449,87453,87461],{"__ignoreMap":80},[84,87353,87354,87356,87358],{"class":86,"line":87},[84,87355,91],{"class":90},[84,87357,95],{"class":94},[84,87359,102],{"class":90},[84,87361,87362,87364,87366],{"class":86,"line":105},[84,87363,418],{"class":108},[84,87365,1870],{"class":108},[84,87367,175],{"class":90},[84,87369,87370,87372],{"class":86,"line":122},[84,87371,1896],{"class":98},[84,87373,1307],{"class":90},[84,87375,87376,87378],{"class":86,"line":129},[84,87377,1903],{"class":108},[84,87379,175],{"class":90},[84,87381,87382,87384,87386,87388,87390,87392,87394],{"class":86,"line":154},[84,87383,38609],{"class":90},[84,87385,2918],{"class":118},[84,87387,754],{"class":90},[84,87389,2943],{"class":118},[84,87391,754],{"class":90},[84,87393,38505],{"class":118},[84,87395,37943],{"class":90},[84,87397,87398],{"class":86,"line":159},[84,87399,1936],{"class":90},[84,87401,87402],{"class":86,"line":178},[84,87403,485],{"class":90},[84,87405,87406],{"class":86,"line":190},[84,87407,193],{"class":90},[84,87409,87410,87412,87414],{"class":86,"line":196},[84,87411,274],{"class":90},[84,87413,95],{"class":94},[84,87415,102],{"class":90},[84,87417,87418],{"class":86,"line":201},[84,87419,126],{"emptyLinePlaceholder":125},[84,87421,87422,87424,87426],{"class":86,"line":217},[84,87423,91],{"class":90},[84,87425,291],{"class":94},[84,87427,102],{"class":90},[84,87429,87431,87433,87435,87437,87439,87441,87443,87445,87447],{"class":87430,"line":227},[86,10151],[84,87432,299],{"class":90},[84,87434,15],{"class":94},[84,87436,13525],{"class":98},[84,87438,184],{"class":90},[84,87440,38541],{"class":118},[84,87442,5092],{"class":98},[84,87444,184],{"class":90},[84,87446,22227],{"class":118},[84,87448,102],{"class":90},[84,87450,87451],{"class":86,"line":232},[84,87452,38554],{"class":90},[84,87454,87455,87457,87459],{"class":86,"line":237},[84,87456,324],{"class":90},[84,87458,15],{"class":94},[84,87460,102],{"class":90},[84,87462,87463,87465,87467],{"class":86,"line":253},[84,87464,274],{"class":90},[84,87466,291],{"class":94},[84,87468,102],{"class":90},[1074,87470,38698],{"id":38697},[74,87472,87474],{"className":76,"code":38701,"filename":873,"highlights":87473,"language":79,"meta":80,"style":80},[227],[22,87475,87476,87486,87496,87500,87512,87520,87528,87534,87538,87546,87550,87558,87579,87583,87591],{"__ignoreMap":80},[84,87477,87478,87480,87482,87484],{"class":86,"line":87},[84,87479,91],{"class":90},[84,87481,95],{"class":94},[84,87483,99],{"class":98},[84,87485,102],{"class":90},[84,87487,87488,87490,87492,87494],{"class":86,"line":105},[84,87489,109],{"class":108},[84,87491,112],{"class":90},[84,87493,115],{"class":108},[84,87495,119],{"class":118},[84,87497,87498],{"class":86,"line":122},[84,87499,126],{"emptyLinePlaceholder":125},[84,87501,87502,87504,87506,87508,87510],{"class":86,"line":129},[84,87503,132],{"class":108},[84,87505,38735],{"class":135},[84,87507,139],{"class":108},[84,87509,142],{"class":98},[84,87511,1876],{"class":90},[84,87513,87514,87516,87518],{"class":86,"line":154},[84,87515,1881],{"class":90},[84,87517,38748],{"class":118},[84,87519,1887],{"class":90},[84,87521,87522,87524,87526],{"class":86,"line":159},[84,87523,38755],{"class":90},[84,87525,38758],{"class":118},[84,87527,1887],{"class":90},[84,87529,87530,87532],{"class":86,"line":178},[84,87531,38765],{"class":90},[84,87533,38768],{"class":118},[84,87535,87536],{"class":86,"line":190},[84,87537,1492],{"class":90},[84,87539,87540,87542,87544],{"class":86,"line":196},[84,87541,274],{"class":90},[84,87543,95],{"class":94},[84,87545,102],{"class":90},[84,87547,87548],{"class":86,"line":201},[84,87549,126],{"emptyLinePlaceholder":125},[84,87551,87552,87554,87556],{"class":86,"line":217},[84,87553,91],{"class":90},[84,87555,291],{"class":94},[84,87557,102],{"class":90},[84,87559,87561,87563,87565,87567,87569,87571,87573,87575,87577],{"class":87560,"line":227},[86,10151],[84,87562,299],{"class":90},[84,87564,740],{"class":94},[84,87566,13525],{"class":98},[84,87568,184],{"class":90},[84,87570,38806],{"class":118},[84,87572,5092],{"class":98},[84,87574,184],{"class":90},[84,87576,38813],{"class":118},[84,87578,102],{"class":90},[84,87580,87581],{"class":86,"line":232},[84,87582,38820],{"class":90},[84,87584,87585,87587,87589],{"class":86,"line":237},[84,87586,324],{"class":90},[84,87588,740],{"class":94},[84,87590,102],{"class":90},[84,87592,87593,87595,87597],{"class":86,"line":253},[84,87594,274],{"class":90},[84,87596,291],{"class":94},[84,87598,102],{"class":90},[74,87600,87602],{"className":76,"code":38839,"filename":1782,"highlights":87601,"language":79,"meta":80,"style":80},[266],[22,87603,87604,87612,87620,87626,87632,87636,87644,87652,87658,87662,87666,87670,87674,87682,87686,87694,87715,87719,87727],{"__ignoreMap":80},[84,87605,87606,87608,87610],{"class":86,"line":87},[84,87607,91],{"class":90},[84,87609,95],{"class":94},[84,87611,102],{"class":90},[84,87613,87614,87616,87618],{"class":86,"line":105},[84,87615,418],{"class":108},[84,87617,1870],{"class":108},[84,87619,175],{"class":90},[84,87621,87622,87624],{"class":86,"line":122},[84,87623,1896],{"class":98},[84,87625,1307],{"class":90},[84,87627,87628,87630],{"class":86,"line":129},[84,87629,1903],{"class":108},[84,87631,175],{"class":90},[84,87633,87634],{"class":86,"line":154},[84,87635,38875],{"class":90},[84,87637,87638,87640,87642],{"class":86,"line":159},[84,87639,38880],{"class":90},[84,87641,38748],{"class":118},[84,87643,1887],{"class":90},[84,87645,87646,87648,87650],{"class":86,"line":178},[84,87647,38889],{"class":90},[84,87649,38758],{"class":118},[84,87651,1887],{"class":90},[84,87653,87654,87656],{"class":86,"line":190},[84,87655,38898],{"class":90},[84,87657,38768],{"class":118},[84,87659,87660],{"class":86,"line":196},[84,87661,2013],{"class":90},[84,87663,87664],{"class":86,"line":201},[84,87665,1936],{"class":90},[84,87667,87668],{"class":86,"line":217},[84,87669,485],{"class":90},[84,87671,87672],{"class":86,"line":227},[84,87673,193],{"class":90},[84,87675,87676,87678,87680],{"class":86,"line":232},[84,87677,274],{"class":90},[84,87679,95],{"class":94},[84,87681,102],{"class":90},[84,87683,87684],{"class":86,"line":237},[84,87685,126],{"emptyLinePlaceholder":125},[84,87687,87688,87690,87692],{"class":86,"line":253},[84,87689,91],{"class":90},[84,87691,291],{"class":94},[84,87693,102],{"class":90},[84,87695,87697,87699,87701,87703,87705,87707,87709,87711,87713],{"class":87696,"line":266},[86,10151],[84,87698,299],{"class":90},[84,87700,740],{"class":94},[84,87702,13525],{"class":98},[84,87704,184],{"class":90},[84,87706,38806],{"class":118},[84,87708,5092],{"class":98},[84,87710,184],{"class":90},[84,87712,38813],{"class":118},[84,87714,102],{"class":90},[84,87716,87717],{"class":86,"line":271},[84,87718,38820],{"class":90},[84,87720,87721,87723,87725],{"class":86,"line":281},[84,87722,324],{"class":90},[84,87724,740],{"class":94},[84,87726,102],{"class":90},[84,87728,87729,87731,87733],{"class":86,"line":286},[84,87730,274],{"class":90},[84,87732,291],{"class":94},[84,87734,102],{"class":90},[1074,87736,38981,87737],{"id":38980},[22,87738,291],{},[74,87740,87742],{"className":76,"code":38986,"filename":873,"highlights":87741,"language":79,"meta":80,"style":80},[217],[22,87743,87744,87754,87764,87768,87780,87796,87812,87816,87824,87828,87836,87871,87883,87895,87903,87911],{"__ignoreMap":80},[84,87745,87746,87748,87750,87752],{"class":86,"line":87},[84,87747,91],{"class":90},[84,87749,95],{"class":94},[84,87751,99],{"class":98},[84,87753,102],{"class":90},[84,87755,87756,87758,87760,87762],{"class":86,"line":105},[84,87757,109],{"class":108},[84,87759,112],{"class":90},[84,87761,115],{"class":108},[84,87763,119],{"class":118},[84,87765,87766],{"class":86,"line":122},[84,87767,126],{"emptyLinePlaceholder":125},[84,87769,87770,87772,87774,87776,87778],{"class":86,"line":129},[84,87771,132],{"class":108},[84,87773,39020],{"class":135},[84,87775,139],{"class":108},[84,87777,142],{"class":98},[84,87779,2894],{"class":90},[84,87781,87782,87784,87786,87788,87790,87792,87794],{"class":86,"line":154},[84,87783,2899],{"class":90},[84,87785,2862],{"class":135},[84,87787,2904],{"class":90},[84,87789,39037],{"class":118},[84,87791,39040],{"class":90},[84,87793,39043],{"class":118},[84,87795,2921],{"class":90},[84,87797,87798,87800,87802,87804,87806,87808,87810],{"class":86,"line":159},[84,87799,2899],{"class":90},[84,87801,2928],{"class":135},[84,87803,2904],{"class":90},[84,87805,39056],{"class":118},[84,87807,39040],{"class":90},[84,87809,39061],{"class":118},[84,87811,2968],{"class":90},[84,87813,87814],{"class":86,"line":178},[84,87815,2973],{"class":90},[84,87817,87818,87820,87822],{"class":86,"line":190},[84,87819,274],{"class":90},[84,87821,95],{"class":94},[84,87823,102],{"class":90},[84,87825,87826],{"class":86,"line":196},[84,87827,126],{"emptyLinePlaceholder":125},[84,87829,87830,87832,87834],{"class":86,"line":201},[84,87831,91],{"class":90},[84,87833,291],{"class":94},[84,87835,102],{"class":90},[84,87837,87839,87841,87843,87845,87847,87849,87851,87853,87855,87857,87859,87861,87863,87865,87867,87869],{"class":87838,"line":217},[86,10151],[84,87840,299],{"class":90},[84,87842,291],{"class":94},[84,87844,13525],{"class":108},[84,87846,184],{"class":90},[84,87848,1678],{"class":118},[84,87850,39103],{"class":90},[84,87852,39106],{"class":108},[84,87854,39020],{"class":90},[84,87856,1678],{"class":118},[84,87858,7012],{"class":90},[84,87860,2580],{"class":98},[84,87862,184],{"class":90},[84,87864,1678],{"class":118},[84,87866,39121],{"class":90},[84,87868,1678],{"class":118},[84,87870,102],{"class":90},[84,87872,87873,87875,87877,87879,87881],{"class":86,"line":227},[84,87874,1642],{"class":90},[84,87876,1074],{"class":94},[84,87878,39134],{"class":90},[84,87880,1074],{"class":94},[84,87882,102],{"class":90},[84,87884,87885,87887,87889,87891,87893],{"class":86,"line":232},[84,87886,1642],{"class":90},[84,87888,15],{"class":94},[84,87890,39147],{"class":90},[84,87892,15],{"class":94},[84,87894,102],{"class":90},[84,87896,87897,87899,87901],{"class":86,"line":237},[84,87898,1642],{"class":90},[84,87900,39158],{"class":94},[84,87902,5100],{"class":90},[84,87904,87905,87907,87909],{"class":86,"line":253},[84,87906,324],{"class":90},[84,87908,291],{"class":94},[84,87910,102],{"class":90},[84,87912,87913,87915,87917],{"class":86,"line":266},[84,87914,274],{"class":90},[84,87916,291],{"class":94},[84,87918,102],{"class":90},[74,87920,87922],{"className":76,"code":39179,"filename":1782,"highlights":87921,"language":79,"meta":80,"style":80},[253],[22,87923,87924,87932,87940,87946,87952,87956,87972,87988,87992,87996,88000,88004,88012,88016,88024,88059,88071,88083,88091,88099],{"__ignoreMap":80},[84,87925,87926,87928,87930],{"class":86,"line":87},[84,87927,91],{"class":90},[84,87929,95],{"class":94},[84,87931,102],{"class":90},[84,87933,87934,87936,87938],{"class":86,"line":105},[84,87935,418],{"class":108},[84,87937,1870],{"class":108},[84,87939,175],{"class":90},[84,87941,87942,87944],{"class":86,"line":122},[84,87943,1896],{"class":98},[84,87945,1307],{"class":90},[84,87947,87948,87950],{"class":86,"line":129},[84,87949,1903],{"class":108},[84,87951,175],{"class":90},[84,87953,87954],{"class":86,"line":154},[84,87955,39215],{"class":90},[84,87957,87958,87960,87962,87964,87966,87968,87970],{"class":86,"line":159},[84,87959,3449],{"class":90},[84,87961,2862],{"class":135},[84,87963,2904],{"class":90},[84,87965,39037],{"class":118},[84,87967,39040],{"class":90},[84,87969,39043],{"class":118},[84,87971,2921],{"class":90},[84,87973,87974,87976,87978,87980,87982,87984,87986],{"class":86,"line":178},[84,87975,3449],{"class":90},[84,87977,2928],{"class":135},[84,87979,2904],{"class":90},[84,87981,39056],{"class":118},[84,87983,39040],{"class":90},[84,87985,39061],{"class":118},[84,87987,2968],{"class":90},[84,87989,87990],{"class":86,"line":190},[84,87991,3510],{"class":90},[84,87993,87994],{"class":86,"line":196},[84,87995,1936],{"class":90},[84,87997,87998],{"class":86,"line":201},[84,87999,485],{"class":90},[84,88001,88002],{"class":86,"line":217},[84,88003,193],{"class":90},[84,88005,88006,88008,88010],{"class":86,"line":227},[84,88007,274],{"class":90},[84,88009,95],{"class":94},[84,88011,102],{"class":90},[84,88013,88014],{"class":86,"line":232},[84,88015,126],{"emptyLinePlaceholder":125},[84,88017,88018,88020,88022],{"class":86,"line":237},[84,88019,91],{"class":90},[84,88021,291],{"class":94},[84,88023,102],{"class":90},[84,88025,88027,88029,88031,88033,88035,88037,88039,88041,88043,88045,88047,88049,88051,88053,88055,88057],{"class":88026,"line":253},[86,10151],[84,88028,299],{"class":90},[84,88030,291],{"class":94},[84,88032,13525],{"class":108},[84,88034,184],{"class":90},[84,88036,1678],{"class":118},[84,88038,39103],{"class":90},[84,88040,39106],{"class":108},[84,88042,39020],{"class":90},[84,88044,1678],{"class":118},[84,88046,7012],{"class":90},[84,88048,2580],{"class":98},[84,88050,184],{"class":90},[84,88052,1678],{"class":118},[84,88054,39121],{"class":90},[84,88056,1678],{"class":118},[84,88058,102],{"class":90},[84,88060,88061,88063,88065,88067,88069],{"class":86,"line":266},[84,88062,1642],{"class":90},[84,88064,1074],{"class":94},[84,88066,39134],{"class":90},[84,88068,1074],{"class":94},[84,88070,102],{"class":90},[84,88072,88073,88075,88077,88079,88081],{"class":86,"line":271},[84,88074,1642],{"class":90},[84,88076,15],{"class":94},[84,88078,39147],{"class":90},[84,88080,15],{"class":94},[84,88082,102],{"class":90},[84,88084,88085,88087,88089],{"class":86,"line":281},[84,88086,1642],{"class":90},[84,88088,39158],{"class":94},[84,88090,5100],{"class":90},[84,88092,88093,88095,88097],{"class":86,"line":286},[84,88094,324],{"class":90},[84,88096,291],{"class":94},[84,88098,102],{"class":90},[84,88100,88101,88103,88105],{"class":86,"line":296},[84,88102,274],{"class":90},[84,88104,291],{"class":94},[84,88106,102],{"class":90},[34,88108,39370],{"id":39369},[1074,88110,39374,88111],{"id":39373},[22,88112,2523],{},[15,88114,39379,88115,39382,88117,764],{},[22,88116,25577],{},[22,88118,2523],{},[74,88120,88122],{"className":76,"code":39387,"filename":873,"highlights":88121,"language":79,"meta":80,"style":80},[201,217,227,232,237,253,286],[22,88123,88124,88134,88144,88148,88160,88180,88200,88220,88224,88228,88245,88252,88273,88282,88307,88312,88320,88324,88332,88353,88357,88365],{"__ignoreMap":80},[84,88125,88126,88128,88130,88132],{"class":86,"line":87},[84,88127,91],{"class":90},[84,88129,95],{"class":94},[84,88131,99],{"class":98},[84,88133,102],{"class":90},[84,88135,88136,88138,88140,88142],{"class":86,"line":105},[84,88137,109],{"class":108},[84,88139,24087],{"class":90},[84,88141,115],{"class":108},[84,88143,119],{"class":118},[84,88145,88146],{"class":86,"line":122},[84,88147,126],{"emptyLinePlaceholder":125},[84,88149,88150,88152,88154,88156,88158],{"class":86,"line":129},[84,88151,132],{"class":108},[84,88153,30307],{"class":135},[84,88155,139],{"class":108},[84,88157,142],{"class":98},[84,88159,2894],{"class":90},[84,88161,88162,88164,88166,88168,88170,88172,88174,88176,88178],{"class":86,"line":154},[84,88163,2899],{"class":90},[84,88165,2862],{"class":135},[84,88167,23323],{"class":90},[84,88169,39437],{"class":118},[84,88171,30327],{"class":90},[84,88173,39442],{"class":135},[84,88175,30333],{"class":90},[84,88177,39447],{"class":135},[84,88179,2921],{"class":90},[84,88181,88182,88184,88186,88188,88190,88192,88194,88196,88198],{"class":86,"line":159},[84,88183,2899],{"class":90},[84,88185,2928],{"class":135},[84,88187,23323],{"class":90},[84,88189,39460],{"class":118},[84,88191,30327],{"class":90},[84,88193,39465],{"class":135},[84,88195,30333],{"class":90},[84,88197,4320],{"class":135},[84,88199,2921],{"class":90},[84,88201,88202,88204,88206,88208,88210,88212,88214,88216,88218],{"class":86,"line":178},[84,88203,2899],{"class":90},[84,88205,2952],{"class":135},[84,88207,23323],{"class":90},[84,88209,39482],{"class":118},[84,88211,30327],{"class":90},[84,88213,39487],{"class":135},[84,88215,30333],{"class":90},[84,88217,39492],{"class":135},[84,88219,2968],{"class":90},[84,88221,88222],{"class":86,"line":190},[84,88223,2973],{"class":90},[84,88225,88226],{"class":86,"line":196},[84,88227,126],{"emptyLinePlaceholder":125},[84,88229,88231,88233,88235,88237,88239,88241,88243],{"class":88230,"line":201},[86,10151],[84,88232,132],{"class":108},[84,88234,39510],{"class":135},[84,88236,139],{"class":108},[84,88238,2989],{"class":98},[84,88240,2992],{"class":90},[84,88242,172],{"class":108},[84,88244,175],{"class":90},[84,88246,88248,88250],{"class":88247,"line":217},[86,10151],[84,88249,557],{"class":108},[84,88251,39528],{"class":90},[84,88253,88255,88257,88259,88261,88263,88265,88267,88269,88271],{"class":88254,"line":227},[86,10151],[84,88256,39534],{"class":90},[84,88258,3006],{"class":98},[84,88260,145],{"class":90},[84,88262,1681],{"class":429},[84,88264,3014],{"class":108},[84,88266,39545],{"class":90},[84,88268,10674],{"class":108},[84,88270,39550],{"class":135},[84,88272,151],{"class":90},[84,88274,88276,88278,88280],{"class":88275,"line":232},[86,10151],[84,88277,39534],{"class":90},[84,88279,39560],{"class":98},[84,88281,635],{"class":90},[84,88283,88285,88287,88289,88291,88293,88295,88297,88299,88301,88303,88305],{"class":88284,"line":237},[86,10151],[84,88286,39534],{"class":90},[84,88288,39570],{"class":98},[84,88290,3120],{"class":90},[84,88292,13911],{"class":429},[84,88294,754],{"class":90},[84,88296,39579],{"class":429},[84,88298,3126],{"class":90},[84,88300,172],{"class":108},[84,88302,39586],{"class":90},[84,88304,39589],{"class":108},[84,88306,39592],{"class":90},[84,88308,88310],{"class":88309,"line":253},[86,10151],[84,88311,1492],{"class":90},[84,88313,88314,88316,88318],{"class":86,"line":266},[84,88315,274],{"class":90},[84,88317,95],{"class":94},[84,88319,102],{"class":90},[84,88321,88322],{"class":86,"line":271},[84,88323,126],{"emptyLinePlaceholder":125},[84,88325,88326,88328,88330],{"class":86,"line":281},[84,88327,91],{"class":90},[84,88329,291],{"class":94},[84,88331,102],{"class":90},[84,88333,88335,88337,88339,88341,88343,88345,88347,88349,88351],{"class":88334,"line":286},[86,10151],[84,88336,299],{"class":90},[84,88338,740],{"class":94},[84,88340,13525],{"class":98},[84,88342,184],{"class":90},[84,88344,39631],{"class":118},[84,88346,5092],{"class":98},[84,88348,184],{"class":90},[84,88350,39638],{"class":118},[84,88352,102],{"class":90},[84,88354,88355],{"class":86,"line":296},[84,88356,39645],{"class":90},[84,88358,88359,88361,88363],{"class":86,"line":315},[84,88360,324],{"class":90},[84,88362,740],{"class":94},[84,88364,102],{"class":90},[84,88366,88367,88369,88371],{"class":86,"line":321},[84,88368,274],{"class":90},[84,88370,291],{"class":94},[84,88372,102],{"class":90},[74,88374,88376],{"className":76,"code":39664,"filename":1782,"highlights":88375,"language":79,"meta":80,"style":80},[227,232,237,253,266,271,281,286,336],[22,88377,88378,88386,88394,88400,88406,88410,88430,88450,88470,88474,88478,88482,88487,88494,88503,88524,88533,88558,88563,88568,88572,88580,88584,88592,88613,88617,88625],{"__ignoreMap":80},[84,88379,88380,88382,88384],{"class":86,"line":87},[84,88381,91],{"class":90},[84,88383,95],{"class":94},[84,88385,102],{"class":90},[84,88387,88388,88390,88392],{"class":86,"line":105},[84,88389,418],{"class":108},[84,88391,1870],{"class":108},[84,88393,175],{"class":90},[84,88395,88396,88398],{"class":86,"line":122},[84,88397,1896],{"class":98},[84,88399,1307],{"class":90},[84,88401,88402,88404],{"class":86,"line":129},[84,88403,1903],{"class":108},[84,88405,175],{"class":90},[84,88407,88408],{"class":86,"line":154},[84,88409,31070],{"class":90},[84,88411,88412,88414,88416,88418,88420,88422,88424,88426,88428],{"class":86,"line":159},[84,88413,3449],{"class":90},[84,88415,2862],{"class":135},[84,88417,23323],{"class":90},[84,88419,39437],{"class":118},[84,88421,30327],{"class":90},[84,88423,39442],{"class":135},[84,88425,30333],{"class":90},[84,88427,39447],{"class":135},[84,88429,2921],{"class":90},[84,88431,88432,88434,88436,88438,88440,88442,88444,88446,88448],{"class":86,"line":178},[84,88433,3449],{"class":90},[84,88435,2928],{"class":135},[84,88437,23323],{"class":90},[84,88439,39460],{"class":118},[84,88441,30327],{"class":90},[84,88443,39465],{"class":135},[84,88445,30333],{"class":90},[84,88447,4320],{"class":135},[84,88449,2921],{"class":90},[84,88451,88452,88454,88456,88458,88460,88462,88464,88466,88468],{"class":86,"line":190},[84,88453,3449],{"class":90},[84,88455,2952],{"class":135},[84,88457,23323],{"class":90},[84,88459,39482],{"class":118},[84,88461,30327],{"class":90},[84,88463,39487],{"class":135},[84,88465,30333],{"class":90},[84,88467,39492],{"class":135},[84,88469,2968],{"class":90},[84,88471,88472],{"class":86,"line":196},[84,88473,3510],{"class":90},[84,88475,88476],{"class":86,"line":201},[84,88477,1936],{"class":90},[84,88479,88480],{"class":86,"line":217},[84,88481,1941],{"class":90},[84,88483,88485],{"class":88484,"line":227},[86,10151],[84,88486,3527],{"class":90},[84,88488,88490,88492],{"class":88489,"line":232},[86,10151],[84,88491,39782],{"class":98},[84,88493,1307],{"class":90},[84,88495,88497,88499,88501],{"class":88496,"line":237},[86,10151],[84,88498,3539],{"class":108},[84,88500,2078],{"class":135},[84,88502,39794],{"class":90},[84,88504,88506,88508,88510,88512,88514,88516,88518,88520,88522],{"class":88505,"line":253},[86,10151],[84,88507,39800],{"class":90},[84,88509,3006],{"class":98},[84,88511,145],{"class":90},[84,88513,1681],{"class":429},[84,88515,3014],{"class":108},[84,88517,39545],{"class":90},[84,88519,10674],{"class":108},[84,88521,39550],{"class":135},[84,88523,151],{"class":90},[84,88525,88527,88529,88531],{"class":88526,"line":266},[86,10151],[84,88528,39800],{"class":90},[84,88530,39560],{"class":98},[84,88532,635],{"class":90},[84,88534,88536,88538,88540,88542,88544,88546,88548,88550,88552,88554,88556],{"class":88535,"line":271},[86,10151],[84,88537,39800],{"class":90},[84,88539,39570],{"class":98},[84,88541,3120],{"class":90},[84,88543,13911],{"class":429},[84,88545,754],{"class":90},[84,88547,39579],{"class":429},[84,88549,3126],{"class":90},[84,88551,172],{"class":108},[84,88553,39586],{"class":90},[84,88555,39589],{"class":108},[84,88557,39592],{"class":90},[84,88559,88561],{"class":88560,"line":281},[86,10151],[84,88562,1936],{"class":90},[84,88564,88566],{"class":88565,"line":286},[86,10151],[84,88567,485],{"class":90},[84,88569,88570],{"class":86,"line":296},[84,88571,193],{"class":90},[84,88573,88574,88576,88578],{"class":86,"line":315},[84,88575,274],{"class":90},[84,88577,95],{"class":94},[84,88579,102],{"class":90},[84,88581,88582],{"class":86,"line":321},[84,88583,126],{"emptyLinePlaceholder":125},[84,88585,88586,88588,88590],{"class":86,"line":331},[84,88587,91],{"class":90},[84,88589,291],{"class":94},[84,88591,102],{"class":90},[84,88593,88595,88597,88599,88601,88603,88605,88607,88609,88611],{"class":88594,"line":336},[86,10151],[84,88596,299],{"class":90},[84,88598,740],{"class":94},[84,88600,13525],{"class":98},[84,88602,184],{"class":90},[84,88604,39631],{"class":118},[84,88606,5092],{"class":98},[84,88608,184],{"class":90},[84,88610,39638],{"class":118},[84,88612,102],{"class":90},[84,88614,88615],{"class":86,"line":354},[84,88616,39645],{"class":90},[84,88618,88619,88621,88623],{"class":86,"line":360},[84,88620,324],{"class":90},[84,88622,740],{"class":94},[84,88624,102],{"class":90},[84,88626,88627,88629,88631],{"class":86,"line":369},[84,88628,274],{"class":90},[84,88630,291],{"class":94},[84,88632,102],{"class":90},[1074,88634,39929,88635],{"id":39928},[22,88636,25577],{},[74,88638,88640],{"className":76,"code":39934,"filename":873,"highlights":88639,"language":79,"meta":80,"style":80},[227],[22,88641,88642,88652,88662,88672,88676,88688,88704,88720,88724,88732,88736,88744,88771],{"__ignoreMap":80},[84,88643,88644,88646,88648,88650],{"class":86,"line":87},[84,88645,91],{"class":90},[84,88647,95],{"class":94},[84,88649,99],{"class":98},[84,88651,102],{"class":90},[84,88653,88654,88656,88658,88660],{"class":86,"line":105},[84,88655,109],{"class":108},[84,88657,112],{"class":90},[84,88659,115],{"class":108},[84,88661,119],{"class":118},[84,88663,88664,88666,88668,88670],{"class":86,"line":122},[84,88665,109],{"class":108},[84,88667,39964],{"class":90},[84,88669,115],{"class":108},[84,88671,39969],{"class":118},[84,88673,88674],{"class":86,"line":129},[84,88675,126],{"emptyLinePlaceholder":125},[84,88677,88678,88680,88682,88684,88686],{"class":86,"line":154},[84,88679,132],{"class":108},[84,88681,11767],{"class":135},[84,88683,139],{"class":108},[84,88685,142],{"class":98},[84,88687,2894],{"class":90},[84,88689,88690,88692,88694,88696,88698,88700,88702],{"class":86,"line":159},[84,88691,2899],{"class":90},[84,88693,39992],{"class":118},[84,88695,23323],{"class":90},[84,88697,2918],{"class":118},[84,88699,27953],{"class":90},[84,88701,40001],{"class":118},[84,88703,2921],{"class":90},[84,88705,88706,88708,88710,88712,88714,88716,88718],{"class":86,"line":178},[84,88707,2899],{"class":90},[84,88709,40010],{"class":118},[84,88711,23323],{"class":90},[84,88713,2943],{"class":118},[84,88715,27953],{"class":90},[84,88717,40019],{"class":118},[84,88719,2968],{"class":90},[84,88721,88722],{"class":86,"line":190},[84,88723,2973],{"class":90},[84,88725,88726,88728,88730],{"class":86,"line":196},[84,88727,274],{"class":90},[84,88729,95],{"class":94},[84,88731,102],{"class":90},[84,88733,88734],{"class":86,"line":201},[84,88735,126],{"emptyLinePlaceholder":125},[84,88737,88738,88740,88742],{"class":86,"line":217},[84,88739,91],{"class":90},[84,88741,291],{"class":94},[84,88743,102],{"class":90},[84,88745,88747,88749,88751,88753,88755,88757,88759,88761,88763,88765,88767,88769],{"class":88746,"line":227},[86,10151],[84,88748,299],{"class":90},[84,88750,23311],{"class":94},[84,88752,13525],{"class":98},[84,88754,184],{"class":90},[84,88756,13530],{"class":118},[84,88758,5092],{"class":98},[84,88760,184],{"class":90},[84,88762,13537],{"class":118},[84,88764,27808],{"class":98},[84,88766,184],{"class":90},[84,88768,22227],{"class":118},[84,88770,5100],{"class":90},[84,88772,88773,88775,88777],{"class":86,"line":232},[84,88774,274],{"class":90},[84,88776,291],{"class":94},[84,88778,102],{"class":90},[74,88780,88782],{"className":76,"code":40083,"filename":1782,"highlights":88781,"language":79,"meta":80,"style":80},[281],[22,88783,88784,88792,88802,88806,88814,88818,88824,88830,88834,88850,88866,88870,88874,88878,88882,88890,88894,88902,88929],{"__ignoreMap":80},[84,88785,88786,88788,88790],{"class":86,"line":87},[84,88787,91],{"class":90},[84,88789,95],{"class":94},[84,88791,102],{"class":90},[84,88793,88794,88796,88798,88800],{"class":86,"line":105},[84,88795,109],{"class":108},[84,88797,39964],{"class":90},[84,88799,115],{"class":108},[84,88801,39969],{"class":118},[84,88803,88804],{"class":86,"line":122},[84,88805,126],{"emptyLinePlaceholder":125},[84,88807,88808,88810,88812],{"class":86,"line":129},[84,88809,418],{"class":108},[84,88811,1870],{"class":108},[84,88813,175],{"class":90},[84,88815,88816],{"class":86,"line":154},[84,88817,40121],{"class":90},[84,88819,88820,88822],{"class":86,"line":159},[84,88821,1896],{"class":98},[84,88823,1307],{"class":90},[84,88825,88826,88828],{"class":86,"line":178},[84,88827,1903],{"class":108},[84,88829,175],{"class":90},[84,88831,88832],{"class":86,"line":190},[84,88833,23597],{"class":90},[84,88835,88836,88838,88840,88842,88844,88846,88848],{"class":86,"line":196},[84,88837,3449],{"class":90},[84,88839,39992],{"class":118},[84,88841,23323],{"class":90},[84,88843,2918],{"class":118},[84,88845,27953],{"class":90},[84,88847,40001],{"class":118},[84,88849,2921],{"class":90},[84,88851,88852,88854,88856,88858,88860,88862,88864],{"class":86,"line":201},[84,88853,3449],{"class":90},[84,88855,40010],{"class":118},[84,88857,23323],{"class":90},[84,88859,2943],{"class":118},[84,88861,27953],{"class":90},[84,88863,40019],{"class":118},[84,88865,2968],{"class":90},[84,88867,88868],{"class":86,"line":217},[84,88869,3510],{"class":90},[84,88871,88872],{"class":86,"line":227},[84,88873,1936],{"class":90},[84,88875,88876],{"class":86,"line":232},[84,88877,485],{"class":90},[84,88879,88880],{"class":86,"line":237},[84,88881,193],{"class":90},[84,88883,88884,88886,88888],{"class":86,"line":253},[84,88885,274],{"class":90},[84,88887,95],{"class":94},[84,88889,102],{"class":90},[84,88891,88892],{"class":86,"line":266},[84,88893,126],{"emptyLinePlaceholder":125},[84,88895,88896,88898,88900],{"class":86,"line":271},[84,88897,91],{"class":90},[84,88899,291],{"class":94},[84,88901,102],{"class":90},[84,88903,88905,88907,88909,88911,88913,88915,88917,88919,88921,88923,88925,88927],{"class":88904,"line":281},[86,10151],[84,88906,299],{"class":90},[84,88908,23311],{"class":94},[84,88910,13525],{"class":98},[84,88912,184],{"class":90},[84,88914,13530],{"class":118},[84,88916,5092],{"class":98},[84,88918,184],{"class":90},[84,88920,13537],{"class":118},[84,88922,27808],{"class":98},[84,88924,184],{"class":90},[84,88926,22227],{"class":118},[84,88928,5100],{"class":90},[84,88930,88931,88933,88935],{"class":86,"line":286},[84,88932,274],{"class":90},[84,88934,291],{"class":94},[84,88936,102],{"class":90},[1074,88938,40244],{"id":40243},[74,88940,88942],{"className":76,"code":40247,"filename":873,"highlights":88941,"language":79,"meta":80,"style":80},[271,286],[22,88943,88944,88954,88964,88968,88980,88984,88992,89000,89004,89016,89028,89032,89036,89040,89048,89052,89060,89081,89093,89114,89118,89126,89134],{"__ignoreMap":80},[84,88945,88946,88948,88950,88952],{"class":86,"line":87},[84,88947,91],{"class":90},[84,88949,95],{"class":94},[84,88951,99],{"class":98},[84,88953,102],{"class":90},[84,88955,88956,88958,88960,88962],{"class":86,"line":105},[84,88957,109],{"class":108},[84,88959,112],{"class":90},[84,88961,115],{"class":108},[84,88963,119],{"class":118},[84,88965,88966],{"class":86,"line":122},[84,88967,126],{"emptyLinePlaceholder":125},[84,88969,88970,88972,88974,88976,88978],{"class":86,"line":129},[84,88971,132],{"class":108},[84,88973,40281],{"class":135},[84,88975,139],{"class":108},[84,88977,142],{"class":98},[84,88979,2894],{"class":90},[84,88981,88982],{"class":86,"line":154},[84,88983,40292],{"class":90},[84,88985,88986,88988,88990],{"class":86,"line":159},[84,88987,40297],{"class":90},[84,88989,40300],{"class":118},[84,88991,1887],{"class":90},[84,88993,88994,88996,88998],{"class":86,"line":178},[84,88995,40307],{"class":90},[84,88997,40310],{"class":118},[84,88999,1887],{"class":90},[84,89001,89002],{"class":86,"line":190},[84,89003,40317],{"class":90},[84,89005,89006,89008,89010,89012,89014],{"class":86,"line":196},[84,89007,40322],{"class":90},[84,89009,40325],{"class":118},[84,89011,23323],{"class":90},[84,89013,39460],{"class":118},[84,89015,2921],{"class":90},[84,89017,89018,89020,89022,89024,89026],{"class":86,"line":201},[84,89019,40322],{"class":90},[84,89021,40338],{"class":118},[84,89023,23323],{"class":90},[84,89025,40343],{"class":118},[84,89027,2968],{"class":90},[84,89029,89030],{"class":86,"line":217},[84,89031,40350],{"class":90},[84,89033,89034],{"class":86,"line":227},[84,89035,485],{"class":90},[84,89037,89038],{"class":86,"line":232},[84,89039,2973],{"class":90},[84,89041,89042,89044,89046],{"class":86,"line":237},[84,89043,274],{"class":90},[84,89045,95],{"class":94},[84,89047,102],{"class":90},[84,89049,89050],{"class":86,"line":253},[84,89051,126],{"emptyLinePlaceholder":125},[84,89053,89054,89056,89058],{"class":86,"line":266},[84,89055,91],{"class":90},[84,89057,291],{"class":94},[84,89059,102],{"class":90},[84,89061,89063,89065,89067,89069,89071,89073,89075,89077,89079],{"class":89062,"line":271},[86,10151],[84,89064,299],{"class":90},[84,89066,4898],{"class":94},[84,89068,13525],{"class":98},[84,89070,184],{"class":90},[84,89072,40392],{"class":118},[84,89074,5092],{"class":98},[84,89076,184],{"class":90},[84,89078,40399],{"class":118},[84,89080,102],{"class":90},[84,89082,89083,89085,89087,89089,89091],{"class":86,"line":281},[84,89084,1642],{"class":90},[84,89086,1074],{"class":94},[84,89088,40410],{"class":90},[84,89090,1074],{"class":94},[84,89092,102],{"class":90},[84,89094,89096,89098,89100,89102,89104,89106,89108,89110,89112],{"class":89095,"line":286},[86,10151],[84,89097,1642],{"class":90},[84,89099,740],{"class":94},[84,89101,13525],{"class":98},[84,89103,184],{"class":90},[84,89105,40428],{"class":118},[84,89107,5092],{"class":98},[84,89109,184],{"class":90},[84,89111,39638],{"class":118},[84,89113,102],{"class":90},[84,89115,89116],{"class":86,"line":296},[84,89117,40441],{"class":90},[84,89119,89120,89122,89124],{"class":86,"line":315},[84,89121,1734],{"class":90},[84,89123,740],{"class":94},[84,89125,102],{"class":90},[84,89127,89128,89130,89132],{"class":86,"line":321},[84,89129,324],{"class":90},[84,89131,4898],{"class":94},[84,89133,102],{"class":90},[84,89135,89136,89138,89140],{"class":86,"line":331},[84,89137,274],{"class":90},[84,89139,291],{"class":94},[84,89141,102],{"class":90},[74,89143,89145],{"className":76,"code":40468,"filename":1782,"highlights":89144,"language":79,"meta":80,"style":80},[315,331],[22,89146,89147,89155,89163,89169,89175,89179,89183,89191,89199,89203,89215,89227,89231,89235,89239,89243,89247,89251,89259,89263,89271,89292,89304,89325,89329,89337,89345],{"__ignoreMap":80},[84,89148,89149,89151,89153],{"class":86,"line":87},[84,89150,91],{"class":90},[84,89152,95],{"class":94},[84,89154,102],{"class":90},[84,89156,89157,89159,89161],{"class":86,"line":105},[84,89158,418],{"class":108},[84,89160,1870],{"class":108},[84,89162,175],{"class":90},[84,89164,89165,89167],{"class":86,"line":122},[84,89166,1896],{"class":98},[84,89168,1307],{"class":90},[84,89170,89171,89173],{"class":86,"line":129},[84,89172,1903],{"class":108},[84,89174,175],{"class":90},[84,89176,89177],{"class":86,"line":154},[84,89178,40504],{"class":90},[84,89180,89181],{"class":86,"line":159},[84,89182,40509],{"class":90},[84,89184,89185,89187,89189],{"class":86,"line":178},[84,89186,40514],{"class":90},[84,89188,40300],{"class":118},[84,89190,1887],{"class":90},[84,89192,89193,89195,89197],{"class":86,"line":190},[84,89194,40523],{"class":90},[84,89196,40310],{"class":118},[84,89198,1887],{"class":90},[84,89200,89201],{"class":86,"line":196},[84,89202,40532],{"class":90},[84,89204,89205,89207,89209,89211,89213],{"class":86,"line":201},[84,89206,40537],{"class":90},[84,89208,40325],{"class":118},[84,89210,23323],{"class":90},[84,89212,39460],{"class":118},[84,89214,2921],{"class":90},[84,89216,89217,89219,89221,89223,89225],{"class":86,"line":217},[84,89218,40537],{"class":90},[84,89220,40338],{"class":118},[84,89222,23323],{"class":90},[84,89224,40343],{"class":118},[84,89226,2968],{"class":90},[84,89228,89229],{"class":86,"line":227},[84,89230,40562],{"class":90},[84,89232,89233],{"class":86,"line":232},[84,89234,9629],{"class":90},[84,89236,89237],{"class":86,"line":237},[84,89238,3510],{"class":90},[84,89240,89241],{"class":86,"line":253},[84,89242,1936],{"class":90},[84,89244,89245],{"class":86,"line":266},[84,89246,485],{"class":90},[84,89248,89249],{"class":86,"line":271},[84,89250,193],{"class":90},[84,89252,89253,89255,89257],{"class":86,"line":281},[84,89254,274],{"class":90},[84,89256,95],{"class":94},[84,89258,102],{"class":90},[84,89260,89261],{"class":86,"line":286},[84,89262,126],{"emptyLinePlaceholder":125},[84,89264,89265,89267,89269],{"class":86,"line":296},[84,89266,91],{"class":90},[84,89268,291],{"class":94},[84,89270,102],{"class":90},[84,89272,89274,89276,89278,89280,89282,89284,89286,89288,89290],{"class":89273,"line":315},[86,10151],[84,89275,299],{"class":90},[84,89277,4898],{"class":94},[84,89279,13525],{"class":98},[84,89281,184],{"class":90},[84,89283,40392],{"class":118},[84,89285,5092],{"class":98},[84,89287,184],{"class":90},[84,89289,40399],{"class":118},[84,89291,102],{"class":90},[84,89293,89294,89296,89298,89300,89302],{"class":86,"line":321},[84,89295,1642],{"class":90},[84,89297,1074],{"class":94},[84,89299,40410],{"class":90},[84,89301,1074],{"class":94},[84,89303,102],{"class":90},[84,89305,89307,89309,89311,89313,89315,89317,89319,89321,89323],{"class":89306,"line":331},[86,10151],[84,89308,1642],{"class":90},[84,89310,740],{"class":94},[84,89312,13525],{"class":98},[84,89314,184],{"class":90},[84,89316,40428],{"class":118},[84,89318,5092],{"class":98},[84,89320,184],{"class":90},[84,89322,39638],{"class":118},[84,89324,102],{"class":90},[84,89326,89327],{"class":86,"line":336},[84,89328,40441],{"class":90},[84,89330,89331,89333,89335],{"class":86,"line":354},[84,89332,1734],{"class":90},[84,89334,740],{"class":94},[84,89336,102],{"class":90},[84,89338,89339,89341,89343],{"class":86,"line":360},[84,89340,324],{"class":90},[84,89342,4898],{"class":94},[84,89344,102],{"class":90},[84,89346,89347,89349,89351],{"class":86,"line":369},[84,89348,274],{"class":90},[84,89350,291],{"class":94},[84,89352,102],{"class":90},[34,89354,40688,89355],{"id":40687},[22,89356,25577],{},[1074,89358,21530,89359,37761,89361,40698],{"id":40693},[22,89360,37760],{},[22,89362,2580],{},[74,89364,89366],{"className":76,"code":40701,"filename":34884,"highlights":89365,"language":79,"meta":80,"style":80},[87],[22,89367,89368,89403,89407],{"__ignoreMap":80},[84,89369,89371,89373,89375,89377,89379,89381,89383,89385,89387,89389,89391,89393,89395,89397,89399,89401],{"class":89370,"line":87},[86,10151],[84,89372,91],{"class":90},[84,89374,740],{"class":94},[84,89376,13525],{"class":108},[84,89378,184],{"class":90},[84,89380,1678],{"class":118},[84,89382,40720],{"class":90},[84,89384,39106],{"class":108},[84,89386,39020],{"class":90},[84,89388,1678],{"class":118},[84,89390,7012],{"class":90},[84,89392,2580],{"class":98},[84,89394,184],{"class":90},[84,89396,1678],{"class":118},[84,89398,37760],{"class":90},[84,89400,1678],{"class":118},[84,89402,102],{"class":90},[84,89404,89405],{"class":86,"line":105},[84,89406,40745],{"class":90},[84,89408,89409,89411,89413],{"class":86,"line":122},[84,89410,274],{"class":90},[84,89412,740],{"class":94},[84,89414,102],{"class":90},[15,89416,40756],{},[823,89418,89419],{},[15,89420,40761,89421,40764],{},[22,89422,39121],{},[1074,89424,40768,89425,2488,89427,40773],{"id":40767},[22,89426,8299],{},[22,89428,25577],{},[74,89430,89432],{"className":76,"code":40776,"filename":29029,"highlights":89431,"language":79,"meta":80,"style":80},[87],[22,89433,89434,89479,89483],{"__ignoreMap":80},[84,89435,89437,89439,89441,89443,89445,89447,89449,89451,89453,89455,89457,89459,89461,89463,89465,89467,89469,89471,89473,89475,89477],{"class":89436,"line":87},[86,10151],[84,89438,91],{"class":90},[84,89440,740],{"class":94},[84,89442,13525],{"class":108},[84,89444,184],{"class":90},[84,89446,1678],{"class":118},[84,89448,40795],{"class":90},[84,89450,39106],{"class":108},[84,89452,11767],{"class":90},[84,89454,1678],{"class":118},[84,89456,344],{"class":108},[84,89458,184],{"class":90},[84,89460,1678],{"class":118},[84,89462,40810],{"class":90},[84,89464,1678],{"class":118},[84,89466,7012],{"class":90},[84,89468,2580],{"class":98},[84,89470,184],{"class":90},[84,89472,1678],{"class":118},[84,89474,40823],{"class":90},[84,89476,1678],{"class":118},[84,89478,102],{"class":90},[84,89480,89481],{"class":86,"line":105},[84,89482,40832],{"class":90},[84,89484,89485,89487,89489],{"class":86,"line":122},[84,89486,274],{"class":90},[84,89488,740],{"class":94},[84,89490,102],{"class":90},[823,89492,89493],{},[15,89494,40845,89495,40848],{},[22,89496,2523],{},[1074,89498,40852,89499],{"id":40851},[22,89500,2523],{},[15,89502,40857],{},[1074,89504,27465,89505,40863],{"id":40860},[22,89506,2580],{},[15,89508,40866,89509,40869],{},[22,89510,2580],{},[34,89512,40873],{"id":40872},[737,89514,89515,89521,89525,89527,89531],{},[740,89516,21486,89517,40880,89519,764],{},[22,89518,22745],{},[22,89520,37669],{},[740,89522,40885,89523,764],{},[22,89524,2523],{},[740,89526,40890],{},[740,89528,40893,89529,40896],{},[22,89530,25577],{},[740,89532,40899],{},[34,89534,18395],{"id":18394},[15,89536,89537,40906],{},[22,89538,25577],{},[15,89540,40909],{},[737,89542,89543,89547,89551],{},[740,89544,89545,40916],{},[22,89546,2580],{},[740,89548,40919,89549],{},[22,89550,2523],{},[740,89552,40924],{},[15,89554,40927],{},[835,89556,837],{},{"title":80,"searchDepth":105,"depth":105,"links":89558},[89559,89560,89561,89562,89563,89564,89569,89574,89580,89581],{"id":21333,"depth":105,"text":21334},{"id":37715,"depth":105,"text":40934},{"id":1039,"depth":105,"text":1040},{"id":37767,"depth":105,"text":37768},{"id":38019,"depth":105,"text":38020},{"id":38439,"depth":105,"text":40939,"children":89565},[89566,89567,89568],{"id":38446,"depth":122,"text":40942},{"id":38697,"depth":122,"text":38698},{"id":38980,"depth":122,"text":40945},{"id":39369,"depth":105,"text":39370,"children":89570},[89571,89572,89573],{"id":39373,"depth":122,"text":40949},{"id":39928,"depth":122,"text":40951},{"id":40243,"depth":122,"text":40244},{"id":40687,"depth":105,"text":40954,"children":89575},[89576,89577,89578,89579],{"id":40693,"depth":122,"text":40957},{"id":40767,"depth":122,"text":40959},{"id":40851,"depth":122,"text":40961},{"id":40860,"depth":122,"text":40963},{"id":40872,"depth":105,"text":40873},{"id":18394,"depth":105,"text":18395},{"updatedAt":40971,"coverCaption":18477,"author":868,"keywords":89583},[870,25577,40973,2580,873,1782,11392],[89585],{"headline":40977,"author":89586,"datePublished":40971,"@type":880},{"name":868,"@type":879},{"title":37640,"description":40969},[89589,89590,89591,89592],{"tag":21297,"color":21298},{"tag":40984,"color":3946},{"tag":22594,"color":22595},{"tag":894,"color":895},{"id":40989,"title":40990,"body":89594,"cover":42830,"coverAlt":42831,"date":42832,"description":42833,"draft":852,"extension":853,"lab":882,"locale":864,"meta":91261,"navigation":125,"path":42840,"schemaOrg":91263,"seo":91266,"series":21291,"seriesDescription":21292,"seriesOrder":105,"seriesTitle":21293,"slug":882,"stem":42846,"tags":91267,"__hash__":42854},{"type":8,"value":89595,"toc":91242},[89596,89604,89614,89636,89642,89644,89648,89658,89662,89670,89678,89684,89692,89694,89704,89708,89712,89716,89722,89732,89734,89762,89768,89770,89996,90234,90248,90252,90258,90439,90626,90628,90632,90640,90646,90652,90660,90886,91118,91120,91126,91128,91174,91184,91188,91198,91202,91210,91212,91234,91240],[11,89597,89598,754,89600,2488,89602,41003],{"id":40995},[22,89599,8299],{},[22,89601,41000],{},[22,89603,8462],{},[15,89605,41006,89606,754,89608,2488,89610,41013,89612,41017],{},[22,89607,8299],{},[22,89609,41000],{},[22,89611,8462],{},[958,89613,41016],{},[737,89615,89616,89626],{},[740,89617,89618,21408,89624,41031],{},[958,89619,89620,6014,89622],{},[22,89621,8299],{},[22,89623,41000],{},[4070,89625,41030],{},[740,89627,89628,21408,89632,41041,89634,764],{},[958,89629,89630],{},[22,89631,8462],{},[4070,89633,41040],{},[22,89635,41044],{},[15,89637,41047,89638,13234,89640,41054],{},[958,89639,41050],{},[958,89641,41053],{},[34,89643,41058],{"id":41057},[1074,89645,89646],{"id":8299},[22,89647,8299],{},[15,89649,41065,89650,41069,89652,41072,89654,41075,89656,764],{},[958,89651,41068],{},[22,89653,2938],{},[22,89655,148],{},[958,89657,41078],{},[15,89659,89660],{},[958,89661,41083],{},[737,89663,89664,89666,89668],{},[740,89665,41088],{},[740,89667,41091],{},[740,89669,41094],{},[823,89671,89672],{},[15,89673,89674,41101,89676,41105],{},[22,89675,8299],{},[958,89677,41104],{},[1074,89679,89680,2488,89682],{"id":41108},[22,89681,41000],{},[22,89683,41113],{},[15,89685,41116,89686,41120,89688,50,89690,764],{},[958,89687,41119],{},[22,89689,8299],{},[22,89691,41113],{},[15,89693,41127],{},[737,89695,89696,89700],{},[740,89697,41132,89698,41136],{},[958,89699,41135],{},[740,89701,41139,89702,764],{},[958,89703,41142],{},[1074,89705,89706],{"id":8462},[22,89707,8462],{},[15,89709,41149,89710,41153],{},[958,89711,41152],{},[15,89713,89714],{},[958,89715,41083],{},[737,89717,89718,89720],{},[740,89719,41162],{},[740,89721,41165],{},[823,89723,89724],{},[15,89725,89726,11716,89728,41177],{},[22,89727,8462],{},[958,89729,41174,89730],{},[22,89731,26850],{},[34,89733,41181],{"id":41180},[737,89735,89736,89744,89754],{},[740,89737,21486,89738,41190,89742,41194],{},[958,89739,89740],{},[22,89741,8299],{},[958,89743,41193],{},[740,89745,21486,89746,41190,89750,41204,89752,764],{},[958,89747,89748],{},[22,89749,8462],{},[958,89751,41203],{},[958,89753,41207],{},[740,89755,21486,89756,41214,89760,764],{},[958,89757,89758],{},[22,89759,41000],{},[22,89761,8299],{},[34,89763,41220,89764,28840,89766,909],{"id":41219},[22,89765,8299],{},[22,89767,41000],{},[15,89769,41227],{},[74,89771,89773],{"className":76,"code":41230,"filename":873,"highlights":89772,"language":79,"meta":80,"style":80},[178,266,315],[22,89774,89775,89785,89797,89801,89817,89821,89829,89840,89844,89852,89856,89864,89878,89882,89890,89894,89909,89921,89933,89941,89945,89956,89968,89980,89988],{"__ignoreMap":80},[84,89776,89777,89779,89781,89783],{"class":86,"line":87},[84,89778,91],{"class":90},[84,89780,95],{"class":94},[84,89782,99],{"class":98},[84,89784,102],{"class":90},[84,89786,89787,89789,89791,89793,89795],{"class":86,"line":105},[84,89788,109],{"class":108},[84,89790,112],{"class":90},[84,89792,115],{"class":108},[84,89794,18866],{"class":118},[84,89796,18869],{"class":90},[84,89798,89799],{"class":86,"line":122},[84,89800,126],{"emptyLinePlaceholder":125},[84,89802,89803,89805,89807,89809,89811,89813,89815],{"class":86,"line":129},[84,89804,132],{"class":108},[84,89806,41266],{"class":135},[84,89808,139],{"class":108},[84,89810,142],{"class":98},[84,89812,145],{"class":90},[84,89814,148],{"class":135},[84,89816,18994],{"class":90},[84,89818,89819],{"class":86,"line":154},[84,89820,126],{"emptyLinePlaceholder":125},[84,89822,89823,89825,89827],{"class":86,"line":159},[84,89824,3246],{"class":108},[84,89826,41287],{"class":98},[84,89828,1307],{"class":90},[84,89830,89832,89834,89836,89838],{"class":89831,"line":178},[86,10151],[84,89833,41295],{"class":90},[84,89835,184],{"class":108},[84,89837,260],{"class":108},[84,89839,41302],{"class":90},[84,89841,89842],{"class":86,"line":190},[84,89843,193],{"class":90},[84,89845,89846,89848,89850],{"class":86,"line":196},[84,89847,274],{"class":90},[84,89849,95],{"class":94},[84,89851,102],{"class":90},[84,89853,89854],{"class":86,"line":201},[84,89855,126],{"emptyLinePlaceholder":125},[84,89857,89858,89860,89862],{"class":86,"line":217},[84,89859,91],{"class":90},[84,89861,291],{"class":94},[84,89863,102],{"class":90},[84,89865,89866,89868,89870,89872,89874,89876],{"class":86,"line":227},[84,89867,299],{"class":90},[84,89869,302],{"class":94},[84,89871,305],{"class":98},[84,89873,184],{"class":90},[84,89875,41339],{"class":118},[84,89877,102],{"class":90},[84,89879,89880],{"class":86,"line":232},[84,89881,41346],{"class":90},[84,89883,89884,89886,89888],{"class":86,"line":237},[84,89885,324],{"class":90},[84,89887,302],{"class":94},[84,89889,102],{"class":90},[84,89891,89892],{"class":86,"line":253},[84,89893,126],{"emptyLinePlaceholder":125},[84,89895,89897,89899,89901,89903,89905,89907],{"class":89896,"line":266},[86,10151],[84,89898,299],{"class":90},[84,89900,4898],{"class":94},[84,89902,344],{"class":98},[84,89904,184],{"class":90},[84,89906,41372],{"class":118},[84,89908,102],{"class":90},[84,89910,89911,89913,89915,89917,89919],{"class":86,"line":271},[84,89912,1642],{"class":90},[84,89914,34],{"class":94},[84,89916,41383],{"class":90},[84,89918,34],{"class":94},[84,89920,102],{"class":90},[84,89922,89923,89925,89927,89929,89931],{"class":86,"line":281},[84,89924,1642],{"class":90},[84,89926,15],{"class":94},[84,89928,41396],{"class":90},[84,89930,15],{"class":94},[84,89932,102],{"class":90},[84,89934,89935,89937,89939],{"class":86,"line":286},[84,89936,324],{"class":90},[84,89938,4898],{"class":94},[84,89940,102],{"class":90},[84,89942,89943],{"class":86,"line":296},[84,89944,126],{"emptyLinePlaceholder":125},[84,89946,89948,89950,89952,89954],{"class":89947,"line":315},[86,10151],[84,89949,299],{"class":90},[84,89951,4898],{"class":94},[84,89953,1753],{"class":98},[84,89955,102],{"class":90},[84,89957,89958,89960,89962,89964,89966],{"class":86,"line":321},[84,89959,1642],{"class":90},[84,89961,34],{"class":94},[84,89963,41432],{"class":90},[84,89965,34],{"class":94},[84,89967,102],{"class":90},[84,89969,89970,89972,89974,89976,89978],{"class":86,"line":331},[84,89971,1642],{"class":90},[84,89973,15],{"class":94},[84,89975,41445],{"class":90},[84,89977,15],{"class":94},[84,89979,102],{"class":90},[84,89981,89982,89984,89986],{"class":86,"line":336},[84,89983,324],{"class":90},[84,89985,4898],{"class":94},[84,89987,102],{"class":90},[84,89989,89990,89992,89994],{"class":86,"line":354},[84,89991,274],{"class":90},[84,89993,291],{"class":94},[84,89995,102],{"class":90},[74,89997,89999],{"className":76,"code":41468,"filename":1782,"highlights":89998,"language":79,"meta":80,"style":80},[201,315,360],[22,90000,90001,90009,90017,90023,90029,90037,90041,90045,90049,90055,90070,90074,90078,90082,90090,90094,90102,90116,90120,90128,90132,90147,90159,90171,90179,90183,90194,90206,90218,90226],{"__ignoreMap":80},[84,90002,90003,90005,90007],{"class":86,"line":87},[84,90004,91],{"class":90},[84,90006,95],{"class":94},[84,90008,102],{"class":90},[84,90010,90011,90013,90015],{"class":86,"line":105},[84,90012,418],{"class":108},[84,90014,1870],{"class":108},[84,90016,175],{"class":90},[84,90018,90019,90021],{"class":86,"line":122},[84,90020,1896],{"class":98},[84,90022,1307],{"class":90},[84,90024,90025,90027],{"class":86,"line":129},[84,90026,1903],{"class":108},[84,90028,175],{"class":90},[84,90030,90031,90033,90035],{"class":86,"line":154},[84,90032,41504],{"class":90},[84,90034,148],{"class":135},[84,90036,1887],{"class":90},[84,90038,90039],{"class":86,"line":159},[84,90040,19195],{"class":90},[84,90042,90043],{"class":86,"line":178},[84,90044,1941],{"class":90},[84,90046,90047],{"class":86,"line":190},[84,90048,1950],{"class":90},[84,90050,90051,90053],{"class":86,"line":196},[84,90052,41525],{"class":98},[84,90054,1307],{"class":90},[84,90056,90058,90060,90062,90064,90066,90068],{"class":90057,"line":201},[86,10151],[84,90059,2022],{"class":135},[84,90061,41535],{"class":90},[84,90063,184],{"class":108},[84,90065,260],{"class":108},[84,90067,2151],{"class":135},[84,90069,41544],{"class":90},[84,90071,90072],{"class":86,"line":217},[84,90073,7783],{"class":90},[84,90075,90076],{"class":86,"line":227},[84,90077,1941],{"class":90},[84,90079,90080],{"class":86,"line":232},[84,90081,18973],{"class":90},[84,90083,90084,90086,90088],{"class":86,"line":237},[84,90085,274],{"class":90},[84,90087,95],{"class":94},[84,90089,102],{"class":90},[84,90091,90092],{"class":86,"line":253},[84,90093,126],{"emptyLinePlaceholder":125},[84,90095,90096,90098,90100],{"class":86,"line":266},[84,90097,91],{"class":90},[84,90099,291],{"class":94},[84,90101,102],{"class":90},[84,90103,90104,90106,90108,90110,90112,90114],{"class":86,"line":271},[84,90105,299],{"class":90},[84,90107,302],{"class":94},[84,90109,305],{"class":98},[84,90111,184],{"class":90},[84,90113,41339],{"class":118},[84,90115,102],{"class":90},[84,90117,90118],{"class":86,"line":281},[84,90119,41346],{"class":90},[84,90121,90122,90124,90126],{"class":86,"line":286},[84,90123,324],{"class":90},[84,90125,302],{"class":94},[84,90127,102],{"class":90},[84,90129,90130],{"class":86,"line":296},[84,90131,126],{"emptyLinePlaceholder":125},[84,90133,90135,90137,90139,90141,90143,90145],{"class":90134,"line":315},[86,10151],[84,90136,299],{"class":90},[84,90138,4898],{"class":94},[84,90140,344],{"class":98},[84,90142,184],{"class":90},[84,90144,41372],{"class":118},[84,90146,102],{"class":90},[84,90148,90149,90151,90153,90155,90157],{"class":86,"line":321},[84,90150,1642],{"class":90},[84,90152,34],{"class":94},[84,90154,41383],{"class":90},[84,90156,34],{"class":94},[84,90158,102],{"class":90},[84,90160,90161,90163,90165,90167,90169],{"class":86,"line":331},[84,90162,1642],{"class":90},[84,90164,15],{"class":94},[84,90166,41396],{"class":90},[84,90168,15],{"class":94},[84,90170,102],{"class":90},[84,90172,90173,90175,90177],{"class":86,"line":336},[84,90174,324],{"class":90},[84,90176,4898],{"class":94},[84,90178,102],{"class":90},[84,90180,90181],{"class":86,"line":354},[84,90182,126],{"emptyLinePlaceholder":125},[84,90184,90186,90188,90190,90192],{"class":90185,"line":360},[86,10151],[84,90187,299],{"class":90},[84,90189,4898],{"class":94},[84,90191,1753],{"class":98},[84,90193,102],{"class":90},[84,90195,90196,90198,90200,90202,90204],{"class":86,"line":369},[84,90197,1642],{"class":90},[84,90199,34],{"class":94},[84,90201,41432],{"class":90},[84,90203,34],{"class":94},[84,90205,102],{"class":90},[84,90207,90208,90210,90212,90214,90216],{"class":86,"line":1453},[84,90209,1642],{"class":90},[84,90211,15],{"class":94},[84,90213,41445],{"class":90},[84,90215,15],{"class":94},[84,90217,102],{"class":90},[84,90219,90220,90222,90224],{"class":86,"line":1462},[84,90221,324],{"class":90},[84,90223,4898],{"class":94},[84,90225,102],{"class":90},[84,90227,90228,90230,90232],{"class":86,"line":1484},[84,90229,274],{"class":90},[84,90231,291],{"class":94},[84,90233,102],{"class":90},[823,90235,90236],{},[15,90237,18597,90238,41716,90240,17698,90242,41722,90244,41726,90246,764],{},[22,90239,41715],{},[958,90241,41719],{},[22,90243,8299],{},[22,90245,41725],{},[22,90247,17390],{},[34,90249,41732,90250,909],{"id":41731},[22,90251,8462],{},[15,90253,41737,90254,41742],{},[958,90255,90256],{},[22,90257,8462],{},[74,90259,90261],{"className":76,"code":41745,"filename":873,"highlights":90260,"language":79,"meta":80,"style":80},[129,227],[22,90262,90263,90273,90285,90289,90306,90314,90318,90326,90340,90344,90352,90356,90377,90389,90397,90411,90415,90423,90431],{"__ignoreMap":80},[84,90264,90265,90267,90269,90271],{"class":86,"line":87},[84,90266,91],{"class":90},[84,90268,95],{"class":94},[84,90270,99],{"class":98},[84,90272,102],{"class":90},[84,90274,90275,90277,90279,90281,90283],{"class":86,"line":105},[84,90276,109],{"class":108},[84,90278,112],{"class":90},[84,90280,115],{"class":108},[84,90282,18866],{"class":118},[84,90284,18869],{"class":90},[84,90286,90287],{"class":86,"line":122},[84,90288,126],{"emptyLinePlaceholder":125},[84,90290,90292,90294,90296,90298,90300,90302,90304],{"class":90291,"line":129},[86,10151],[84,90293,132],{"class":108},[84,90295,136],{"class":135},[84,90297,139],{"class":108},[84,90299,142],{"class":98},[84,90301,145],{"class":90},[84,90303,148],{"class":135},[84,90305,18994],{"class":90},[84,90307,90308,90310,90312],{"class":86,"line":154},[84,90309,274],{"class":90},[84,90311,95],{"class":94},[84,90313,102],{"class":90},[84,90315,90316],{"class":86,"line":159},[84,90317,126],{"emptyLinePlaceholder":125},[84,90319,90320,90322,90324],{"class":86,"line":178},[84,90321,91],{"class":90},[84,90323,291],{"class":94},[84,90325,102],{"class":90},[84,90327,90328,90330,90332,90334,90336,90338],{"class":86,"line":190},[84,90329,299],{"class":90},[84,90331,302],{"class":94},[84,90333,305],{"class":98},[84,90335,184],{"class":90},[84,90337,19417],{"class":118},[84,90339,102],{"class":90},[84,90341,90342],{"class":86,"line":196},[84,90343,41830],{"class":90},[84,90345,90346,90348,90350],{"class":86,"line":201},[84,90347,324],{"class":90},[84,90349,302],{"class":94},[84,90351,102],{"class":90},[84,90353,90354],{"class":86,"line":217},[84,90355,126],{"emptyLinePlaceholder":125},[84,90357,90359,90361,90363,90365,90367,90369,90371,90373,90375],{"class":90358,"line":227},[86,10151],[84,90360,299],{"class":90},[84,90362,22190],{"class":94},[84,90364,41852],{"class":98},[84,90366,184],{"class":90},[84,90368,349],{"class":118},[84,90370,1629],{"class":98},[84,90372,184],{"class":90},[84,90374,7184],{"class":118},[84,90376,102],{"class":90},[84,90378,90379,90381,90383,90385,90387],{"class":86,"line":232},[84,90380,1642],{"class":90},[84,90382,1074],{"class":94},[84,90384,41873],{"class":90},[84,90386,1074],{"class":94},[84,90388,102],{"class":90},[84,90390,90391,90393,90395],{"class":86,"line":237},[84,90392,1642],{"class":90},[84,90394,4653],{"class":94},[84,90396,102],{"class":90},[84,90398,90399,90401,90403,90405,90407,90409],{"class":86,"line":253},[84,90400,1691],{"class":90},[84,90402,18759],{"class":94},[84,90404,5046],{"class":98},[84,90406,184],{"class":90},[84,90408,29874],{"class":118},[84,90410,5100],{"class":90},[84,90412,90413],{"class":86,"line":266},[84,90414,41904],{"class":90},[84,90416,90417,90419,90421],{"class":86,"line":271},[84,90418,1734],{"class":90},[84,90420,4653],{"class":94},[84,90422,102],{"class":90},[84,90424,90425,90427,90429],{"class":86,"line":281},[84,90426,324],{"class":90},[84,90428,22190],{"class":94},[84,90430,102],{"class":90},[84,90432,90433,90435,90437],{"class":86,"line":286},[84,90434,274],{"class":90},[84,90436,291],{"class":94},[84,90438,102],{"class":90},[74,90440,90442],{"className":76,"code":41931,"filename":1782,"highlights":90441,"language":79,"meta":80,"style":80},[154,266],[22,90443,90444,90452,90460,90466,90472,90481,90485,90489,90493,90501,90505,90513,90527,90531,90539,90543,90564,90576,90584,90598,90602,90610,90618],{"__ignoreMap":80},[84,90445,90446,90448,90450],{"class":86,"line":87},[84,90447,91],{"class":90},[84,90449,95],{"class":94},[84,90451,102],{"class":90},[84,90453,90454,90456,90458],{"class":86,"line":105},[84,90455,418],{"class":108},[84,90457,1870],{"class":108},[84,90459,175],{"class":90},[84,90461,90462,90464],{"class":86,"line":122},[84,90463,1896],{"class":98},[84,90465,1307],{"class":90},[84,90467,90468,90470],{"class":86,"line":129},[84,90469,1903],{"class":108},[84,90471,175],{"class":90},[84,90473,90475,90477,90479],{"class":90474,"line":154},[86,10151],[84,90476,19547],{"class":90},[84,90478,148],{"class":135},[84,90480,1887],{"class":90},[84,90482,90483],{"class":86,"line":159},[84,90484,19195],{"class":90},[84,90486,90487],{"class":86,"line":178},[84,90488,1941],{"class":90},[84,90490,90491],{"class":86,"line":190},[84,90492,18973],{"class":90},[84,90494,90495,90497,90499],{"class":86,"line":196},[84,90496,274],{"class":90},[84,90498,95],{"class":94},[84,90500,102],{"class":90},[84,90502,90503],{"class":86,"line":201},[84,90504,126],{"emptyLinePlaceholder":125},[84,90506,90507,90509,90511],{"class":86,"line":217},[84,90508,91],{"class":90},[84,90510,291],{"class":94},[84,90512,102],{"class":90},[84,90514,90515,90517,90519,90521,90523,90525],{"class":86,"line":227},[84,90516,299],{"class":90},[84,90518,302],{"class":94},[84,90520,305],{"class":98},[84,90522,184],{"class":90},[84,90524,19417],{"class":118},[84,90526,102],{"class":90},[84,90528,90529],{"class":86,"line":232},[84,90530,41830],{"class":90},[84,90532,90533,90535,90537],{"class":86,"line":237},[84,90534,324],{"class":90},[84,90536,302],{"class":94},[84,90538,102],{"class":90},[84,90540,90541],{"class":86,"line":253},[84,90542,126],{"emptyLinePlaceholder":125},[84,90544,90546,90548,90550,90552,90554,90556,90558,90560,90562],{"class":90545,"line":266},[86,10151],[84,90547,299],{"class":90},[84,90549,22190],{"class":94},[84,90551,41852],{"class":98},[84,90553,184],{"class":90},[84,90555,349],{"class":118},[84,90557,1629],{"class":98},[84,90559,184],{"class":90},[84,90561,7184],{"class":118},[84,90563,102],{"class":90},[84,90565,90566,90568,90570,90572,90574],{"class":86,"line":271},[84,90567,1642],{"class":90},[84,90569,1074],{"class":94},[84,90571,41873],{"class":90},[84,90573,1074],{"class":94},[84,90575,102],{"class":90},[84,90577,90578,90580,90582],{"class":86,"line":281},[84,90579,1642],{"class":90},[84,90581,4653],{"class":94},[84,90583,102],{"class":90},[84,90585,90586,90588,90590,90592,90594,90596],{"class":86,"line":286},[84,90587,1691],{"class":90},[84,90589,18759],{"class":94},[84,90591,5046],{"class":98},[84,90593,184],{"class":90},[84,90595,29874],{"class":118},[84,90597,5100],{"class":90},[84,90599,90600],{"class":86,"line":296},[84,90601,41904],{"class":90},[84,90603,90604,90606,90608],{"class":86,"line":315},[84,90605,1734],{"class":90},[84,90607,4653],{"class":94},[84,90609,102],{"class":90},[84,90611,90612,90614,90616],{"class":86,"line":321},[84,90613,324],{"class":90},[84,90615,22190],{"class":94},[84,90617,102],{"class":90},[84,90619,90620,90622,90624],{"class":86,"line":331},[84,90621,274],{"class":90},[84,90623,291],{"class":94},[84,90625,102],{"class":90},[1074,90627,42120],{"id":42119},[15,90629,42123,90630,42127],{},[958,90631,42126],{},[737,90633,90634,90636,90638],{},[740,90635,42132],{},[740,90637,42135],{},[740,90639,42138],{},[15,90641,42141,90642,42145,90644,764],{},[958,90643,42144],{},[22,90645,8299],{},[34,90647,90648,42153,90650,42157],{"id":42150},[22,90649,41113],{},[22,90651,42156],{},[15,90653,42160,90654,754,90656,2488,90658,764],{},[4070,90655,4121],{},[4070,90657,4127],{},[4070,90659,42167],{},[74,90661,90663],{"className":76,"code":42170,"filename":873,"highlights":90662,"language":79,"meta":80,"style":80},[129,232,237,253,266],[22,90664,90665,90675,90687,90691,90710,90718,90722,90730,90748,90766,90784,90802,90806,90825,90844,90863,90878],{"__ignoreMap":80},[84,90666,90667,90669,90671,90673],{"class":86,"line":87},[84,90668,91],{"class":90},[84,90670,95],{"class":94},[84,90672,99],{"class":98},[84,90674,102],{"class":90},[84,90676,90677,90679,90681,90683,90685],{"class":86,"line":105},[84,90678,109],{"class":108},[84,90680,112],{"class":90},[84,90682,115],{"class":108},[84,90684,18866],{"class":118},[84,90686,18869],{"class":90},[84,90688,90689],{"class":86,"line":122},[84,90690,126],{"emptyLinePlaceholder":125},[84,90692,90694,90696,90698,90700,90702,90704,90706,90708],{"class":90693,"line":129},[86,10151],[84,90695,132],{"class":108},[84,90697,6494],{"class":135},[84,90699,139],{"class":108},[84,90701,142],{"class":98},[84,90703,145],{"class":90},[84,90705,42215],{"class":118},[84,90707,42218],{"class":90},[84,90709,42221],{"class":13481},[84,90711,90712,90714,90716],{"class":86,"line":154},[84,90713,274],{"class":90},[84,90715,95],{"class":94},[84,90717,102],{"class":90},[84,90719,90720],{"class":86,"line":159},[84,90721,126],{"emptyLinePlaceholder":125},[84,90723,90724,90726,90728],{"class":86,"line":178},[84,90725,91],{"class":90},[84,90727,291],{"class":94},[84,90729,102],{"class":90},[84,90731,90732,90734,90736,90738,90740,90742,90744,90746],{"class":86,"line":190},[84,90733,299],{"class":90},[84,90735,302],{"class":94},[84,90737,305],{"class":98},[84,90739,184],{"class":90},[84,90741,42254],{"class":118},[84,90743,42257],{"class":90},[84,90745,302],{"class":94},[84,90747,102],{"class":90},[84,90749,90750,90752,90754,90756,90758,90760,90762,90764],{"class":86,"line":196},[84,90751,299],{"class":90},[84,90753,302],{"class":94},[84,90755,305],{"class":98},[84,90757,184],{"class":90},[84,90759,42274],{"class":118},[84,90761,42277],{"class":90},[84,90763,302],{"class":94},[84,90765,102],{"class":90},[84,90767,90768,90770,90772,90774,90776,90778,90780,90782],{"class":86,"line":201},[84,90769,299],{"class":90},[84,90771,302],{"class":94},[84,90773,305],{"class":98},[84,90775,184],{"class":90},[84,90777,42294],{"class":118},[84,90779,42297],{"class":90},[84,90781,302],{"class":94},[84,90783,102],{"class":90},[84,90785,90786,90788,90790,90792,90794,90796,90798,90800],{"class":86,"line":217},[84,90787,299],{"class":90},[84,90789,302],{"class":94},[84,90791,305],{"class":98},[84,90793,184],{"class":90},[84,90795,42314],{"class":118},[84,90797,42317],{"class":90},[84,90799,302],{"class":94},[84,90801,102],{"class":90},[84,90803,90804],{"class":86,"line":227},[84,90805,126],{"emptyLinePlaceholder":125},[84,90807,90809,90811,90813,90815,90817,90819,90821,90823],{"class":90808,"line":232},[86,10151],[84,90810,299],{"class":90},[84,90812,15],{"class":94},[84,90814,344],{"class":98},[84,90816,184],{"class":90},[84,90818,42339],{"class":118},[84,90820,42342],{"class":90},[84,90822,15],{"class":94},[84,90824,102],{"class":90},[84,90826,90828,90830,90832,90834,90836,90838,90840,90842],{"class":90827,"line":237},[86,10151],[84,90829,299],{"class":90},[84,90831,15],{"class":94},[84,90833,1673],{"class":98},[84,90835,184],{"class":90},[84,90837,42360],{"class":118},[84,90839,42363],{"class":90},[84,90841,15],{"class":94},[84,90843,102],{"class":90},[84,90845,90847,90849,90851,90853,90855,90857,90859,90861],{"class":90846,"line":253},[86,10151],[84,90848,299],{"class":90},[84,90850,15],{"class":94},[84,90852,1673],{"class":98},[84,90854,184],{"class":90},[84,90856,42381],{"class":118},[84,90858,42384],{"class":90},[84,90860,15],{"class":94},[84,90862,102],{"class":90},[84,90864,90866,90868,90870,90872,90874,90876],{"class":90865,"line":266},[86,10151],[84,90867,299],{"class":90},[84,90869,15],{"class":94},[84,90871,1753],{"class":98},[84,90873,42400],{"class":90},[84,90875,15],{"class":94},[84,90877,102],{"class":90},[84,90879,90880,90882,90884],{"class":86,"line":271},[84,90881,274],{"class":90},[84,90883,291],{"class":94},[84,90885,102],{"class":90},[74,90887,90889],{"className":76,"code":42415,"filename":1782,"highlights":90888,"language":79,"meta":80,"style":80},[154,271,281,286,296],[22,90890,90891,90899,90907,90913,90919,90930,90934,90938,90942,90950,90954,90962,90980,90998,91016,91034,91038,91057,91076,91095,91110],{"__ignoreMap":80},[84,90892,90893,90895,90897],{"class":86,"line":87},[84,90894,91],{"class":90},[84,90896,95],{"class":94},[84,90898,102],{"class":90},[84,90900,90901,90903,90905],{"class":86,"line":105},[84,90902,418],{"class":108},[84,90904,1870],{"class":108},[84,90906,175],{"class":90},[84,90908,90909,90911],{"class":86,"line":122},[84,90910,1896],{"class":98},[84,90912,1307],{"class":90},[84,90914,90915,90917],{"class":86,"line":129},[84,90916,1903],{"class":108},[84,90918,175],{"class":90},[84,90920,90922,90924,90926,90928],{"class":90921,"line":154},[86,10151],[84,90923,7387],{"class":90},[84,90925,42215],{"class":118},[84,90927,754],{"class":90},[84,90929,42221],{"class":13481},[84,90931,90932],{"class":86,"line":159},[84,90933,19195],{"class":90},[84,90935,90936],{"class":86,"line":178},[84,90937,1941],{"class":90},[84,90939,90940],{"class":86,"line":190},[84,90941,18973],{"class":90},[84,90943,90944,90946,90948],{"class":86,"line":196},[84,90945,274],{"class":90},[84,90947,95],{"class":94},[84,90949,102],{"class":90},[84,90951,90952],{"class":86,"line":201},[84,90953,126],{"emptyLinePlaceholder":125},[84,90955,90956,90958,90960],{"class":86,"line":217},[84,90957,91],{"class":90},[84,90959,291],{"class":94},[84,90961,102],{"class":90},[84,90963,90964,90966,90968,90970,90972,90974,90976,90978],{"class":86,"line":227},[84,90965,299],{"class":90},[84,90967,302],{"class":94},[84,90969,305],{"class":98},[84,90971,184],{"class":90},[84,90973,42254],{"class":118},[84,90975,42257],{"class":90},[84,90977,302],{"class":94},[84,90979,102],{"class":90},[84,90981,90982,90984,90986,90988,90990,90992,90994,90996],{"class":86,"line":232},[84,90983,299],{"class":90},[84,90985,302],{"class":94},[84,90987,305],{"class":98},[84,90989,184],{"class":90},[84,90991,42274],{"class":118},[84,90993,42277],{"class":90},[84,90995,302],{"class":94},[84,90997,102],{"class":90},[84,90999,91000,91002,91004,91006,91008,91010,91012,91014],{"class":86,"line":237},[84,91001,299],{"class":90},[84,91003,302],{"class":94},[84,91005,305],{"class":98},[84,91007,184],{"class":90},[84,91009,42294],{"class":118},[84,91011,42297],{"class":90},[84,91013,302],{"class":94},[84,91015,102],{"class":90},[84,91017,91018,91020,91022,91024,91026,91028,91030,91032],{"class":86,"line":253},[84,91019,299],{"class":90},[84,91021,302],{"class":94},[84,91023,305],{"class":98},[84,91025,184],{"class":90},[84,91027,42314],{"class":118},[84,91029,42317],{"class":90},[84,91031,302],{"class":94},[84,91033,102],{"class":90},[84,91035,91036],{"class":86,"line":266},[84,91037,126],{"emptyLinePlaceholder":125},[84,91039,91041,91043,91045,91047,91049,91051,91053,91055],{"class":91040,"line":271},[86,10151],[84,91042,299],{"class":90},[84,91044,15],{"class":94},[84,91046,344],{"class":98},[84,91048,184],{"class":90},[84,91050,42339],{"class":118},[84,91052,42342],{"class":90},[84,91054,15],{"class":94},[84,91056,102],{"class":90},[84,91058,91060,91062,91064,91066,91068,91070,91072,91074],{"class":91059,"line":281},[86,10151],[84,91061,299],{"class":90},[84,91063,15],{"class":94},[84,91065,1673],{"class":98},[84,91067,184],{"class":90},[84,91069,42360],{"class":118},[84,91071,42363],{"class":90},[84,91073,15],{"class":94},[84,91075,102],{"class":90},[84,91077,91079,91081,91083,91085,91087,91089,91091,91093],{"class":91078,"line":286},[86,10151],[84,91080,299],{"class":90},[84,91082,15],{"class":94},[84,91084,1673],{"class":98},[84,91086,184],{"class":90},[84,91088,42381],{"class":118},[84,91090,42384],{"class":90},[84,91092,15],{"class":94},[84,91094,102],{"class":90},[84,91096,91098,91100,91102,91104,91106,91108],{"class":91097,"line":296},[86,10151],[84,91099,299],{"class":90},[84,91101,15],{"class":94},[84,91103,1753],{"class":98},[84,91105,42400],{"class":90},[84,91107,15],{"class":94},[84,91109,102],{"class":90},[84,91111,91112,91114,91116],{"class":86,"line":315},[84,91113,274],{"class":90},[84,91115,291],{"class":94},[84,91117,102],{"class":90},[34,91119,784],{"id":783},[1074,91121,42651,91122,42654,91124],{"id":42650},[22,91123,41000],{},[22,91125,8299],{},[15,91127,25589],{},[74,91129,91131],{"className":76,"code":42661,"filename":10092,"highlights":91130,"language":79,"meta":80,"style":80},[105],[22,91132,91133,91155,91160],{"__ignoreMap":80},[84,91134,91135,91137,91139,91141,91143,91145,91147,91149,91151,91153],{"class":86,"line":87},[84,91136,91],{"class":90},[84,91138,4978],{"class":94},[84,91140,344],{"class":108},[84,91142,184],{"class":90},[84,91144,1678],{"class":118},[84,91146,42679],{"class":90},[84,91148,1678],{"class":118},[84,91150,42684],{"class":90},[84,91152,4978],{"class":94},[84,91154,102],{"class":90},[84,91156,91158],{"class":91157,"line":105},[86,10151],[84,91159,42694],{"class":13481},[84,91161,91162,91164,91166,91168,91170,91172],{"class":86,"line":122},[84,91163,91],{"class":90},[84,91165,4978],{"class":94},[84,91167,1753],{"class":108},[84,91169,42705],{"class":90},[84,91171,4978],{"class":94},[84,91173,102],{"class":90},[823,91175,91176],{},[15,91177,18597,91178,41716,91180,42719,91182,764],{},[22,91179,41000],{},[958,91181,42718],{},[22,91183,8299],{},[1074,91185,13343,91186,42727],{"id":42724},[22,91187,8462],{},[15,91189,42730,91190,42733,91192,754,91194,42740,91196,764],{},[22,91191,8462],{},[4070,91193,42736],{},[958,91195,42739],{},[22,91197,8299],{},[1074,91199,42746,91200,42749],{"id":42745},[22,91201,8299],{},[15,91203,42752,91204,42755,91206,42759,91208,42762],{},[22,91205,8299],{},[958,91207,42758],{},[22,91209,8462],{},[34,91211,18395],{"id":18394},[737,91213,91214,91222,91228],{},[740,91215,91216,42773,91220,42777],{},[958,91217,91218],{},[22,91219,8299],{},[958,91221,42776],{},[740,91223,91224,42785],{},[958,91225,91226],{},[22,91227,42784],{},[740,91229,91230,42792],{},[958,91231,91232],{},[22,91233,8462],{},[823,91235,91236],{},[15,91237,42797,91238],{},[958,91239,42800],{},[835,91241,42803],{},{"title":80,"searchDepth":105,"depth":105,"links":91243},[91244,91249,91250,91251,91254,91255,91260],{"id":41057,"depth":105,"text":41058,"children":91245},[91246,91247,91248],{"id":8299,"depth":122,"text":8299},{"id":41108,"depth":122,"text":42810},{"id":8462,"depth":122,"text":8462},{"id":41180,"depth":105,"text":41181},{"id":41219,"depth":105,"text":42814},{"id":41731,"depth":105,"text":42816,"children":91252},[91253],{"id":42119,"depth":122,"text":42120},{"id":42150,"depth":105,"text":42820},{"id":783,"depth":105,"text":784,"children":91256},[91257,91258,91259],{"id":42650,"depth":122,"text":42824},{"id":42724,"depth":122,"text":42826},{"id":42745,"depth":122,"text":42828},{"id":18394,"depth":105,"text":18395},{"updatedAt":42835,"coverCaption":42836,"author":868,"keywords":91262},[870,8299,41000,8462,42838,42839,873,1782],[91264],{"headline":42843,"author":91265,"datePublished":42835,"@type":880},{"name":868,"@type":879},{"title":40990,"description":42833},[91268,91269,91270,91271],{"tag":21297,"color":21298},{"tag":42850,"color":42851},{"tag":22594,"color":22595},{"tag":894,"color":895},{"id":42856,"title":42857,"body":91273,"cover":46223,"coverAlt":42857,"date":46224,"description":46225,"draft":852,"extension":853,"lab":882,"locale":864,"meta":94443,"navigation":125,"path":46230,"schemaOrg":94445,"seo":94448,"series":21291,"seriesDescription":21292,"seriesOrder":87,"seriesTitle":21293,"slug":882,"stem":46236,"tags":94449,"__hash__":46244},{"type":8,"value":91274,"toc":94425},[91275,91277,91285,91291,91293,91295,91337,91345,91351,91353,91361,91468,91581,91585,91591,91593,91599,91691,91789,91793,91795,91797,91805,91937,92077,92083,92087,92089,92093,92097,92191,92299,92303,92307,92309,92317,92423,92535,92541,92545,92547,92663,92799,92809,92813,92815,92907,93005,93007,93011,93013,93105,93203,93209,93213,93215,93356,93511,93515,93519,93523,93629,93741,93743,93747,93749,93875,93989,93993,93997,93999,94065,94137,94139,94143,94145,94211,94283,94285,94287,94289,94369,94401,94403,94405,94409,94411,94419,94423],[11,91276,42863],{"id":42862},[15,91278,42866,91279,42870,91281,42874,91283,42878],{},[958,91280,42869],{},[22,91282,42873],{},[958,91284,42877],{},[15,91286,42881,91287,42885,91289,42889],{},[958,91288,42884],{},[958,91290,42888],{},[34,91292,13902],{"id":13901},[15,91294,42894],{},[737,91296,91297,91301,91305,91309,91313,91317,91321,91325,91329,91333],{},[740,91298,91299],{},[13911,91300,40990],{"href":42901},[740,91302,91303],{},[13911,91304,37640],{"href":42906},[740,91306,91307],{},[13911,91308,34659],{"href":42911},[740,91310,91311],{},[13911,91312,28806],{"href":42916},[740,91314,91315],{},[13911,91316,31634],{"href":42921},[740,91318,91319],{},[13911,91320,25276],{"href":42926},[740,91322,91323],{},[13911,91324,26552],{"href":42931},[740,91326,91327],{},[13911,91328,22601],{"href":42936},[740,91330,91331],{},[13911,91332,21308],{"href":42941},[740,91334,91335],{},[13911,91336,18498],{"href":42946},[34,91338,91339,754,91341,754,91343],{"id":42949},[22,91340,8299],{},[22,91342,41113],{},[22,91344,41000],{},[15,91346,42958,91347,42962,91349,764],{},[958,91348,42961],{},[958,91350,41078],{},[15,91352,42967],{},[737,91354,91355,91357,91359],{},[740,91356,42972],{},[740,91358,42975],{},[740,91360,42978],{},[74,91362,91364],{"className":76,"code":42981,"filename":873,"highlights":91363,"language":79,"meta":80,"style":80},[190,196],[22,91365,91366,91376,91386,91390,91406,91414,91418,91426,91445,91460],{"__ignoreMap":80},[84,91367,91368,91370,91372,91374],{"class":86,"line":87},[84,91369,91],{"class":90},[84,91371,95],{"class":94},[84,91373,99],{"class":98},[84,91375,102],{"class":90},[84,91377,91378,91380,91382,91384],{"class":86,"line":105},[84,91379,109],{"class":108},[84,91381,112],{"class":90},[84,91383,115],{"class":108},[84,91385,119],{"class":118},[84,91387,91388],{"class":86,"line":122},[84,91389,126],{"emptyLinePlaceholder":125},[84,91391,91392,91394,91396,91398,91400,91402,91404],{"class":86,"line":129},[84,91393,132],{"class":108},[84,91395,43015],{"class":135},[84,91397,139],{"class":108},[84,91399,142],{"class":98},[84,91401,145],{"class":90},[84,91403,2938],{"class":135},[84,91405,151],{"class":90},[84,91407,91408,91410,91412],{"class":86,"line":154},[84,91409,274],{"class":90},[84,91411,95],{"class":94},[84,91413,102],{"class":90},[84,91415,91416],{"class":86,"line":159},[84,91417,126],{"emptyLinePlaceholder":125},[84,91419,91420,91422,91424],{"class":86,"line":178},[84,91421,91],{"class":90},[84,91423,291],{"class":94},[84,91425,102],{"class":90},[84,91427,91429,91431,91433,91435,91437,91439,91441,91443],{"class":91428,"line":190},[86,10151],[84,91430,299],{"class":90},[84,91432,15],{"class":94},[84,91434,344],{"class":98},[84,91436,184],{"class":90},[84,91438,43059],{"class":118},[84,91440,43062],{"class":90},[84,91442,15],{"class":94},[84,91444,102],{"class":90},[84,91446,91448,91450,91452,91454,91456,91458],{"class":91447,"line":196},[86,10151],[84,91449,299],{"class":90},[84,91451,15],{"class":94},[84,91453,1753],{"class":98},[84,91455,43078],{"class":90},[84,91457,15],{"class":94},[84,91459,102],{"class":90},[84,91461,91462,91464,91466],{"class":86,"line":201},[84,91463,274],{"class":90},[84,91465,291],{"class":94},[84,91467,102],{"class":90},[74,91469,91471],{"className":76,"code":43093,"filename":1782,"highlights":91470,"language":79,"meta":80,"style":80},[227,232],[22,91472,91473,91481,91489,91495,91501,91507,91511,91515,91519,91527,91531,91539,91558,91573],{"__ignoreMap":80},[84,91474,91475,91477,91479],{"class":86,"line":87},[84,91476,91],{"class":90},[84,91478,95],{"class":94},[84,91480,102],{"class":90},[84,91482,91483,91485,91487],{"class":86,"line":105},[84,91484,418],{"class":108},[84,91486,1870],{"class":108},[84,91488,175],{"class":90},[84,91490,91491,91493],{"class":86,"line":122},[84,91492,1896],{"class":98},[84,91494,1307],{"class":90},[84,91496,91497,91499],{"class":86,"line":129},[84,91498,1903],{"class":108},[84,91500,175],{"class":90},[84,91502,91503,91505],{"class":86,"line":154},[84,91504,43129],{"class":90},[84,91506,2872],{"class":135},[84,91508,91509],{"class":86,"line":159},[84,91510,1936],{"class":90},[84,91512,91513],{"class":86,"line":178},[84,91514,485],{"class":90},[84,91516,91517],{"class":86,"line":190},[84,91518,193],{"class":90},[84,91520,91521,91523,91525],{"class":86,"line":196},[84,91522,274],{"class":90},[84,91524,95],{"class":94},[84,91526,102],{"class":90},[84,91528,91529],{"class":86,"line":201},[84,91530,126],{"emptyLinePlaceholder":125},[84,91532,91533,91535,91537],{"class":86,"line":217},[84,91534,91],{"class":90},[84,91536,291],{"class":94},[84,91538,102],{"class":90},[84,91540,91542,91544,91546,91548,91550,91552,91554,91556],{"class":91541,"line":227},[86,10151],[84,91543,299],{"class":90},[84,91545,15],{"class":94},[84,91547,344],{"class":98},[84,91549,184],{"class":90},[84,91551,43059],{"class":118},[84,91553,43062],{"class":90},[84,91555,15],{"class":94},[84,91557,102],{"class":90},[84,91559,91561,91563,91565,91567,91569,91571],{"class":91560,"line":232},[86,10151],[84,91562,299],{"class":90},[84,91564,15],{"class":94},[84,91566,1753],{"class":98},[84,91568,43078],{"class":90},[84,91570,15],{"class":94},[84,91572,102],{"class":90},[84,91574,91575,91577,91579],{"class":86,"line":237},[84,91576,274],{"class":90},[84,91578,291],{"class":94},[84,91580,102],{"class":90},[34,91582,91583],{"id":8462},[22,91584,8462],{},[15,91586,43212,91587,43215,91589,764],{},[22,91588,41044],{},[958,91590,43218],{},[15,91592,42967],{},[737,91594,91595,91597],{},[740,91596,43225],{},[740,91598,43228],{},[74,91600,91602],{"className":76,"code":43231,"filename":873,"highlights":91601,"language":79,"meta":80,"style":80},[190],[22,91603,91604,91614,91624,91628,91644,91652,91656,91664,91683],{"__ignoreMap":80},[84,91605,91606,91608,91610,91612],{"class":86,"line":87},[84,91607,91],{"class":90},[84,91609,95],{"class":94},[84,91611,99],{"class":98},[84,91613,102],{"class":90},[84,91615,91616,91618,91620,91622],{"class":86,"line":105},[84,91617,109],{"class":108},[84,91619,112],{"class":90},[84,91621,115],{"class":108},[84,91623,119],{"class":118},[84,91625,91626],{"class":86,"line":122},[84,91627,43259],{"class":90},[84,91629,91630,91632,91634,91636,91638,91640,91642],{"class":86,"line":129},[84,91631,132],{"class":108},[84,91633,43266],{"class":135},[84,91635,139],{"class":108},[84,91637,142],{"class":98},[84,91639,145],{"class":90},[84,91641,2938],{"class":135},[84,91643,151],{"class":90},[84,91645,91646,91648,91650],{"class":86,"line":154},[84,91647,274],{"class":90},[84,91649,95],{"class":94},[84,91651,102],{"class":90},[84,91653,91654],{"class":86,"line":159},[84,91655,126],{"emptyLinePlaceholder":125},[84,91657,91658,91660,91662],{"class":86,"line":178},[84,91659,91],{"class":90},[84,91661,291],{"class":94},[84,91663,102],{"class":90},[84,91665,91667,91669,91671,91673,91675,91677,91679,91681],{"class":91666,"line":190},[86,10151],[84,91668,299],{"class":90},[84,91670,15],{"class":94},[84,91672,41852],{"class":98},[84,91674,184],{"class":90},[84,91676,43310],{"class":118},[84,91678,43313],{"class":90},[84,91680,15],{"class":94},[84,91682,102],{"class":90},[84,91684,91685,91687,91689],{"class":86,"line":196},[84,91686,274],{"class":90},[84,91688,291],{"class":94},[84,91690,102],{"class":90},[74,91692,91694],{"className":76,"code":43328,"filename":1782,"highlights":91693,"language":79,"meta":80,"style":80},[227],[22,91695,91696,91704,91712,91718,91724,91730,91734,91738,91742,91750,91754,91762,91781],{"__ignoreMap":80},[84,91697,91698,91700,91702],{"class":86,"line":87},[84,91699,91],{"class":90},[84,91701,95],{"class":94},[84,91703,102],{"class":90},[84,91705,91706,91708,91710],{"class":86,"line":105},[84,91707,418],{"class":108},[84,91709,1870],{"class":108},[84,91711,175],{"class":90},[84,91713,91714,91716],{"class":86,"line":122},[84,91715,1896],{"class":98},[84,91717,1307],{"class":90},[84,91719,91720,91722],{"class":86,"line":129},[84,91721,1903],{"class":108},[84,91723,175],{"class":90},[84,91725,91726,91728],{"class":86,"line":154},[84,91727,43364],{"class":90},[84,91729,2872],{"class":135},[84,91731,91732],{"class":86,"line":159},[84,91733,1936],{"class":90},[84,91735,91736],{"class":86,"line":178},[84,91737,485],{"class":90},[84,91739,91740],{"class":86,"line":190},[84,91741,193],{"class":90},[84,91743,91744,91746,91748],{"class":86,"line":196},[84,91745,274],{"class":90},[84,91747,95],{"class":94},[84,91749,102],{"class":90},[84,91751,91752],{"class":86,"line":201},[84,91753,126],{"emptyLinePlaceholder":125},[84,91755,91756,91758,91760],{"class":86,"line":217},[84,91757,91],{"class":90},[84,91759,291],{"class":94},[84,91761,102],{"class":90},[84,91763,91765,91767,91769,91771,91773,91775,91777,91779],{"class":91764,"line":227},[86,10151],[84,91766,299],{"class":90},[84,91768,15],{"class":94},[84,91770,41852],{"class":98},[84,91772,184],{"class":90},[84,91774,43310],{"class":118},[84,91776,43313],{"class":90},[84,91778,15],{"class":94},[84,91780,102],{"class":90},[84,91782,91783,91785,91787],{"class":86,"line":232},[84,91784,274],{"class":90},[84,91786,291],{"class":94},[84,91788,102],{"class":90},[34,91790,91791],{"id":25577},[22,91792,25577],{},[15,91794,43432],{},[15,91796,43435],{},[823,91798,91799],{},[15,91800,91801,43442,91803,43446],{},[22,91802,25577],{},[958,91804,43445],{},[74,91806,91808],{"className":76,"code":43449,"filename":873,"highlights":91807,"language":79,"meta":80,"style":80},[217,227,232],[22,91809,91810,91820,91830,91834,91846,91858,91870,91874,91882,91886,91894,91915,91920,91929],{"__ignoreMap":80},[84,91811,91812,91814,91816,91818],{"class":86,"line":87},[84,91813,91],{"class":90},[84,91815,95],{"class":94},[84,91817,99],{"class":98},[84,91819,102],{"class":90},[84,91821,91822,91824,91826,91828],{"class":86,"line":105},[84,91823,109],{"class":108},[84,91825,112],{"class":90},[84,91827,115],{"class":108},[84,91829,119],{"class":118},[84,91831,91832],{"class":86,"line":122},[84,91833,43259],{"class":90},[84,91835,91836,91838,91840,91842,91844],{"class":86,"line":129},[84,91837,132],{"class":108},[84,91839,39020],{"class":135},[84,91841,139],{"class":108},[84,91843,142],{"class":98},[84,91845,2894],{"class":90},[84,91847,91848,91850,91852,91854,91856],{"class":86,"line":154},[84,91849,2899],{"class":90},[84,91851,2862],{"class":135},[84,91853,23323],{"class":90},[84,91855,37815],{"class":118},[84,91857,2921],{"class":90},[84,91859,91860,91862,91864,91866,91868],{"class":86,"line":159},[84,91861,2899],{"class":90},[84,91863,2928],{"class":135},[84,91865,23323],{"class":90},[84,91867,37820],{"class":118},[84,91869,2968],{"class":90},[84,91871,91872],{"class":86,"line":178},[84,91873,2973],{"class":90},[84,91875,91876,91878,91880],{"class":86,"line":190},[84,91877,274],{"class":90},[84,91879,95],{"class":94},[84,91881,102],{"class":90},[84,91883,91884],{"class":86,"line":196},[84,91885,126],{"emptyLinePlaceholder":125},[84,91887,91888,91890,91892],{"class":86,"line":201},[84,91889,91],{"class":90},[84,91891,291],{"class":94},[84,91893,102],{"class":90},[84,91895,91897,91899,91901,91903,91905,91907,91909,91911,91913],{"class":91896,"line":217},[86,10151],[84,91898,299],{"class":90},[84,91900,740],{"class":94},[84,91902,13525],{"class":98},[84,91904,184],{"class":90},[84,91906,43550],{"class":118},[84,91908,5092],{"class":98},[84,91910,184],{"class":90},[84,91912,30719],{"class":118},[84,91914,102],{"class":90},[84,91916,91918],{"class":91917,"line":227},[86,10151],[84,91919,43564],{"class":90},[84,91921,91923,91925,91927],{"class":91922,"line":232},[86,10151],[84,91924,324],{"class":90},[84,91926,740],{"class":94},[84,91928,102],{"class":90},[84,91930,91931,91933,91935],{"class":86,"line":237},[84,91932,274],{"class":90},[84,91934,291],{"class":94},[84,91936,102],{"class":90},[74,91938,91940],{"className":76,"code":43584,"filename":1782,"highlights":91939,"language":79,"meta":80,"style":80},[253,266,271],[22,91941,91942,91950,91958,91964,91970,91974,91986,91998,92002,92006,92010,92014,92022,92026,92034,92055,92060,92069],{"__ignoreMap":80},[84,91943,91944,91946,91948],{"class":86,"line":87},[84,91945,91],{"class":90},[84,91947,95],{"class":94},[84,91949,102],{"class":90},[84,91951,91952,91954,91956],{"class":86,"line":105},[84,91953,418],{"class":108},[84,91955,1870],{"class":108},[84,91957,175],{"class":90},[84,91959,91960,91962],{"class":86,"line":122},[84,91961,1896],{"class":98},[84,91963,1307],{"class":90},[84,91965,91966,91968],{"class":86,"line":129},[84,91967,1903],{"class":108},[84,91969,175],{"class":90},[84,91971,91972],{"class":86,"line":154},[84,91973,39215],{"class":90},[84,91975,91976,91978,91980,91982,91984],{"class":86,"line":159},[84,91977,3449],{"class":90},[84,91979,2862],{"class":135},[84,91981,23323],{"class":90},[84,91983,37815],{"class":118},[84,91985,2921],{"class":90},[84,91987,91988,91990,91992,91994,91996],{"class":86,"line":178},[84,91989,3449],{"class":90},[84,91991,2928],{"class":135},[84,91993,23323],{"class":90},[84,91995,37820],{"class":118},[84,91997,2968],{"class":90},[84,91999,92000],{"class":86,"line":190},[84,92001,3510],{"class":90},[84,92003,92004],{"class":86,"line":196},[84,92005,1936],{"class":90},[84,92007,92008],{"class":86,"line":201},[84,92009,485],{"class":90},[84,92011,92012],{"class":86,"line":217},[84,92013,193],{"class":90},[84,92015,92016,92018,92020],{"class":86,"line":227},[84,92017,274],{"class":90},[84,92019,95],{"class":94},[84,92021,102],{"class":90},[84,92023,92024],{"class":86,"line":232},[84,92025,126],{"emptyLinePlaceholder":125},[84,92027,92028,92030,92032],{"class":86,"line":237},[84,92029,91],{"class":90},[84,92031,291],{"class":94},[84,92033,102],{"class":90},[84,92035,92037,92039,92041,92043,92045,92047,92049,92051,92053],{"class":92036,"line":253},[86,10151],[84,92038,299],{"class":90},[84,92040,740],{"class":94},[84,92042,13525],{"class":98},[84,92044,184],{"class":90},[84,92046,43550],{"class":118},[84,92048,5092],{"class":98},[84,92050,184],{"class":90},[84,92052,30719],{"class":118},[84,92054,102],{"class":90},[84,92056,92058],{"class":92057,"line":266},[86,10151],[84,92059,43564],{"class":90},[84,92061,92063,92065,92067],{"class":92062,"line":271},[86,10151],[84,92064,324],{"class":90},[84,92066,740],{"class":94},[84,92068,102],{"class":90},[84,92070,92071,92073,92075],{"class":86,"line":281},[84,92072,274],{"class":90},[84,92074,291],{"class":94},[84,92076,102],{"class":90},[15,92078,92079,11716,92081,43730],{},[22,92080,2580],{},[958,92082,43729],{},[34,92084,92085],{"id":18692},[22,92086,18692],{},[15,92088,43737],{},[15,92090,8591,92091,43742],{},[22,92092,18692],{},[823,92094,92095],{},[15,92096,43747],{},[74,92098,92100],{"className":76,"code":43750,"filename":873,"highlights":92099,"language":79,"meta":80,"style":80},[190],[22,92101,92102,92112,92122,92126,92142,92150,92154,92162,92183],{"__ignoreMap":80},[84,92103,92104,92106,92108,92110],{"class":86,"line":87},[84,92105,91],{"class":90},[84,92107,95],{"class":94},[84,92109,99],{"class":98},[84,92111,102],{"class":90},[84,92113,92114,92116,92118,92120],{"class":86,"line":105},[84,92115,109],{"class":108},[84,92117,112],{"class":90},[84,92119,115],{"class":108},[84,92121,119],{"class":118},[84,92123,92124],{"class":86,"line":122},[84,92125,126],{"emptyLinePlaceholder":125},[84,92127,92128,92130,92132,92134,92136,92138,92140],{"class":86,"line":129},[84,92129,132],{"class":108},[84,92131,43784],{"class":135},[84,92133,139],{"class":108},[84,92135,142],{"class":98},[84,92137,145],{"class":90},[84,92139,43793],{"class":118},[84,92141,151],{"class":90},[84,92143,92144,92146,92148],{"class":86,"line":154},[84,92145,274],{"class":90},[84,92147,95],{"class":94},[84,92149,102],{"class":90},[84,92151,92152],{"class":86,"line":159},[84,92153,126],{"emptyLinePlaceholder":125},[84,92155,92156,92158,92160],{"class":86,"line":178},[84,92157,91],{"class":90},[84,92159,291],{"class":94},[84,92161,102],{"class":90},[84,92163,92165,92167,92169,92171,92173,92175,92177,92179,92181],{"class":92164,"line":190},[86,10151],[84,92166,299],{"class":90},[84,92168,34893],{"class":94},[84,92170,43825],{"class":98},[84,92172,184],{"class":90},[84,92174,43830],{"class":118},[84,92176,43833],{"class":98},[84,92178,184],{"class":90},[84,92180,43838],{"class":118},[84,92182,5100],{"class":90},[84,92184,92185,92187,92189],{"class":86,"line":196},[84,92186,274],{"class":90},[84,92188,291],{"class":94},[84,92190,102],{"class":90},[74,92192,92194],{"className":76,"code":43851,"filename":1782,"highlights":92193,"language":79,"meta":80,"style":80},[232],[22,92195,92196,92204,92212,92218,92224,92232,92238,92242,92246,92250,92258,92262,92270,92291],{"__ignoreMap":80},[84,92197,92198,92200,92202],{"class":86,"line":87},[84,92199,91],{"class":90},[84,92201,95],{"class":94},[84,92203,102],{"class":90},[84,92205,92206,92208,92210],{"class":86,"line":105},[84,92207,418],{"class":108},[84,92209,1870],{"class":108},[84,92211,175],{"class":90},[84,92213,92214,92216],{"class":86,"line":122},[84,92215,1896],{"class":98},[84,92217,1307],{"class":90},[84,92219,92220,92222],{"class":86,"line":129},[84,92221,1903],{"class":108},[84,92223,175],{"class":90},[84,92225,92226,92228,92230],{"class":86,"line":154},[84,92227,43887],{"class":90},[84,92229,43890],{"class":118},[84,92231,1887],{"class":90},[84,92233,92234,92236],{"class":86,"line":159},[84,92235,43897],{"class":90},[84,92237,43900],{"class":118},[84,92239,92240],{"class":86,"line":178},[84,92241,1936],{"class":90},[84,92243,92244],{"class":86,"line":190},[84,92245,485],{"class":90},[84,92247,92248],{"class":86,"line":196},[84,92249,193],{"class":90},[84,92251,92252,92254,92256],{"class":86,"line":201},[84,92253,274],{"class":90},[84,92255,95],{"class":94},[84,92257,102],{"class":90},[84,92259,92260],{"class":86,"line":217},[84,92261,126],{"emptyLinePlaceholder":125},[84,92263,92264,92266,92268],{"class":86,"line":227},[84,92265,91],{"class":90},[84,92267,291],{"class":94},[84,92269,102],{"class":90},[84,92271,92273,92275,92277,92279,92281,92283,92285,92287,92289],{"class":92272,"line":232},[86,10151],[84,92274,299],{"class":90},[84,92276,34893],{"class":94},[84,92278,43942],{"class":98},[84,92280,184],{"class":90},[84,92282,43830],{"class":118},[84,92284,43949],{"class":98},[84,92286,184],{"class":90},[84,92288,43954],{"class":118},[84,92290,5100],{"class":90},[84,92292,92293,92295,92297],{"class":86,"line":237},[84,92294,274],{"class":90},[84,92296,291],{"class":94},[84,92298,102],{"class":90},[34,92300,92301],{"id":18689},[22,92302,18689],{},[15,92304,43971,92305,43975],{},[958,92306,43974],{},[15,92308,43978],{},[737,92310,92311,92313,92315],{},[740,92312,31627],{},[740,92314,43985],{},[740,92316,43988],{},[74,92318,92320],{"className":76,"code":43991,"filename":873,"highlights":92319,"language":79,"meta":80,"style":80},[190],[22,92321,92322,92332,92342,92346,92362,92370,92374,92382,92403,92415],{"__ignoreMap":80},[84,92323,92324,92326,92328,92330],{"class":86,"line":87},[84,92325,91],{"class":90},[84,92327,95],{"class":94},[84,92329,99],{"class":98},[84,92331,102],{"class":90},[84,92333,92334,92336,92338,92340],{"class":86,"line":105},[84,92335,109],{"class":108},[84,92337,112],{"class":90},[84,92339,115],{"class":108},[84,92341,119],{"class":118},[84,92343,92344],{"class":86,"line":122},[84,92345,126],{"emptyLinePlaceholder":125},[84,92347,92348,92350,92352,92354,92356,92358,92360],{"class":86,"line":129},[84,92349,132],{"class":108},[84,92351,44025],{"class":135},[84,92353,139],{"class":108},[84,92355,142],{"class":98},[84,92357,145],{"class":90},[84,92359,1288],{"class":118},[84,92361,151],{"class":90},[84,92363,92364,92366,92368],{"class":86,"line":154},[84,92365,274],{"class":90},[84,92367,95],{"class":94},[84,92369,102],{"class":90},[84,92371,92372],{"class":86,"line":159},[84,92373,126],{"emptyLinePlaceholder":125},[84,92375,92376,92378,92380],{"class":86,"line":178},[84,92377,91],{"class":90},[84,92379,291],{"class":94},[84,92381,102],{"class":90},[84,92383,92385,92387,92389,92391,92393,92395,92397,92399,92401],{"class":92384,"line":190},[86,10151],[84,92386,299],{"class":90},[84,92388,18759],{"class":94},[84,92390,24454],{"class":98},[84,92392,184],{"class":90},[84,92394,44069],{"class":118},[84,92396,32599],{"class":98},[84,92398,184],{"class":90},[84,92400,44076],{"class":118},[84,92402,5100],{"class":90},[84,92404,92405,92407,92409,92411,92413],{"class":86,"line":196},[84,92406,299],{"class":90},[84,92408,15],{"class":94},[84,92410,44087],{"class":90},[84,92412,15],{"class":94},[84,92414,102],{"class":90},[84,92416,92417,92419,92421],{"class":86,"line":201},[84,92418,274],{"class":90},[84,92420,291],{"class":94},[84,92422,102],{"class":90},[74,92424,92426],{"className":76,"code":44102,"filename":1782,"highlights":92425,"language":79,"meta":80,"style":80},[227],[22,92427,92428,92436,92444,92450,92456,92462,92466,92470,92474,92482,92486,92494,92515,92527],{"__ignoreMap":80},[84,92429,92430,92432,92434],{"class":86,"line":87},[84,92431,91],{"class":90},[84,92433,95],{"class":94},[84,92435,102],{"class":90},[84,92437,92438,92440,92442],{"class":86,"line":105},[84,92439,418],{"class":108},[84,92441,1870],{"class":108},[84,92443,175],{"class":90},[84,92445,92446,92448],{"class":86,"line":122},[84,92447,1896],{"class":98},[84,92449,1307],{"class":90},[84,92451,92452,92454],{"class":86,"line":129},[84,92453,1903],{"class":108},[84,92455,175],{"class":90},[84,92457,92458,92460],{"class":86,"line":154},[84,92459,44138],{"class":90},[84,92461,1931],{"class":118},[84,92463,92464],{"class":86,"line":159},[84,92465,1936],{"class":90},[84,92467,92468],{"class":86,"line":178},[84,92469,485],{"class":90},[84,92471,92472],{"class":86,"line":190},[84,92473,193],{"class":90},[84,92475,92476,92478,92480],{"class":86,"line":196},[84,92477,274],{"class":90},[84,92479,95],{"class":94},[84,92481,102],{"class":90},[84,92483,92484],{"class":86,"line":201},[84,92485,126],{"emptyLinePlaceholder":125},[84,92487,92488,92490,92492],{"class":86,"line":217},[84,92489,91],{"class":90},[84,92491,291],{"class":94},[84,92493,102],{"class":90},[84,92495,92497,92499,92501,92503,92505,92507,92509,92511,92513],{"class":92496,"line":227},[86,10151],[84,92498,299],{"class":90},[84,92500,18759],{"class":94},[84,92502,24454],{"class":98},[84,92504,184],{"class":90},[84,92506,44069],{"class":118},[84,92508,32599],{"class":98},[84,92510,184],{"class":90},[84,92512,44076],{"class":118},[84,92514,5100],{"class":90},[84,92516,92517,92519,92521,92523,92525],{"class":86,"line":232},[84,92518,299],{"class":90},[84,92520,15],{"class":94},[84,92522,44087],{"class":90},[84,92524,15],{"class":94},[84,92526,102],{"class":90},[84,92528,92529,92531,92533],{"class":86,"line":237},[84,92530,274],{"class":90},[84,92532,291],{"class":94},[84,92534,102],{"class":90},[15,92536,44216,92537,28840,92539,44221],{},[22,92538,28916],{},[22,92540,28922],{},[34,92542,92543],{"id":18695},[22,92544,18695],{},[15,92546,44228],{},[74,92548,92550],{"className":76,"code":44231,"filename":873,"highlights":92549,"language":79,"meta":80,"style":80},[217],[22,92551,92552,92562,92572,92576,92592,92606,92612,92616,92624,92628,92636,92655],{"__ignoreMap":80},[84,92553,92554,92556,92558,92560],{"class":86,"line":87},[84,92555,91],{"class":90},[84,92557,95],{"class":94},[84,92559,99],{"class":98},[84,92561,102],{"class":90},[84,92563,92564,92566,92568,92570],{"class":86,"line":105},[84,92565,109],{"class":108},[84,92567,112],{"class":90},[84,92569,115],{"class":108},[84,92571,119],{"class":118},[84,92573,92574],{"class":86,"line":122},[84,92575,126],{"emptyLinePlaceholder":125},[84,92577,92578,92580,92582,92584,92586,92588,92590],{"class":86,"line":129},[84,92579,132],{"class":108},[84,92581,10133],{"class":135},[84,92583,139],{"class":108},[84,92585,142],{"class":98},[84,92587,145],{"class":90},[84,92589,4320],{"class":135},[84,92591,151],{"class":90},[84,92593,92594,92596,92598,92600,92602,92604],{"class":86,"line":154},[84,92595,132],{"class":108},[84,92597,44281],{"class":98},[84,92599,139],{"class":108},[84,92601,169],{"class":90},[84,92603,172],{"class":108},[84,92605,175],{"class":90},[84,92607,92608,92610],{"class":86,"line":159},[84,92609,10165],{"class":90},[84,92611,10168],{"class":108},[84,92613,92614],{"class":86,"line":178},[84,92615,193],{"class":90},[84,92617,92618,92620,92622],{"class":86,"line":190},[84,92619,274],{"class":90},[84,92621,95],{"class":94},[84,92623,102],{"class":90},[84,92625,92626],{"class":86,"line":196},[84,92627,126],{"emptyLinePlaceholder":125},[84,92629,92630,92632,92634],{"class":86,"line":201},[84,92631,91],{"class":90},[84,92633,291],{"class":94},[84,92635,102],{"class":90},[84,92637,92639,92641,92643,92645,92647,92649,92651,92653],{"class":92638,"line":217},[86,10151],[84,92640,299],{"class":90},[84,92642,302],{"class":94},[84,92644,44329],{"class":98},[84,92646,184],{"class":90},[84,92648,44334],{"class":118},[84,92650,44337],{"class":90},[84,92652,302],{"class":94},[84,92654,102],{"class":90},[84,92656,92657,92659,92661],{"class":86,"line":227},[84,92658,274],{"class":90},[84,92660,291],{"class":94},[84,92662,102],{"class":90},[74,92664,92666],{"className":76,"code":44352,"filename":1782,"highlights":92665,"language":79,"meta":80,"style":80},[271],[22,92667,92668,92676,92684,92690,92696,92702,92706,92710,92714,92720,92728,92732,92736,92740,92748,92752,92760,92779,92791],{"__ignoreMap":80},[84,92669,92670,92672,92674],{"class":86,"line":87},[84,92671,91],{"class":90},[84,92673,95],{"class":94},[84,92675,102],{"class":90},[84,92677,92678,92680,92682],{"class":86,"line":105},[84,92679,418],{"class":108},[84,92681,1870],{"class":108},[84,92683,175],{"class":90},[84,92685,92686,92688],{"class":86,"line":122},[84,92687,1896],{"class":98},[84,92689,1307],{"class":90},[84,92691,92692,92694],{"class":86,"line":129},[84,92693,1903],{"class":108},[84,92695,175],{"class":90},[84,92697,92698,92700],{"class":86,"line":154},[84,92699,32365],{"class":90},[84,92701,5467],{"class":135},[84,92703,92704],{"class":86,"line":159},[84,92705,1936],{"class":90},[84,92707,92708],{"class":86,"line":178},[84,92709,1941],{"class":90},[84,92711,92712],{"class":86,"line":190},[84,92713,1950],{"class":90},[84,92715,92716,92718],{"class":86,"line":196},[84,92717,44406],{"class":98},[84,92719,1307],{"class":90},[84,92721,92722,92724,92726],{"class":86,"line":201},[84,92723,2022],{"class":135},[84,92725,44415],{"class":90},[84,92727,10168],{"class":108},[84,92729,92730],{"class":86,"line":217},[84,92731,1936],{"class":90},[84,92733,92734],{"class":86,"line":227},[84,92735,485],{"class":90},[84,92737,92738],{"class":86,"line":232},[84,92739,193],{"class":90},[84,92741,92742,92744,92746],{"class":86,"line":237},[84,92743,274],{"class":90},[84,92745,95],{"class":94},[84,92747,102],{"class":90},[84,92749,92750],{"class":86,"line":253},[84,92751,126],{"emptyLinePlaceholder":125},[84,92753,92754,92756,92758],{"class":86,"line":266},[84,92755,91],{"class":90},[84,92757,291],{"class":94},[84,92759,102],{"class":90},[84,92761,92763,92765,92767,92769,92771,92773,92775,92777],{"class":92762,"line":271},[86,10151],[84,92764,299],{"class":90},[84,92766,302],{"class":94},[84,92768,44329],{"class":98},[84,92770,184],{"class":90},[84,92772,44334],{"class":118},[84,92774,44465],{"class":90},[84,92776,302],{"class":94},[84,92778,102],{"class":90},[84,92780,92781,92783,92785,92787,92789],{"class":86,"line":281},[84,92782,299],{"class":90},[84,92784,15],{"class":94},[84,92786,44478],{"class":90},[84,92788,15],{"class":94},[84,92790,102],{"class":90},[84,92792,92793,92795,92797],{"class":86,"line":286},[84,92794,274],{"class":90},[84,92796,291],{"class":94},[84,92798,102],{"class":90},[15,92800,44493,92801,1341,92803,754,92805,754,92807,44503],{},[958,92802,44496],{},[22,92804,31788],{},[22,92806,31785],{},[22,92808,31791],{},[34,92810,92811],{"id":25284},[22,92812,25284],{},[15,92814,44510],{},[74,92816,92818],{"className":76,"code":44513,"filename":873,"highlights":92817,"language":79,"meta":80,"style":80},[190],[22,92819,92820,92830,92840,92844,92860,92868,92872,92880,92899],{"__ignoreMap":80},[84,92821,92822,92824,92826,92828],{"class":86,"line":87},[84,92823,91],{"class":90},[84,92825,95],{"class":94},[84,92827,99],{"class":98},[84,92829,102],{"class":90},[84,92831,92832,92834,92836,92838],{"class":86,"line":105},[84,92833,109],{"class":108},[84,92835,112],{"class":90},[84,92837,115],{"class":108},[84,92839,119],{"class":118},[84,92841,92842],{"class":86,"line":122},[84,92843,126],{"emptyLinePlaceholder":125},[84,92845,92846,92848,92850,92852,92854,92856,92858],{"class":86,"line":129},[84,92847,132],{"class":108},[84,92849,23857],{"class":135},[84,92851,139],{"class":108},[84,92853,142],{"class":98},[84,92855,145],{"class":90},[84,92857,44555],{"class":118},[84,92859,151],{"class":90},[84,92861,92862,92864,92866],{"class":86,"line":154},[84,92863,274],{"class":90},[84,92865,95],{"class":94},[84,92867,102],{"class":90},[84,92869,92870],{"class":86,"line":159},[84,92871,126],{"emptyLinePlaceholder":125},[84,92873,92874,92876,92878],{"class":86,"line":178},[84,92875,91],{"class":90},[84,92877,291],{"class":94},[84,92879,102],{"class":90},[84,92881,92883,92885,92887,92889,92891,92893,92895,92897],{"class":92882,"line":190},[86,10151],[84,92884,299],{"class":90},[84,92886,4978],{"class":94},[84,92888,25375],{"class":98},[84,92890,184],{"class":90},[84,92892,44591],{"class":118},[84,92894,25387],{"class":90},[84,92896,4978],{"class":94},[84,92898,102],{"class":90},[84,92900,92901,92903,92905],{"class":86,"line":196},[84,92902,274],{"class":90},[84,92904,291],{"class":94},[84,92906,102],{"class":90},[74,92908,92910],{"className":76,"code":44608,"filename":1782,"highlights":92909,"language":79,"meta":80,"style":80},[227],[22,92911,92912,92920,92928,92934,92940,92946,92950,92954,92958,92966,92970,92978,92997],{"__ignoreMap":80},[84,92913,92914,92916,92918],{"class":86,"line":87},[84,92915,91],{"class":90},[84,92917,95],{"class":94},[84,92919,102],{"class":90},[84,92921,92922,92924,92926],{"class":86,"line":105},[84,92923,418],{"class":108},[84,92925,1870],{"class":108},[84,92927,175],{"class":90},[84,92929,92930,92932],{"class":86,"line":122},[84,92931,1896],{"class":98},[84,92933,1307],{"class":90},[84,92935,92936,92938],{"class":86,"line":129},[84,92937,1903],{"class":108},[84,92939,175],{"class":90},[84,92941,92942,92944],{"class":86,"line":154},[84,92943,23971],{"class":90},[84,92945,44646],{"class":118},[84,92947,92948],{"class":86,"line":159},[84,92949,1936],{"class":90},[84,92951,92952],{"class":86,"line":178},[84,92953,485],{"class":90},[84,92955,92956],{"class":86,"line":190},[84,92957,193],{"class":90},[84,92959,92960,92962,92964],{"class":86,"line":196},[84,92961,274],{"class":90},[84,92963,95],{"class":94},[84,92965,102],{"class":90},[84,92967,92968],{"class":86,"line":201},[84,92969,126],{"emptyLinePlaceholder":125},[84,92971,92972,92974,92976],{"class":86,"line":217},[84,92973,91],{"class":90},[84,92975,291],{"class":94},[84,92977,102],{"class":90},[84,92979,92981,92983,92985,92987,92989,92991,92993,92995],{"class":92980,"line":227},[86,10151],[84,92982,299],{"class":90},[84,92984,4978],{"class":94},[84,92986,25375],{"class":98},[84,92988,184],{"class":90},[84,92990,44591],{"class":118},[84,92992,25387],{"class":90},[84,92994,4978],{"class":94},[84,92996,102],{"class":90},[84,92998,92999,93001,93003],{"class":86,"line":232},[84,93000,274],{"class":90},[84,93002,291],{"class":94},[84,93004,102],{"class":90},[15,93006,44708],{},[34,93008,93009],{"id":25287},[22,93010,25287],{},[15,93012,44715],{},[74,93014,93016],{"className":76,"code":44718,"filename":873,"highlights":93015,"language":79,"meta":80,"style":80},[190],[22,93017,93018,93028,93038,93042,93058,93066,93070,93078,93097],{"__ignoreMap":80},[84,93019,93020,93022,93024,93026],{"class":86,"line":87},[84,93021,91],{"class":90},[84,93023,95],{"class":94},[84,93025,99],{"class":98},[84,93027,102],{"class":90},[84,93029,93030,93032,93034,93036],{"class":86,"line":105},[84,93031,109],{"class":108},[84,93033,112],{"class":90},[84,93035,115],{"class":108},[84,93037,119],{"class":118},[84,93039,93040],{"class":86,"line":122},[84,93041,126],{"emptyLinePlaceholder":125},[84,93043,93044,93046,93048,93050,93052,93054,93056],{"class":86,"line":129},[84,93045,132],{"class":108},[84,93047,44752],{"class":135},[84,93049,139],{"class":108},[84,93051,142],{"class":98},[84,93053,145],{"class":90},[84,93055,44761],{"class":118},[84,93057,151],{"class":90},[84,93059,93060,93062,93064],{"class":86,"line":154},[84,93061,274],{"class":90},[84,93063,95],{"class":94},[84,93065,102],{"class":90},[84,93067,93068],{"class":86,"line":159},[84,93069,126],{"emptyLinePlaceholder":125},[84,93071,93072,93074,93076],{"class":86,"line":178},[84,93073,91],{"class":90},[84,93075,291],{"class":94},[84,93077,102],{"class":90},[84,93079,93081,93083,93085,93087,93089,93091,93093,93095],{"class":93080,"line":190},[86,10151],[84,93082,299],{"class":90},[84,93084,4978],{"class":94},[84,93086,25445],{"class":98},[84,93088,184],{"class":90},[84,93090,44797],{"class":118},[84,93092,25387],{"class":90},[84,93094,4978],{"class":94},[84,93096,102],{"class":90},[84,93098,93099,93101,93103],{"class":86,"line":196},[84,93100,274],{"class":90},[84,93102,291],{"class":94},[84,93104,102],{"class":90},[74,93106,93108],{"className":76,"code":44814,"filename":1782,"highlights":93107,"language":79,"meta":80,"style":80},[227],[22,93109,93110,93118,93126,93132,93138,93144,93148,93152,93156,93164,93168,93176,93195],{"__ignoreMap":80},[84,93111,93112,93114,93116],{"class":86,"line":87},[84,93113,91],{"class":90},[84,93115,95],{"class":94},[84,93117,102],{"class":90},[84,93119,93120,93122,93124],{"class":86,"line":105},[84,93121,418],{"class":108},[84,93123,1870],{"class":108},[84,93125,175],{"class":90},[84,93127,93128,93130],{"class":86,"line":122},[84,93129,1896],{"class":98},[84,93131,1307],{"class":90},[84,93133,93134,93136],{"class":86,"line":129},[84,93135,1903],{"class":108},[84,93137,175],{"class":90},[84,93139,93140,93142],{"class":86,"line":154},[84,93141,44850],{"class":90},[84,93143,44853],{"class":118},[84,93145,93146],{"class":86,"line":159},[84,93147,1936],{"class":90},[84,93149,93150],{"class":86,"line":178},[84,93151,485],{"class":90},[84,93153,93154],{"class":86,"line":190},[84,93155,193],{"class":90},[84,93157,93158,93160,93162],{"class":86,"line":196},[84,93159,274],{"class":90},[84,93161,95],{"class":94},[84,93163,102],{"class":90},[84,93165,93166],{"class":86,"line":201},[84,93167,126],{"emptyLinePlaceholder":125},[84,93169,93170,93172,93174],{"class":86,"line":217},[84,93171,91],{"class":90},[84,93173,291],{"class":94},[84,93175,102],{"class":90},[84,93177,93179,93181,93183,93185,93187,93189,93191,93193],{"class":93178,"line":227},[86,10151],[84,93180,299],{"class":90},[84,93182,4978],{"class":94},[84,93184,25445],{"class":98},[84,93186,184],{"class":90},[84,93188,44797],{"class":118},[84,93190,25387],{"class":90},[84,93192,4978],{"class":94},[84,93194,102],{"class":90},[84,93196,93197,93199,93201],{"class":86,"line":232},[84,93198,274],{"class":90},[84,93200,291],{"class":94},[84,93202,102],{"class":90},[823,93204,93205],{},[15,93206,44917,93207,44921],{},[958,93208,44920],{},[34,93210,93211],{"id":26560},[22,93212,26560],{},[15,93214,44928],{},[74,93216,93218],{"className":76,"code":44931,"filename":873,"highlights":93217,"language":79,"meta":80,"style":80},[159,201],[22,93219,93220,93230,93238,93242,93250,93258,93273,93285,93293,93305,93320,93332,93340,93348],{"__ignoreMap":80},[84,93221,93222,93224,93226,93228],{"class":86,"line":87},[84,93223,91],{"class":90},[84,93225,95],{"class":94},[84,93227,99],{"class":98},[84,93229,102],{"class":90},[84,93231,93232,93234,93236],{"class":86,"line":105},[84,93233,274],{"class":90},[84,93235,95],{"class":94},[84,93237,102],{"class":90},[84,93239,93240],{"class":86,"line":122},[84,93241,126],{"emptyLinePlaceholder":125},[84,93243,93244,93246,93248],{"class":86,"line":129},[84,93245,91],{"class":90},[84,93247,291],{"class":94},[84,93249,102],{"class":90},[84,93251,93252,93254,93256],{"class":86,"line":154},[84,93253,299],{"class":90},[84,93255,44971],{"class":94},[84,93257,102],{"class":90},[84,93259,93261,93263,93265,93267,93269,93271],{"class":93260,"line":159},[86,10151],[84,93262,1642],{"class":90},[84,93264,291],{"class":94},[84,93266,26882],{"class":98},[84,93268,1203],{"class":90},[84,93270,4915],{"class":98},[84,93272,102],{"class":90},[84,93274,93275,93277,93279,93281,93283],{"class":86,"line":178},[84,93276,1691],{"class":90},[84,93278,11],{"class":94},[84,93280,44997],{"class":90},[84,93282,11],{"class":94},[84,93284,102],{"class":90},[84,93286,93287,93289,93291],{"class":86,"line":190},[84,93288,1734],{"class":90},[84,93290,291],{"class":94},[84,93292,102],{"class":90},[84,93294,93295,93297,93299,93301,93303],{"class":86,"line":196},[84,93296,1642],{"class":90},[84,93298,15],{"class":94},[84,93300,45018],{"class":90},[84,93302,15],{"class":94},[84,93304,102],{"class":90},[84,93306,93308,93310,93312,93314,93316,93318],{"class":93307,"line":201},[86,10151],[84,93309,1642],{"class":90},[84,93311,291],{"class":94},[84,93313,26882],{"class":98},[84,93315,1203],{"class":90},[84,93317,27272],{"class":98},[84,93319,102],{"class":90},[84,93321,93322,93324,93326,93328,93330],{"class":86,"line":217},[84,93323,1691],{"class":90},[84,93325,302],{"class":94},[84,93327,45046],{"class":90},[84,93329,302],{"class":94},[84,93331,102],{"class":90},[84,93333,93334,93336,93338],{"class":86,"line":227},[84,93335,1734],{"class":90},[84,93337,291],{"class":94},[84,93339,102],{"class":90},[84,93341,93342,93344,93346],{"class":86,"line":232},[84,93343,324],{"class":90},[84,93345,44971],{"class":94},[84,93347,102],{"class":90},[84,93349,93350,93352,93354],{"class":86,"line":237},[84,93351,274],{"class":90},[84,93353,291],{"class":94},[84,93355,102],{"class":90},[74,93357,93359],{"className":76,"code":45077,"filename":1782,"highlights":93358,"language":79,"meta":80,"style":80},[196,232],[22,93360,93361,93369,93377,93381,93385,93393,93397,93405,93413,93428,93440,93448,93460,93475,93487,93495,93503],{"__ignoreMap":80},[84,93362,93363,93365,93367],{"class":86,"line":87},[84,93364,91],{"class":90},[84,93366,95],{"class":94},[84,93368,102],{"class":90},[84,93370,93371,93373,93375],{"class":86,"line":105},[84,93372,418],{"class":108},[84,93374,1870],{"class":108},[84,93376,175],{"class":90},[84,93378,93379],{"class":86,"line":122},[84,93380,45101],{"class":90},[84,93382,93383],{"class":86,"line":129},[84,93384,193],{"class":90},[84,93386,93387,93389,93391],{"class":86,"line":154},[84,93388,274],{"class":90},[84,93390,95],{"class":94},[84,93392,102],{"class":90},[84,93394,93395],{"class":86,"line":159},[84,93396,126],{"emptyLinePlaceholder":125},[84,93398,93399,93401,93403],{"class":86,"line":178},[84,93400,91],{"class":90},[84,93402,291],{"class":94},[84,93404,102],{"class":90},[84,93406,93407,93409,93411],{"class":86,"line":190},[84,93408,299],{"class":90},[84,93410,44971],{"class":94},[84,93412,102],{"class":90},[84,93414,93416,93418,93420,93422,93424,93426],{"class":93415,"line":196},[86,10151],[84,93417,1642],{"class":90},[84,93419,291],{"class":94},[84,93421,26882],{"class":98},[84,93423,1203],{"class":90},[84,93425,4915],{"class":98},[84,93427,102],{"class":90},[84,93429,93430,93432,93434,93436,93438],{"class":86,"line":201},[84,93431,1691],{"class":90},[84,93433,11],{"class":94},[84,93435,44997],{"class":90},[84,93437,11],{"class":94},[84,93439,102],{"class":90},[84,93441,93442,93444,93446],{"class":86,"line":217},[84,93443,1734],{"class":90},[84,93445,291],{"class":94},[84,93447,102],{"class":90},[84,93449,93450,93452,93454,93456,93458],{"class":86,"line":227},[84,93451,1642],{"class":90},[84,93453,15],{"class":94},[84,93455,45018],{"class":90},[84,93457,15],{"class":94},[84,93459,102],{"class":90},[84,93461,93463,93465,93467,93469,93471,93473],{"class":93462,"line":232},[86,10151],[84,93464,1642],{"class":90},[84,93466,291],{"class":94},[84,93468,26882],{"class":98},[84,93470,1203],{"class":90},[84,93472,27272],{"class":98},[84,93474,102],{"class":90},[84,93476,93477,93479,93481,93483,93485],{"class":86,"line":237},[84,93478,1691],{"class":90},[84,93480,302],{"class":94},[84,93482,45046],{"class":90},[84,93484,302],{"class":94},[84,93486,102],{"class":90},[84,93488,93489,93491,93493],{"class":86,"line":253},[84,93490,1734],{"class":90},[84,93492,291],{"class":94},[84,93494,102],{"class":90},[84,93496,93497,93499,93501],{"class":86,"line":266},[84,93498,324],{"class":90},[84,93500,44971],{"class":94},[84,93502,102],{"class":90},[84,93504,93505,93507,93509],{"class":86,"line":271},[84,93506,274],{"class":90},[84,93508,291],{"class":94},[84,93510,102],{"class":90},[15,93512,45234,93513,764],{},[958,93514,45237],{},[34,93516,93517],{"id":22609},[22,93518,22609],{},[15,93520,45244,93521,45248],{},[958,93522,45247],{},[74,93524,93526],{"className":76,"code":45251,"filename":873,"highlights":93525,"language":79,"meta":80,"style":80},[190],[22,93527,93528,93538,93548,93552,93568,93576,93580,93588,93603,93621],{"__ignoreMap":80},[84,93529,93530,93532,93534,93536],{"class":86,"line":87},[84,93531,91],{"class":90},[84,93533,95],{"class":94},[84,93535,99],{"class":98},[84,93537,102],{"class":90},[84,93539,93540,93542,93544,93546],{"class":86,"line":105},[84,93541,109],{"class":108},[84,93543,112],{"class":90},[84,93545,115],{"class":108},[84,93547,119],{"class":118},[84,93549,93550],{"class":86,"line":122},[84,93551,43259],{"class":90},[84,93553,93554,93556,93558,93560,93562,93564,93566],{"class":86,"line":129},[84,93555,132],{"class":108},[84,93557,10133],{"class":135},[84,93559,139],{"class":108},[84,93561,142],{"class":98},[84,93563,145],{"class":90},[84,93565,4320],{"class":135},[84,93567,151],{"class":90},[84,93569,93570,93572,93574],{"class":86,"line":154},[84,93571,274],{"class":90},[84,93573,95],{"class":94},[84,93575,102],{"class":90},[84,93577,93578],{"class":86,"line":159},[84,93579,126],{"emptyLinePlaceholder":125},[84,93581,93582,93584,93586],{"class":86,"line":178},[84,93583,91],{"class":90},[84,93585,291],{"class":94},[84,93587,102],{"class":90},[84,93589,93591,93593,93595,93597,93599,93601],{"class":93590,"line":190},[86,10151],[84,93592,299],{"class":90},[84,93594,15],{"class":94},[84,93596,23017],{"class":98},[84,93598,45326],{"class":90},[84,93600,15],{"class":94},[84,93602,102],{"class":90},[84,93604,93605,93607,93609,93611,93613,93615,93617,93619],{"class":86,"line":196},[84,93606,299],{"class":90},[84,93608,302],{"class":94},[84,93610,305],{"class":98},[84,93612,184],{"class":90},[84,93614,13204],{"class":118},[84,93616,45345],{"class":90},[84,93618,302],{"class":94},[84,93620,102],{"class":90},[84,93622,93623,93625,93627],{"class":86,"line":201},[84,93624,274],{"class":90},[84,93626,291],{"class":94},[84,93628,102],{"class":90},[74,93630,93632],{"className":76,"code":45360,"filename":1782,"highlights":93631,"language":79,"meta":80,"style":80},[227],[22,93633,93634,93642,93650,93656,93662,93668,93672,93676,93680,93688,93692,93700,93715,93733],{"__ignoreMap":80},[84,93635,93636,93638,93640],{"class":86,"line":87},[84,93637,91],{"class":90},[84,93639,95],{"class":94},[84,93641,102],{"class":90},[84,93643,93644,93646,93648],{"class":86,"line":105},[84,93645,418],{"class":108},[84,93647,1870],{"class":108},[84,93649,175],{"class":90},[84,93651,93652,93654],{"class":86,"line":122},[84,93653,1896],{"class":98},[84,93655,1307],{"class":90},[84,93657,93658,93660],{"class":86,"line":129},[84,93659,1903],{"class":108},[84,93661,175],{"class":90},[84,93663,93664,93666],{"class":86,"line":154},[84,93665,32365],{"class":90},[84,93667,5467],{"class":135},[84,93669,93670],{"class":86,"line":159},[84,93671,1936],{"class":90},[84,93673,93674],{"class":86,"line":178},[84,93675,485],{"class":90},[84,93677,93678],{"class":86,"line":190},[84,93679,193],{"class":90},[84,93681,93682,93684,93686],{"class":86,"line":196},[84,93683,274],{"class":90},[84,93685,95],{"class":94},[84,93687,102],{"class":90},[84,93689,93690],{"class":86,"line":201},[84,93691,126],{"emptyLinePlaceholder":125},[84,93693,93694,93696,93698],{"class":86,"line":217},[84,93695,91],{"class":90},[84,93697,291],{"class":94},[84,93699,102],{"class":90},[84,93701,93703,93705,93707,93709,93711,93713],{"class":93702,"line":227},[86,10151],[84,93704,299],{"class":90},[84,93706,15],{"class":94},[84,93708,23017],{"class":98},[84,93710,45326],{"class":90},[84,93712,15],{"class":94},[84,93714,102],{"class":90},[84,93716,93717,93719,93721,93723,93725,93727,93729,93731],{"class":86,"line":232},[84,93718,299],{"class":90},[84,93720,302],{"class":94},[84,93722,305],{"class":98},[84,93724,184],{"class":90},[84,93726,13204],{"class":118},[84,93728,45345],{"class":90},[84,93730,302],{"class":94},[84,93732,102],{"class":90},[84,93734,93735,93737,93739],{"class":86,"line":237},[84,93736,274],{"class":90},[84,93738,291],{"class":94},[84,93740,102],{"class":90},[15,93742,45473],{},[34,93744,93745],{"id":22612},[22,93746,22612],{},[15,93748,45480],{},[74,93750,93752],{"className":76,"code":45483,"filename":873,"highlights":93751,"language":79,"meta":80,"style":80},[190],[22,93753,93754,93764,93774,93778,93794,93802,93806,93814,93829,93841,93849,93867],{"__ignoreMap":80},[84,93755,93756,93758,93760,93762],{"class":86,"line":87},[84,93757,91],{"class":90},[84,93759,95],{"class":94},[84,93761,99],{"class":98},[84,93763,102],{"class":90},[84,93765,93766,93768,93770,93772],{"class":86,"line":105},[84,93767,109],{"class":108},[84,93769,112],{"class":90},[84,93771,115],{"class":108},[84,93773,119],{"class":118},[84,93775,93776],{"class":86,"line":122},[84,93777,126],{"emptyLinePlaceholder":125},[84,93779,93780,93782,93784,93786,93788,93790,93792],{"class":86,"line":129},[84,93781,132],{"class":108},[84,93783,10133],{"class":135},[84,93785,139],{"class":108},[84,93787,142],{"class":98},[84,93789,145],{"class":90},[84,93791,4320],{"class":135},[84,93793,151],{"class":90},[84,93795,93796,93798,93800],{"class":86,"line":154},[84,93797,274],{"class":90},[84,93799,95],{"class":94},[84,93801,102],{"class":90},[84,93803,93804],{"class":86,"line":159},[84,93805,126],{"emptyLinePlaceholder":125},[84,93807,93808,93810,93812],{"class":86,"line":178},[84,93809,91],{"class":90},[84,93811,291],{"class":94},[84,93813,102],{"class":90},[84,93815,93817,93819,93821,93823,93825,93827],{"class":93816,"line":190},[86,10151],[84,93818,299],{"class":90},[84,93820,4978],{"class":94},[84,93822,45556],{"class":98},[84,93824,184],{"class":90},[84,93826,45561],{"class":118},[84,93828,102],{"class":90},[84,93830,93831,93833,93835,93837,93839],{"class":86,"line":196},[84,93832,1642],{"class":90},[84,93834,15],{"class":94},[84,93836,45572],{"class":90},[84,93838,15],{"class":94},[84,93840,102],{"class":90},[84,93842,93843,93845,93847],{"class":86,"line":201},[84,93844,324],{"class":90},[84,93846,4978],{"class":94},[84,93848,102],{"class":90},[84,93850,93851,93853,93855,93857,93859,93861,93863,93865],{"class":86,"line":217},[84,93852,299],{"class":90},[84,93854,302],{"class":94},[84,93856,305],{"class":98},[84,93858,184],{"class":90},[84,93860,13204],{"class":118},[84,93862,45345],{"class":90},[84,93864,302],{"class":94},[84,93866,102],{"class":90},[84,93868,93869,93871,93873],{"class":86,"line":227},[84,93870,274],{"class":90},[84,93872,291],{"class":94},[84,93874,102],{"class":90},[74,93876,93878],{"className":76,"code":45613,"filename":1782,"highlights":93877,"language":79,"meta":80,"style":80},[227],[22,93879,93880,93888,93896,93902,93908,93914,93918,93922,93926,93934,93938,93946,93961,93973,93981],{"__ignoreMap":80},[84,93881,93882,93884,93886],{"class":86,"line":87},[84,93883,91],{"class":90},[84,93885,95],{"class":94},[84,93887,102],{"class":90},[84,93889,93890,93892,93894],{"class":86,"line":105},[84,93891,418],{"class":108},[84,93893,1870],{"class":108},[84,93895,175],{"class":90},[84,93897,93898,93900],{"class":86,"line":122},[84,93899,1896],{"class":98},[84,93901,1307],{"class":90},[84,93903,93904,93906],{"class":86,"line":129},[84,93905,1903],{"class":108},[84,93907,175],{"class":90},[84,93909,93910,93912],{"class":86,"line":154},[84,93911,45649],{"class":90},[84,93913,45652],{"class":135},[84,93915,93916],{"class":86,"line":159},[84,93917,1936],{"class":90},[84,93919,93920],{"class":86,"line":178},[84,93921,485],{"class":90},[84,93923,93924],{"class":86,"line":190},[84,93925,193],{"class":90},[84,93927,93928,93930,93932],{"class":86,"line":196},[84,93929,274],{"class":90},[84,93931,95],{"class":94},[84,93933,102],{"class":90},[84,93935,93936],{"class":86,"line":201},[84,93937,126],{"emptyLinePlaceholder":125},[84,93939,93940,93942,93944],{"class":86,"line":217},[84,93941,91],{"class":90},[84,93943,291],{"class":94},[84,93945,102],{"class":90},[84,93947,93949,93951,93953,93955,93957,93959],{"class":93948,"line":227},[86,10151],[84,93950,299],{"class":90},[84,93952,4978],{"class":94},[84,93954,45556],{"class":98},[84,93956,184],{"class":90},[84,93958,45698],{"class":118},[84,93960,102],{"class":90},[84,93962,93963,93965,93967,93969,93971],{"class":86,"line":232},[84,93964,1642],{"class":90},[84,93966,15],{"class":94},[84,93968,45709],{"class":90},[84,93970,15],{"class":94},[84,93972,102],{"class":90},[84,93974,93975,93977,93979],{"class":86,"line":237},[84,93976,324],{"class":90},[84,93978,4978],{"class":94},[84,93980,102],{"class":90},[84,93982,93983,93985,93987],{"class":86,"line":253},[84,93984,274],{"class":90},[84,93986,291],{"class":94},[84,93988,102],{"class":90},[15,93990,45732,93991,45736],{},[958,93992,45735],{},[34,93994,93995],{"id":22615},[22,93996,22615],{},[15,93998,45743],{},[74,94000,94002],{"className":76,"code":45746,"filename":873,"highlights":94001,"language":79,"meta":80,"style":80},[154],[22,94003,94004,94014,94022,94026,94034,94045,94049,94057],{"__ignoreMap":80},[84,94005,94006,94008,94010,94012],{"class":86,"line":87},[84,94007,91],{"class":90},[84,94009,95],{"class":94},[84,94011,99],{"class":98},[84,94013,102],{"class":90},[84,94015,94016,94018,94020],{"class":86,"line":105},[84,94017,274],{"class":90},[84,94019,95],{"class":94},[84,94021,102],{"class":90},[84,94023,94024],{"class":86,"line":122},[84,94025,126],{"emptyLinePlaceholder":125},[84,94027,94028,94030,94032],{"class":86,"line":129},[84,94029,91],{"class":90},[84,94031,291],{"class":94},[84,94033,102],{"class":90},[84,94035,94037,94039,94041,94043],{"class":94036,"line":154},[86,10151],[84,94038,299],{"class":90},[84,94040,4978],{"class":94},[84,94042,23911],{"class":98},[84,94044,102],{"class":90},[84,94046,94047],{"class":86,"line":159},[84,94048,45795],{"class":90},[84,94050,94051,94053,94055],{"class":86,"line":178},[84,94052,324],{"class":90},[84,94054,4978],{"class":94},[84,94056,102],{"class":90},[84,94058,94059,94061,94063],{"class":86,"line":190},[84,94060,274],{"class":90},[84,94062,291],{"class":94},[84,94064,102],{"class":90},[74,94066,94068],{"className":76,"code":45814,"filename":1782,"highlights":94067,"language":79,"meta":80,"style":80},[159],[22,94069,94070,94078,94086,94094,94098,94106,94117,94121,94129],{"__ignoreMap":80},[84,94071,94072,94074,94076],{"class":86,"line":87},[84,94073,91],{"class":90},[84,94075,95],{"class":94},[84,94077,102],{"class":90},[84,94079,94080,94082,94084],{"class":86,"line":105},[84,94081,418],{"class":108},[84,94083,1870],{"class":108},[84,94085,45834],{"class":90},[84,94087,94088,94090,94092],{"class":86,"line":122},[84,94089,274],{"class":90},[84,94091,95],{"class":94},[84,94093,102],{"class":90},[84,94095,94096],{"class":86,"line":129},[84,94097,126],{"emptyLinePlaceholder":125},[84,94099,94100,94102,94104],{"class":86,"line":154},[84,94101,91],{"class":90},[84,94103,291],{"class":94},[84,94105,102],{"class":90},[84,94107,94109,94111,94113,94115],{"class":94108,"line":159},[86,10151],[84,94110,299],{"class":90},[84,94112,4978],{"class":94},[84,94114,23911],{"class":98},[84,94116,102],{"class":90},[84,94118,94119],{"class":86,"line":178},[84,94120,45795],{"class":90},[84,94122,94123,94125,94127],{"class":86,"line":190},[84,94124,324],{"class":90},[84,94126,4978],{"class":94},[84,94128,102],{"class":90},[84,94130,94131,94133,94135],{"class":86,"line":196},[84,94132,274],{"class":90},[84,94134,291],{"class":94},[84,94136,102],{"class":90},[15,94138,45888],{},[34,94140,94141],{"id":21317},[22,94142,21317],{},[15,94144,45895],{},[74,94146,94148],{"className":76,"code":45898,"filename":873,"highlights":94147,"language":79,"meta":80,"style":80},[154],[22,94149,94150,94160,94168,94172,94180,94191,94195,94203],{"__ignoreMap":80},[84,94151,94152,94154,94156,94158],{"class":86,"line":87},[84,94153,91],{"class":90},[84,94155,95],{"class":94},[84,94157,99],{"class":98},[84,94159,102],{"class":90},[84,94161,94162,94164,94166],{"class":86,"line":105},[84,94163,274],{"class":90},[84,94165,95],{"class":94},[84,94167,102],{"class":90},[84,94169,94170],{"class":86,"line":122},[84,94171,126],{"emptyLinePlaceholder":125},[84,94173,94174,94176,94178],{"class":86,"line":129},[84,94175,91],{"class":90},[84,94177,291],{"class":94},[84,94179,102],{"class":90},[84,94181,94183,94185,94187,94189],{"class":94182,"line":154},[86,10151],[84,94184,299],{"class":90},[84,94186,4978],{"class":94},[84,94188,21708],{"class":98},[84,94190,102],{"class":90},[84,94192,94193],{"class":86,"line":159},[84,94194,45947],{"class":90},[84,94196,94197,94199,94201],{"class":86,"line":178},[84,94198,324],{"class":90},[84,94200,4978],{"class":94},[84,94202,102],{"class":90},[84,94204,94205,94207,94209],{"class":86,"line":190},[84,94206,274],{"class":90},[84,94208,291],{"class":94},[84,94210,102],{"class":90},[74,94212,94214],{"className":76,"code":45966,"filename":1782,"highlights":94213,"language":79,"meta":80,"style":80},[159],[22,94215,94216,94224,94232,94240,94244,94252,94263,94267,94275],{"__ignoreMap":80},[84,94217,94218,94220,94222],{"class":86,"line":87},[84,94219,91],{"class":90},[84,94221,95],{"class":94},[84,94223,102],{"class":90},[84,94225,94226,94228,94230],{"class":86,"line":105},[84,94227,418],{"class":108},[84,94229,1870],{"class":108},[84,94231,45834],{"class":90},[84,94233,94234,94236,94238],{"class":86,"line":122},[84,94235,274],{"class":90},[84,94237,95],{"class":94},[84,94239,102],{"class":90},[84,94241,94242],{"class":86,"line":129},[84,94243,126],{"emptyLinePlaceholder":125},[84,94245,94246,94248,94250],{"class":86,"line":154},[84,94247,91],{"class":90},[84,94249,291],{"class":94},[84,94251,102],{"class":90},[84,94253,94255,94257,94259,94261],{"class":94254,"line":159},[86,10151],[84,94256,299],{"class":90},[84,94258,4978],{"class":94},[84,94260,21708],{"class":98},[84,94262,102],{"class":90},[84,94264,94265],{"class":86,"line":178},[84,94266,45947],{"class":90},[84,94268,94269,94271,94273],{"class":86,"line":190},[84,94270,324],{"class":90},[84,94272,4978],{"class":94},[84,94274,102],{"class":90},[84,94276,94277,94279,94281],{"class":86,"line":196},[84,94278,274],{"class":90},[84,94280,291],{"class":94},[84,94282,102],{"class":90},[15,94284,46039],{},[34,94286,4019],{"id":46042},[15,94288,46045],{},[74,94290,94292],{"className":394,"code":46048,"filename":20153,"highlights":94291,"language":397,"meta":80,"style":80},[129,154,159,178,190],[22,94293,94294,94304,94314,94326,94339,94350,94359,94364],{"__ignoreMap":80},[84,94295,94296,94298,94300,94302],{"class":86,"line":87},[84,94297,109],{"class":108},[84,94299,46058],{"class":90},[84,94301,115],{"class":108},[84,94303,119],{"class":118},[84,94305,94306,94308,94310,94312],{"class":86,"line":105},[84,94307,109],{"class":108},[84,94309,46069],{"class":90},[84,94311,115],{"class":108},[84,94313,46074],{"class":118},[84,94315,94316,94318,94320,94322,94324],{"class":86,"line":122},[84,94317,132],{"class":108},[84,94319,46081],{"class":135},[84,94321,139],{"class":108},[84,94323,46086],{"class":98},[84,94325,46089],{"class":90},[84,94327,94329,94331,94333,94335,94337],{"class":94328,"line":129},[86,10151],[84,94330,46095],{"class":90},[84,94332,46098],{"class":98},[84,94334,145],{"class":90},[84,94336,46103],{"class":118},[84,94338,3146],{"class":90},[84,94340,94342,94344,94346,94348],{"class":94341,"line":154},[86,10151],[84,94343,7551],{"class":98},[84,94345,145],{"class":90},[84,94347,19036],{"class":429},[84,94349,438],{"class":90},[84,94351,94353,94355,94357],{"class":94352,"line":159},[86,10151],[84,94354,46122],{"class":90},[84,94356,12222],{"class":98},[84,94358,635],{"class":90},[84,94360,94362],{"class":94361,"line":178},[86,10151],[84,94363,485],{"class":90},[84,94365,94367],{"class":94366,"line":190},[86,10151],[84,94368,1492],{"class":90},[74,94370,94372],{"className":76,"code":46139,"filename":10092,"highlights":94371,"language":79,"meta":80,"style":80},[105],[22,94373,94374,94382,94393],{"__ignoreMap":80},[84,94375,94376,94378,94380],{"class":86,"line":87},[84,94377,91],{"class":90},[84,94379,291],{"class":94},[84,94381,102],{"class":90},[84,94383,94385,94387,94389,94391],{"class":94384,"line":105},[86,10151],[84,94386,299],{"class":90},[84,94388,18759],{"class":94},[84,94390,46160],{"class":98},[84,94392,5100],{"class":90},[84,94394,94395,94397,94399],{"class":86,"line":122},[84,94396,274],{"class":90},[84,94398,291],{"class":94},[84,94400,102],{"class":90},[15,94402,46173],{},[34,94404,18395],{"id":18394},[15,94406,46178,94407,764],{},[958,94408,46181],{},[15,94410,46184],{},[737,94412,94413,94415,94417],{},[740,94414,46189],{},[740,94416,784],{},[740,94418,46194],{},[15,94420,46197,94421,46201],{},[958,94422,46200],{},[835,94424,837],{},{"title":80,"searchDepth":105,"depth":105,"links":94426},[94427,94428,94429,94430,94431,94432,94433,94434,94435,94436,94437,94438,94439,94440,94441,94442],{"id":13901,"depth":105,"text":13902},{"id":42949,"depth":105,"text":46208},{"id":8462,"depth":105,"text":8462},{"id":25577,"depth":105,"text":25577},{"id":18692,"depth":105,"text":18692},{"id":18689,"depth":105,"text":18689},{"id":18695,"depth":105,"text":18695},{"id":25284,"depth":105,"text":25284},{"id":25287,"depth":105,"text":25287},{"id":26560,"depth":105,"text":26560},{"id":22609,"depth":105,"text":22609},{"id":22612,"depth":105,"text":22612},{"id":22615,"depth":105,"text":22615},{"id":21317,"depth":105,"text":21317},{"id":46042,"depth":105,"text":4019},{"id":18394,"depth":105,"text":18395},{"updatedAt":28785,"readingTime":159,"coverCaption":46227,"author":868,"keywords":94444},[870,21297,46229,891],[94446],{"headline":42857,"author":94447,"datePublished":46234,"@type":880},{"name":868,"@type":879},{"title":42857,"description":46225},[94450,94451,94452,94453,94454,94455],{"tag":21297,"color":21298},{"tag":22594,"color":22595},{"tag":42850,"color":42851},{"tag":40984,"color":3946},{"tag":3945,"color":3946},{"tag":894,"color":895},{"id":46246,"title":46247,"body":94457,"cover":47008,"coverAlt":46247,"date":47009,"description":47010,"draft":852,"extension":853,"lab":882,"locale":864,"meta":95096,"navigation":125,"path":47017,"schemaOrg":95098,"seo":95101,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":47023,"tags":95102,"__hash__":47032},{"type":8,"value":94458,"toc":95086},[94459,94461,94467,94469,94473,94477,94479,94487,94489,94491,94631,94775,94779,94884,94888,94900,94976,94978,94980,94986,95050,95058,95060,95076,95078,95084],[11,94460,46253],{"id":46252},[15,94462,46256,94463,46260,94465,46264],{},[958,94464,46259],{},[958,94466,46263],{},[34,94468,46268],{"id":46267},[15,94470,46271,94471,46275],{},[4070,94472,46274],{},[15,94474,46278,94475,46282],{},[958,94476,46281],{},[34,94478,46286],{"id":46285},[15,94480,46289,94481,46293,94483,46296,94485,46300],{},[958,94482,46292],{},[4070,94484,26638],{},[4070,94486,46299],{},[1074,94488,46304],{"id":46303},[15,94490,46307],{},[74,94492,94494],{"className":76,"code":46310,"filename":46311,"highlights":94493,"language":79,"meta":80,"style":80},[129,154,159,178,232],[22,94495,94496,94506,94518,94522,94539,94554,94565,94570,94574,94578,94586,94590,94598,94623],{"__ignoreMap":80},[84,94497,94498,94500,94502,94504],{"class":86,"line":87},[84,94499,91],{"class":90},[84,94501,95],{"class":94},[84,94503,99],{"class":98},[84,94505,102],{"class":90},[84,94507,94508,94510,94512,94514,94516],{"class":86,"line":105},[84,94509,46329],{"class":108},[84,94511,112],{"class":90},[84,94513,115],{"class":108},[84,94515,46336],{"class":118},[84,94517,18869],{"class":90},[84,94519,94520],{"class":86,"line":122},[84,94521,126],{"emptyLinePlaceholder":125},[84,94523,94525,94527,94529,94531,94533,94535,94537],{"class":94524,"line":129},[86,10151],[84,94526,443],{"class":108},[84,94528,136],{"class":135},[84,94530,139],{"class":108},[84,94532,142],{"class":98},[84,94534,145],{"class":90},[84,94536,148],{"class":135},[84,94538,18994],{"class":90},[84,94540,94542,94544,94546,94548,94550,94552],{"class":94541,"line":154},[86,10151],[84,94543,443],{"class":108},[84,94545,242],{"class":98},[84,94547,139],{"class":108},[84,94549,169],{"class":90},[84,94551,172],{"class":108},[84,94553,175],{"class":90},[84,94555,94557,94559,94561,94563],{"class":94556,"line":159},[86,10151],[84,94558,46380],{"class":90},[84,94560,184],{"class":108},[84,94562,260],{"class":108},[84,94564,46387],{"class":90},[84,94566,94568],{"class":94567,"line":178},[86,10151],[84,94569,46393],{"class":90},[84,94571,94572],{"class":86,"line":190},[84,94573,126],{"emptyLinePlaceholder":125},[84,94575,94576],{"class":86,"line":196},[84,94577,46402],{"class":13481},[84,94579,94580,94582,94584],{"class":86,"line":201},[84,94581,274],{"class":90},[84,94583,95],{"class":94},[84,94585,102],{"class":90},[84,94587,94588],{"class":86,"line":217},[84,94589,126],{"emptyLinePlaceholder":125},[84,94591,94592,94594,94596],{"class":86,"line":227},[84,94593,91],{"class":90},[84,94595,291],{"class":94},[84,94597,102],{"class":90},[84,94599,94601,94603,94605,94607,94609,94611,94613,94615,94617,94619,94621],{"class":94600,"line":232},[86,10151],[84,94602,299],{"class":90},[84,94604,26638],{"class":94},[84,94606,46432],{"class":98},[84,94608,184],{"class":90},[84,94610,349],{"class":118},[84,94612,46439],{"class":98},[84,94614,184],{"class":90},[84,94616,310],{"class":118},[84,94618,25387],{"class":90},[84,94620,26638],{"class":94},[84,94622,102],{"class":90},[84,94624,94625,94627,94629],{"class":86,"line":237},[84,94626,274],{"class":90},[84,94628,291],{"class":94},[84,94630,102],{"class":90},[74,94632,94634],{"className":76,"code":46460,"filename":46461,"highlights":94633,"language":79,"meta":80,"style":80},[154,196,201,217,281],[22,94635,94636,94644,94652,94658,94664,94671,94675,94679,94683,94690,94705,94710,94714,94718,94722,94730,94734,94742,94767],{"__ignoreMap":80},[84,94637,94638,94640,94642],{"class":86,"line":87},[84,94639,91],{"class":90},[84,94641,95],{"class":94},[84,94643,102],{"class":90},[84,94645,94646,94648,94650],{"class":86,"line":105},[84,94647,46477],{"class":108},[84,94649,1870],{"class":108},[84,94651,175],{"class":90},[84,94653,94654,94656],{"class":86,"line":122},[84,94655,46486],{"class":98},[84,94657,1307],{"class":90},[84,94659,94660,94662],{"class":86,"line":129},[84,94661,3539],{"class":108},[84,94663,175],{"class":90},[84,94665,94667,94669],{"class":94666,"line":154},[86,10151],[84,94668,46500],{"class":90},[84,94670,2833],{"class":135},[84,94672,94673],{"class":86,"line":159},[84,94674,37238],{"class":90},[84,94676,94677],{"class":86,"line":178},[84,94678,7783],{"class":90},[84,94680,94681],{"class":86,"line":190},[84,94682,46515],{"class":90},[84,94684,94686,94688],{"class":94685,"line":196},[86,10151],[84,94687,46521],{"class":98},[84,94689,1307],{"class":90},[84,94691,94693,94695,94697,94699,94701,94703],{"class":94692,"line":201},[86,10151],[84,94694,9580],{"class":135},[84,94696,46531],{"class":90},[84,94698,184],{"class":108},[84,94700,260],{"class":108},[84,94702,2151],{"class":135},[84,94704,46540],{"class":90},[84,94706,94708],{"class":94707,"line":217},[86,10151],[84,94709,2013],{"class":90},[84,94711,94712],{"class":86,"line":227},[84,94713,1936],{"class":90},[84,94715,94716],{"class":86,"line":232},[84,94717,46393],{"class":90},[84,94719,94720],{"class":86,"line":237},[84,94721,46402],{"class":13481},[84,94723,94724,94726,94728],{"class":86,"line":253},[84,94725,274],{"class":90},[84,94727,95],{"class":94},[84,94729,102],{"class":90},[84,94731,94732],{"class":86,"line":266},[84,94733,126],{"emptyLinePlaceholder":125},[84,94735,94736,94738,94740],{"class":86,"line":271},[84,94737,91],{"class":90},[84,94739,291],{"class":94},[84,94741,102],{"class":90},[84,94743,94745,94747,94749,94751,94753,94755,94757,94759,94761,94763,94765],{"class":94744,"line":281},[86,10151],[84,94746,299],{"class":90},[84,94748,26638],{"class":94},[84,94750,46432],{"class":98},[84,94752,184],{"class":90},[84,94754,349],{"class":118},[84,94756,46439],{"class":98},[84,94758,184],{"class":90},[84,94760,310],{"class":118},[84,94762,25387],{"class":90},[84,94764,26638],{"class":94},[84,94766,102],{"class":90},[84,94768,94769,94771,94773],{"class":86,"line":286},[84,94770,274],{"class":90},[84,94772,291],{"class":94},[84,94774,102],{"class":90},[15,94776,94777,46616],{},[958,94778,46615],{},[74,94780,94782],{"className":76,"code":46619,"filename":46620,"highlights":94781,"language":79,"meta":80,"style":80},[105,122,129,159],[22,94783,94784,94792,94807,94822,94827,94835,94856,94860,94868,94876],{"__ignoreMap":80},[84,94785,94786,94788,94790],{"class":86,"line":87},[84,94787,91],{"class":90},[84,94789,291],{"class":94},[84,94791,102],{"class":90},[84,94793,94795,94797,94799,94801,94803,94805],{"class":94794,"line":105},[86,10151],[84,94796,299],{"class":90},[84,94798,46639],{"class":94},[84,94800,26882],{"class":98},[84,94802,184],{"class":90},[84,94804,46646],{"class":118},[84,94806,102],{"class":90},[84,94808,94810,94812,94814,94816,94818,94820],{"class":94809,"line":122},[86,10151],[84,94811,1642],{"class":90},[84,94813,302],{"class":94},[84,94815,305],{"class":98},[84,94817,184],{"class":90},[84,94819,310],{"class":118},[84,94821,102],{"class":90},[84,94823,94825],{"class":94824,"line":129},[86,10151],[84,94826,46669],{"class":90},[84,94828,94829,94831,94833],{"class":86,"line":154},[84,94830,1734],{"class":90},[84,94832,302],{"class":94},[84,94834,102],{"class":90},[84,94836,94838,94840,94842,94844,94846,94848,94850,94852,94854],{"class":94837,"line":159},[86,10151],[84,94839,1642],{"class":90},[84,94841,4978],{"class":94},[84,94843,344],{"class":98},[84,94845,184],{"class":90},[84,94847,349],{"class":118},[84,94849,1629],{"class":98},[84,94851,184],{"class":90},[84,94853,46697],{"class":118},[84,94855,102],{"class":90},[84,94857,94858],{"class":86,"line":178},[84,94859,46704],{"class":90},[84,94861,94862,94864,94866],{"class":86,"line":190},[84,94863,1734],{"class":90},[84,94865,4978],{"class":94},[84,94867,102],{"class":90},[84,94869,94870,94872,94874],{"class":86,"line":196},[84,94871,324],{"class":90},[84,94873,46639],{"class":94},[84,94875,102],{"class":90},[84,94877,94878,94880,94882],{"class":86,"line":201},[84,94879,274],{"class":90},[84,94881,291],{"class":94},[84,94883,102],{"class":90},[34,94885,46732,94886,909],{"id":46731},[22,94887,46735],{},[15,94889,46738,94890,46741,94892,46745,94894,1341,94896,46751,94898,46755],{},[22,94891,26850],{},[22,94893,46744],{},[22,94895,46735],{},[4070,94897,46750],{},[958,94899,46754],{},[74,94901,94903],{"className":46758,"code":46759,"filename":46760,"highlights":94902,"language":46762,"meta":80,"style":80},[129,154,159,201,217,227,232],[22,94904,94905,94909,94913,94917,94922,94927,94932,94936,94940,94944,94949,94954,94959,94964,94968,94972],{"__ignoreMap":80},[84,94906,94907],{"class":86,"line":87},[84,94908,46769],{},[84,94910,94911],{"class":86,"line":105},[84,94912,126],{"emptyLinePlaceholder":125},[84,94914,94915],{"class":86,"line":122},[84,94916,46778],{},[84,94918,94920],{"class":94919,"line":129},[86,10151],[84,94921,46784],{},[84,94923,94925],{"class":94924,"line":154},[86,10151],[84,94926,46790],{},[84,94928,94930],{"class":94929,"line":159},[86,10151],[84,94931,46796],{},[84,94933,94934],{"class":86,"line":178},[84,94935,126],{"emptyLinePlaceholder":125},[84,94937,94938],{"class":86,"line":190},[84,94939,46805],{},[84,94941,94942],{"class":86,"line":196},[84,94943,46810],{},[84,94945,94947],{"class":94946,"line":201},[86,10151],[84,94948,46816],{},[84,94950,94952],{"class":94951,"line":217},[86,10151],[84,94953,46822],{},[84,94955,94957],{"class":94956,"line":227},[86,10151],[84,94958,46828],{},[84,94960,94962],{"class":94961,"line":232},[86,10151],[84,94963,46834],{},[84,94965,94966],{"class":86,"line":237},[84,94967,19195],{},[84,94969,94970],{"class":86,"line":253},[84,94971,485],{},[84,94973,94974],{"class":86,"line":266},[84,94975,18973],{},[15,94977,46849],{},[34,94979,46853],{"id":46852},[15,94981,46856,94982,1341,94984,46862],{},[4070,94983,46859],{},[22,94985,388],{},[6160,94987,94988,94998],{},[6163,94989,94990],{},[6166,94991,94992,94994,94996],{},[6169,94993,46871],{},[6169,94995,872],{},[6169,94997,46263],{},[6182,94999,95000,95010,95020,95030,95040],{},[6166,95001,95002,95006,95008],{},[6187,95003,95004],{},[958,95005,46884],{},[6187,95007,46887],{},[6187,95009,46890],{},[6166,95011,95012,95016,95018],{},[6187,95013,95014],{},[958,95015,46897],{},[6187,95017,46900],{},[6187,95019,46903],{},[6166,95021,95022,95026,95028],{},[6187,95023,95024],{},[958,95025,46910],{},[6187,95027,46913],{},[6187,95029,46916],{},[6166,95031,95032,95036,95038],{},[6187,95033,95034],{},[958,95035,27031],{},[6187,95037,46925],{},[6187,95039,46928],{},[6166,95041,95042,95046,95048],{},[6187,95043,95044],{},[958,95045,46935],{},[6187,95047,46938],{},[6187,95049,46941],{},[15,95051,46944,95052,46947,95054,46950,95056,2686],{},[4070,95053,46263],{},[22,95055,1503],{},[4070,95057,46953],{},[34,95059,46957],{"id":46956},[10842,95061,95062,95068,95072],{},[740,95063,95064,46965,95066,46968],{},[958,95065,46964],{},[4070,95067,46274],{},[740,95069,95070,46974],{},[958,95071,46973],{},[740,95073,95074,46980],{},[958,95075,46979],{},[34,95077,46984],{"id":46983},[15,95079,46987,95080,46990,95082,46993],{},[22,95081,26560],{},[958,95083,46263],{},[835,95085,46996],{},{"title":80,"searchDepth":105,"depth":105,"links":95087},[95088,95089,95092,95093,95094,95095],{"id":46267,"depth":105,"text":46268},{"id":46285,"depth":105,"text":46286,"children":95090},[95091],{"id":46303,"depth":122,"text":46304},{"id":46731,"depth":105,"text":47004},{"id":46852,"depth":105,"text":46853},{"id":46956,"depth":105,"text":46957},{"id":46983,"depth":105,"text":46984},{"updatedAt":47012,"coverCaption":47013,"author":868,"keywords":95097},[871,46263,47015,47016,46229],[95099],{"headline":46247,"author":95100,"datePublished":47021,"@type":880},{"name":868,"@type":879},{"title":46247,"description":47010},[95103,95104,95105,95106,95107,95108],{"tag":2458,"color":2459},{"tag":47016,"color":47027},{"tag":888,"color":889},{"tag":3945,"color":3946},{"tag":2462,"color":2463},{"tag":891,"color":892},{"id":47034,"title":47035,"body":95110,"cover":48957,"coverAlt":47035,"date":48958,"description":48959,"draft":852,"extension":853,"lab":882,"locale":864,"meta":96784,"navigation":125,"path":48963,"schemaOrg":96786,"seo":96789,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":48969,"tags":96790,"__hash__":48981},{"type":8,"value":95111,"toc":96771},[95112,95114,95118,95124,95126,95144,95148,95150,95160,95162,95164,95168,95279,95355,95359,95450,95524,95526,95534,95550,95556,95568,95572,95576,95694,95868,95872,96000,96215,96217,96221,96255,96257,96259,96267,96271,96420,96424,96617,96619,96627,96635,96637,96643,96659,96661,96663,96721,96723,96737,96739,96747,96767,96769],[11,95113,47041],{"id":47040},[15,95115,47044,95116,47048],{},[958,95117,47047],{},[15,95119,95120,47054,95122,47058],{},[22,95121,47053],{},[22,95123,47057],{},[34,95125,47062],{"id":47061},[10842,95127,95128,95134,95138],{},[740,95129,95130,47070,95132,47074],{},[958,95131,47069],{},[22,95133,47073],{},[740,95135,95136,47080],{},[958,95137,47079],{},[740,95139,95140,47086,95142,47089],{},[958,95141,47085],{},[22,95143,2673],{},[34,95145,47093,95146],{"id":47092},[958,95147,47096],{},[15,95149,47099],{},[737,95151,95152,95156],{},[740,95153,95154,47107],{},[958,95155,47106],{},[740,95157,95158,47113],{},[958,95159,47112],{},[34,95161,47117],{"id":47116},[15,95163,47120],{},[24627,95165,95166],{"id":47123},[958,95167,47126],{},[74,95169,95171],{"className":76,"code":47129,"filename":873,"highlights":95170,"language":79,"meta":80,"style":80},[105,190],[22,95172,95173,95183,95194,95204,95208,95224,95228,95232,95243,95251,95255,95263,95271],{"__ignoreMap":80},[84,95174,95175,95177,95179,95181],{"class":86,"line":87},[84,95176,91],{"class":90},[84,95178,95],{"class":94},[84,95180,99],{"class":98},[84,95182,102],{"class":90},[84,95184,95186,95188,95190,95192],{"class":95185,"line":105},[86,10151],[84,95187,109],{"class":108},[84,95189,47150],{"class":90},[84,95191,115],{"class":108},[84,95193,119],{"class":118},[84,95195,95196,95198,95200,95202],{"class":86,"line":122},[84,95197,109],{"class":108},[84,95199,47161],{"class":90},[84,95201,115],{"class":108},[84,95203,47166],{"class":118},[84,95205,95206],{"class":86,"line":129},[84,95207,126],{"emptyLinePlaceholder":125},[84,95209,95210,95212,95214,95216,95218,95220,95222],{"class":86,"line":154},[84,95211,132],{"class":108},[84,95213,47177],{"class":135},[84,95215,139],{"class":108},[84,95217,142],{"class":98},[84,95219,145],{"class":90},[84,95221,47186],{"class":118},[84,95223,151],{"class":90},[84,95225,95226],{"class":86,"line":159},[84,95227,126],{"emptyLinePlaceholder":125},[84,95229,95230],{"class":86,"line":178},[84,95231,47197],{"class":13481},[84,95233,95235,95237,95239,95241],{"class":95234,"line":190},[86,10151],[84,95236,47203],{"class":98},[84,95238,145],{"class":90},[84,95240,47208],{"class":118},[84,95242,47211],{"class":90},[84,95244,95245,95247,95249],{"class":86,"line":196},[84,95246,274],{"class":90},[84,95248,95],{"class":94},[84,95250,102],{"class":90},[84,95252,95253],{"class":86,"line":201},[84,95254,126],{"emptyLinePlaceholder":125},[84,95256,95257,95259,95261],{"class":86,"line":217},[84,95258,91],{"class":90},[84,95260,291],{"class":94},[84,95262,102],{"class":90},[84,95264,95265,95267,95269],{"class":86,"line":227},[84,95266,299],{"class":90},[84,95268,47238],{"class":94},[84,95270,5100],{"class":90},[84,95272,95273,95275,95277],{"class":86,"line":232},[84,95274,274],{"class":90},[84,95276,291],{"class":94},[84,95278,102],{"class":90},[74,95280,95282],{"className":76,"code":47251,"filename":1782,"highlights":95281,"language":79,"meta":80,"style":80},[122],[22,95283,95284,95292,95300,95305,95311,95315,95319,95327,95331,95339,95347],{"__ignoreMap":80},[84,95285,95286,95288,95290],{"class":86,"line":87},[84,95287,91],{"class":90},[84,95289,95],{"class":94},[84,95291,102],{"class":90},[84,95293,95294,95296,95298],{"class":86,"line":105},[84,95295,418],{"class":108},[84,95297,1870],{"class":108},[84,95299,175],{"class":90},[84,95301,95303],{"class":95302,"line":122},[86,10151],[84,95304,47276],{"class":90},[84,95306,95307,95309],{"class":86,"line":129},[84,95308,47281],{"class":90},[84,95310,47284],{"class":118},[84,95312,95313],{"class":86,"line":154},[84,95314,485],{"class":90},[84,95316,95317],{"class":86,"line":159},[84,95318,193],{"class":90},[84,95320,95321,95323,95325],{"class":86,"line":178},[84,95322,274],{"class":90},[84,95324,95],{"class":94},[84,95326,102],{"class":90},[84,95328,95329],{"class":86,"line":190},[84,95330,126],{"emptyLinePlaceholder":125},[84,95332,95333,95335,95337],{"class":86,"line":196},[84,95334,91],{"class":90},[84,95336,291],{"class":94},[84,95338,102],{"class":90},[84,95340,95341,95343,95345],{"class":86,"line":201},[84,95342,299],{"class":90},[84,95344,47238],{"class":94},[84,95346,5100],{"class":90},[84,95348,95349,95351,95353],{"class":86,"line":217},[84,95350,274],{"class":90},[84,95352,291],{"class":94},[84,95354,102],{"class":90},[24627,95356,95357],{"id":47331},[958,95358,47334],{},[74,95360,95362],{"className":76,"code":47337,"filename":873,"highlights":95361,"language":79,"meta":80,"style":80},[105,154],[22,95363,95364,95374,95385,95389,95393,95410,95418,95422,95430,95442],{"__ignoreMap":80},[84,95365,95366,95368,95370,95372],{"class":86,"line":87},[84,95367,91],{"class":90},[84,95369,95],{"class":94},[84,95371,99],{"class":98},[84,95373,102],{"class":90},[84,95375,95377,95379,95381,95383],{"class":95376,"line":105},[86,10151],[84,95378,109],{"class":108},[84,95380,47358],{"class":90},[84,95382,115],{"class":108},[84,95384,119],{"class":118},[84,95386,95387],{"class":86,"line":122},[84,95388,126],{"emptyLinePlaceholder":125},[84,95390,95391],{"class":86,"line":129},[84,95392,47371],{"class":13481},[84,95394,95396,95398,95400,95402,95404,95406,95408],{"class":95395,"line":154},[86,10151],[84,95397,132],{"class":108},[84,95399,47177],{"class":135},[84,95401,139],{"class":108},[84,95403,47383],{"class":98},[84,95405,145],{"class":90},[84,95407,47208],{"class":118},[84,95409,151],{"class":90},[84,95411,95412,95414,95416],{"class":86,"line":159},[84,95413,274],{"class":90},[84,95415,95],{"class":94},[84,95417,102],{"class":90},[84,95419,95420],{"class":86,"line":178},[84,95421,126],{"emptyLinePlaceholder":125},[84,95423,95424,95426,95428],{"class":86,"line":190},[84,95425,91],{"class":90},[84,95427,291],{"class":94},[84,95429,102],{"class":90},[84,95431,95432,95434,95436,95438,95440],{"class":86,"line":196},[84,95433,299],{"class":90},[84,95435,11],{"class":94},[84,95437,47418],{"class":90},[84,95439,11],{"class":94},[84,95441,102],{"class":90},[84,95443,95444,95446,95448],{"class":86,"line":201},[84,95445,274],{"class":90},[84,95447,291],{"class":94},[84,95449,102],{"class":90},[74,95451,95453],{"className":76,"code":47433,"filename":1782,"highlights":95452,"language":79,"meta":80,"style":80},[122],[22,95454,95455,95463,95471,95480,95484,95492,95496,95504,95516],{"__ignoreMap":80},[84,95456,95457,95459,95461],{"class":86,"line":87},[84,95458,91],{"class":90},[84,95460,95],{"class":94},[84,95462,102],{"class":90},[84,95464,95465,95467,95469],{"class":86,"line":105},[84,95466,418],{"class":108},[84,95468,1870],{"class":108},[84,95470,175],{"class":90},[84,95472,95474,95476,95478],{"class":95473,"line":122},[86,10151],[84,95475,47458],{"class":90},[84,95477,47461],{"class":118},[84,95479,30865],{"class":90},[84,95481,95482],{"class":86,"line":129},[84,95483,193],{"class":90},[84,95485,95486,95488,95490],{"class":86,"line":154},[84,95487,274],{"class":90},[84,95489,95],{"class":94},[84,95491,102],{"class":90},[84,95493,95494],{"class":86,"line":159},[84,95495,126],{"emptyLinePlaceholder":125},[84,95497,95498,95500,95502],{"class":86,"line":178},[84,95499,91],{"class":90},[84,95501,291],{"class":94},[84,95503,102],{"class":90},[84,95505,95506,95508,95510,95512,95514],{"class":86,"line":190},[84,95507,299],{"class":90},[84,95509,11],{"class":94},[84,95511,47418],{"class":90},[84,95513,11],{"class":94},[84,95515,102],{"class":90},[84,95517,95518,95520,95522],{"class":86,"line":196},[84,95519,274],{"class":90},[84,95521,291],{"class":94},[84,95523,102],{"class":90},[34,95525,47511],{"id":47510},[15,95527,47514,95528,9931,95530,47519,95532,47524],{},[22,95529,24],{},[22,95531,13059],{},[13911,95533,47523],{"href":47522},[74,95535,95536],{"className":46758,"code":47527,"filename":47528,"language":46762,"meta":80,"style":80},[22,95537,95538,95542],{"__ignoreMap":80},[84,95539,95540],{"class":86,"line":87},[84,95541,47535],{"class":13481},[84,95543,95544,95546,95548],{"class":86,"line":105},[84,95545,47540],{"class":90},[84,95547,184],{"class":108},[84,95549,47545],{"class":118},[15,95551,47548,95552,47552,95554,1203],{},[958,95553,47551],{},[958,95555,47555],{},[10842,95557,95558,95564],{},[740,95559,95560,47563,95562,47567],{},[958,95561,47562],{},[22,95563,47566],{},[740,95565,95566,47573],{},[958,95567,47572],{},[34,95569,47577,95570],{"id":47576},[22,95571,47580],{},[24627,95573,95574],{"id":47583},[958,95575,47126],{},[74,95577,95579],{"className":76,"code":47588,"filename":873,"highlights":95578,"language":79,"meta":80,"style":80},[201],[22,95580,95581,95591,95601,95605,95621,95639,95647,95651,95655,95665,95676,95682,95686],{"__ignoreMap":80},[84,95582,95583,95585,95587,95589],{"class":86,"line":87},[84,95584,91],{"class":90},[84,95586,95],{"class":94},[84,95588,99],{"class":98},[84,95590,102],{"class":90},[84,95592,95593,95595,95597,95599],{"class":86,"line":105},[84,95594,109],{"class":108},[84,95596,47608],{"class":90},[84,95598,115],{"class":108},[84,95600,119],{"class":118},[84,95602,95603],{"class":86,"line":122},[84,95604,126],{"emptyLinePlaceholder":125},[84,95606,95607,95609,95611,95613,95615,95617,95619],{"class":86,"line":129},[84,95608,132],{"class":108},[84,95610,47623],{"class":135},[84,95612,139],{"class":108},[84,95614,142],{"class":98},[84,95616,145],{"class":90},[84,95618,47632],{"class":118},[84,95620,151],{"class":90},[84,95622,95623,95625,95627,95629,95631,95633,95635,95637],{"class":86,"line":154},[84,95624,132],{"class":108},[84,95626,47641],{"class":98},[84,95628,139],{"class":108},[84,95630,1341],{"class":90},[84,95632,47648],{"class":429},[84,95634,3126],{"class":90},[84,95636,172],{"class":108},[84,95638,175],{"class":90},[84,95640,95641,95643,95645],{"class":86,"line":159},[84,95642,47659],{"class":90},[84,95644,184],{"class":108},[84,95646,47664],{"class":90},[84,95648,95649],{"class":86,"line":178},[84,95650,193],{"class":90},[84,95652,95653],{"class":86,"line":190},[84,95654,126],{"emptyLinePlaceholder":125},[84,95656,95657,95659,95661,95663],{"class":86,"line":196},[84,95658,47203],{"class":98},[84,95660,145],{"class":90},[84,95662,47681],{"class":118},[84,95664,3146],{"class":90},[84,95666,95668,95670,95672,95674],{"class":95667,"line":201},[86,10151],[84,95669,47689],{"class":90},[84,95671,47580],{"class":98},[84,95673,47694],{"class":90},[84,95675,47697],{"class":13481},[84,95677,95678,95680],{"class":86,"line":217},[84,95679,47702],{"class":90},[84,95681,47705],{"class":13481},[84,95683,95684],{"class":86,"line":227},[84,95685,1492],{"class":90},[84,95687,95688,95690,95692],{"class":86,"line":232},[84,95689,274],{"class":90},[84,95691,95],{"class":94},[84,95693,102],{"class":90},[74,95695,95697],{"className":76,"code":47720,"filename":1782,"highlights":95696,"language":79,"meta":80,"style":80},[331],[22,95698,95699,95707,95717,95721,95729,95735,95741,95747,95751,95755,95759,95769,95779,95783,95787,95793,95799,95803,95807,95811,95817,95821,95835,95844,95848,95852,95856,95860],{"__ignoreMap":80},[84,95700,95701,95703,95705],{"class":86,"line":87},[84,95702,91],{"class":90},[84,95704,95],{"class":94},[84,95706,102],{"class":90},[84,95708,95709,95711,95713,95715],{"class":86,"line":105},[84,95710,109],{"class":108},[84,95712,47738],{"class":90},[84,95714,115],{"class":108},[84,95716,119],{"class":118},[84,95718,95719],{"class":86,"line":122},[84,95720,126],{"emptyLinePlaceholder":125},[84,95722,95723,95725,95727],{"class":86,"line":129},[84,95724,418],{"class":108},[84,95726,1870],{"class":108},[84,95728,175],{"class":90},[84,95730,95731,95733],{"class":86,"line":154},[84,95732,1896],{"class":98},[84,95734,1307],{"class":90},[84,95736,95737,95739],{"class":86,"line":159},[84,95738,1903],{"class":108},[84,95740,175],{"class":90},[84,95742,95743,95745],{"class":86,"line":178},[84,95744,47771],{"class":90},[84,95746,47774],{"class":118},[84,95748,95749],{"class":86,"line":190},[84,95750,1936],{"class":90},[84,95752,95753],{"class":86,"line":196},[84,95754,1941],{"class":90},[84,95756,95757],{"class":86,"line":201},[84,95758,46515],{"class":90},[84,95760,95761,95763,95765,95767],{"class":86,"line":217},[84,95762,47791],{"class":98},[84,95764,145],{"class":90},[84,95766,47648],{"class":429},[84,95768,438],{"class":90},[84,95770,95771,95773,95775,95777],{"class":86,"line":227},[84,95772,9580],{"class":135},[84,95774,47804],{"class":90},[84,95776,184],{"class":108},[84,95778,47664],{"class":90},[84,95780,95781],{"class":86,"line":232},[84,95782,2013],{"class":90},[84,95784,95785],{"class":86,"line":237},[84,95786,1941],{"class":90},[84,95788,95789,95791],{"class":86,"line":253},[84,95790,47821],{"class":98},[84,95792,1307],{"class":90},[84,95794,95795,95797],{"class":86,"line":266},[84,95796,1903],{"class":108},[84,95798,175],{"class":90},[84,95800,95801],{"class":86,"line":271},[84,95802,47834],{"class":13481},[84,95804,95805],{"class":86,"line":281},[84,95806,47839],{"class":13481},[84,95808,95809],{"class":86,"line":286},[84,95810,47844],{"class":13481},[84,95812,95813,95815],{"class":86,"line":296},[84,95814,47849],{"class":118},[84,95816,47852],{"class":90},[84,95818,95819],{"class":86,"line":315},[84,95820,47857],{"class":13481},[84,95822,95823,95825,95827,95829,95831,95833],{"class":86,"line":321},[84,95824,47862],{"class":90},[84,95826,2523],{"class":98},[84,95828,2992],{"class":90},[84,95830,172],{"class":108},[84,95832,2078],{"class":135},[84,95834,47873],{"class":90},[84,95836,95838,95840,95842],{"class":95837,"line":331},[86,10151],[84,95839,47879],{"class":90},[84,95841,2151],{"class":135},[84,95843,47884],{"class":90},[84,95845,95846],{"class":86,"line":336},[84,95847,2013],{"class":90},[84,95849,95850],{"class":86,"line":354},[84,95851,1936],{"class":90},[84,95853,95854],{"class":86,"line":360},[84,95855,485],{"class":90},[84,95857,95858],{"class":86,"line":369},[84,95859,193],{"class":90},[84,95861,95862,95864,95866],{"class":86,"line":1453},[84,95863,274],{"class":90},[84,95865,95],{"class":94},[84,95867,102],{"class":90},[24627,95869,95870],{"id":47911},[958,95871,47334],{},[74,95873,95875],{"className":76,"code":47916,"filename":873,"highlights":95874,"language":79,"meta":80,"style":80},[129],[22,95876,95877,95887,95897,95901,95926,95934,95938,95946,95954,95966,95984,95992],{"__ignoreMap":80},[84,95878,95879,95881,95883,95885],{"class":86,"line":87},[84,95880,91],{"class":90},[84,95882,95],{"class":94},[84,95884,99],{"class":98},[84,95886,102],{"class":90},[84,95888,95889,95891,95893,95895],{"class":86,"line":105},[84,95890,109],{"class":108},[84,95892,47358],{"class":90},[84,95894,115],{"class":108},[84,95896,119],{"class":118},[84,95898,95899],{"class":86,"line":122},[84,95900,126],{"emptyLinePlaceholder":125},[84,95902,95904,95906,95908,95910,95912,95914,95916,95918,95920,95922,95924],{"class":95903,"line":129},[86,10151],[84,95905,132],{"class":108},[84,95907,6763],{"class":90},[84,95909,47953],{"class":135},[84,95911,754],{"class":90},[84,95913,47958],{"class":135},[84,95915,18230],{"class":90},[84,95917,184],{"class":108},[84,95919,47383],{"class":98},[84,95921,145],{"class":90},[84,95923,47681],{"class":118},[84,95925,151],{"class":90},[84,95927,95928,95930,95932],{"class":86,"line":154},[84,95929,274],{"class":90},[84,95931,95],{"class":94},[84,95933,102],{"class":90},[84,95935,95936],{"class":86,"line":159},[84,95937,126],{"emptyLinePlaceholder":125},[84,95939,95940,95942,95944],{"class":86,"line":178},[84,95941,91],{"class":90},[84,95943,291],{"class":94},[84,95945,102],{"class":90},[84,95947,95948,95950,95952],{"class":86,"line":190},[84,95949,299],{"class":90},[84,95951,4978],{"class":94},[84,95953,102],{"class":90},[84,95955,95956,95958,95960,95962,95964],{"class":86,"line":196},[84,95957,1642],{"class":90},[84,95959,15],{"class":94},[84,95961,48007],{"class":90},[84,95963,15],{"class":94},[84,95965,102],{"class":90},[84,95967,95968,95970,95972,95974,95976,95978,95980,95982],{"class":86,"line":201},[84,95969,1642],{"class":90},[84,95971,302],{"class":94},[84,95973,305],{"class":98},[84,95975,184],{"class":90},[84,95977,48024],{"class":118},[84,95979,48027],{"class":90},[84,95981,302],{"class":94},[84,95983,102],{"class":90},[84,95985,95986,95988,95990],{"class":86,"line":217},[84,95987,324],{"class":90},[84,95989,4978],{"class":94},[84,95991,102],{"class":90},[84,95993,95994,95996,95998],{"class":86,"line":227},[84,95995,274],{"class":90},[84,95997,291],{"class":94},[84,95999,102],{"class":90},[74,96001,96003],{"className":76,"code":48050,"filename":1782,"highlights":96002,"language":79,"meta":80,"style":80},[178,237],[22,96004,96005,96013,96021,96025,96029,96037,96047,96056,96066,96070,96074,96078,96082,96088,96097,96101,96105,96109,96115,96129,96133,96137,96141,96149,96153,96161,96169,96181,96199,96207],{"__ignoreMap":80},[84,96006,96007,96009,96011],{"class":86,"line":87},[84,96008,91],{"class":90},[84,96010,95],{"class":94},[84,96012,102],{"class":90},[84,96014,96015,96017,96019],{"class":86,"line":105},[84,96016,418],{"class":108},[84,96018,1870],{"class":108},[84,96020,175],{"class":90},[84,96022,96023],{"class":86,"line":122},[84,96024,48074],{"class":90},[84,96026,96027],{"class":86,"line":129},[84,96028,48079],{"class":90},[84,96030,96031,96033,96035],{"class":86,"line":154},[84,96032,48084],{"class":90},[84,96034,47681],{"class":118},[84,96036,1887],{"class":90},[84,96038,96039,96041,96043,96045],{"class":86,"line":159},[84,96040,48093],{"class":98},[84,96042,4568],{"class":90},[84,96044,172],{"class":108},[84,96046,36798],{"class":90},[84,96048,96050,96052,96054],{"class":96049,"line":178},[86,10151],[84,96051,48105],{"class":90},[84,96053,47632],{"class":118},[84,96055,2921],{"class":90},[84,96057,96058,96060,96062,96064],{"class":86,"line":190},[84,96059,48114],{"class":98},[84,96061,4568],{"class":90},[84,96063,172],{"class":108},[84,96065,45834],{"class":90},[84,96067,96068],{"class":86,"line":196},[84,96069,3638],{"class":90},[84,96071,96072],{"class":86,"line":201},[84,96073,1936],{"class":90},[84,96075,96076],{"class":86,"line":217},[84,96077,1941],{"class":90},[84,96079,96080],{"class":86,"line":227},[84,96081,3527],{"class":90},[84,96083,96084,96086],{"class":86,"line":232},[84,96085,48141],{"class":98},[84,96087,1307],{"class":90},[84,96089,96091,96093,96095],{"class":96090,"line":237},[86,10151],[84,96092,3539],{"class":108},[84,96094,2078],{"class":135},[84,96096,48153],{"class":90},[84,96098,96099],{"class":86,"line":253},[84,96100,1936],{"class":90},[84,96102,96103],{"class":86,"line":266},[84,96104,1941],{"class":90},[84,96106,96107],{"class":86,"line":271},[84,96108,1950],{"class":90},[84,96110,96111,96113],{"class":86,"line":281},[84,96112,48170],{"class":98},[84,96114,1307],{"class":90},[84,96116,96117,96119,96121,96123,96125,96127],{"class":86,"line":286},[84,96118,2022],{"class":135},[84,96120,48179],{"class":90},[84,96122,47958],{"class":98},[84,96124,145],{"class":90},[84,96126,48186],{"class":118},[84,96128,151],{"class":90},[84,96130,96131],{"class":86,"line":296},[84,96132,1936],{"class":90},[84,96134,96135],{"class":86,"line":315},[84,96136,485],{"class":90},[84,96138,96139],{"class":86,"line":321},[84,96140,193],{"class":90},[84,96142,96143,96145,96147],{"class":86,"line":331},[84,96144,274],{"class":90},[84,96146,95],{"class":94},[84,96148,102],{"class":90},[84,96150,96151],{"class":86,"line":336},[84,96152,126],{"emptyLinePlaceholder":125},[84,96154,96155,96157,96159],{"class":86,"line":354},[84,96156,91],{"class":90},[84,96158,291],{"class":94},[84,96160,102],{"class":90},[84,96162,96163,96165,96167],{"class":86,"line":360},[84,96164,299],{"class":90},[84,96166,4978],{"class":94},[84,96168,102],{"class":90},[84,96170,96171,96173,96175,96177,96179],{"class":86,"line":369},[84,96172,1642],{"class":90},[84,96174,15],{"class":94},[84,96176,48237],{"class":90},[84,96178,15],{"class":94},[84,96180,102],{"class":90},[84,96182,96183,96185,96187,96189,96191,96193,96195,96197],{"class":86,"line":1453},[84,96184,1642],{"class":90},[84,96186,302],{"class":94},[84,96188,305],{"class":98},[84,96190,184],{"class":90},[84,96192,48254],{"class":118},[84,96194,48027],{"class":90},[84,96196,302],{"class":94},[84,96198,102],{"class":90},[84,96200,96201,96203,96205],{"class":86,"line":1462},[84,96202,324],{"class":90},[84,96204,4978],{"class":94},[84,96206,102],{"class":90},[84,96208,96209,96211,96213],{"class":86,"line":1484},[84,96210,274],{"class":90},[84,96212,291],{"class":94},[84,96214,102],{"class":90},[34,96216,48280],{"id":48279},[15,96218,48283,96219,48287],{},[22,96220,48286],{},[74,96222,96224],{"className":46758,"code":48290,"filename":48291,"highlights":96223,"language":46762,"meta":80,"style":80},[105],[22,96225,96226,96230],{"__ignoreMap":80},[84,96227,96228],{"class":86,"line":87},[84,96229,48299],{"class":13481},[84,96231,96233,96235,96237,96239,96241,96243,96245,96247,96249,96251,96253],{"class":96232,"line":105},[86,10151],[84,96234,132],{"class":108},[84,96236,48307],{"class":135},[84,96238,139],{"class":108},[84,96240,47383],{"class":98},[84,96242,145],{"class":90},[84,96244,48316],{"class":118},[84,96246,48319],{"class":90},[84,96248,48322],{"class":118},[84,96250,48325],{"class":90},[84,96252,148],{"class":135},[84,96254,17610],{"class":90},[34,96256,48333],{"id":48332},[15,96258,48336],{},[737,96260,96261,96263,96265],{},[740,96262,48341],{},[740,96264,48344],{},[740,96266,48347],{},[24627,96268,96269],{"id":48350},[958,96270,48353],{},[74,96272,96274],{"className":46758,"code":48356,"filename":20153,"highlights":96273,"language":46762,"meta":80,"style":80},[178,190],[22,96275,96276,96286,96296,96300,96312,96316,96320,96337,96354,96366,96380,96396,96400,96404,96408],{"__ignoreMap":80},[84,96277,96278,96280,96282,96284],{"class":86,"line":87},[84,96279,109],{"class":108},[84,96281,46058],{"class":90},[84,96283,115],{"class":108},[84,96285,119],{"class":118},[84,96287,96288,96290,96292,96294],{"class":86,"line":105},[84,96289,109],{"class":108},[84,96291,46069],{"class":90},[84,96293,115],{"class":108},[84,96295,46074],{"class":118},[84,96297,96298],{"class":86,"line":122},[84,96299,126],{"emptyLinePlaceholder":125},[84,96301,96302,96304,96306,96308,96310],{"class":86,"line":129},[84,96303,132],{"class":108},[84,96305,46081],{"class":135},[84,96307,139],{"class":108},[84,96309,46086],{"class":98},[84,96311,46089],{"class":90},[84,96313,96314],{"class":86,"line":154},[84,96315,126],{"emptyLinePlaceholder":125},[84,96317,96318],{"class":86,"line":159},[84,96319,48404],{"class":13481},[84,96321,96323,96325,96327,96329,96331,96333,96335],{"class":96322,"line":178},[86,10151],[84,96324,46095],{"class":90},[84,96326,47203],{"class":98},[84,96328,145],{"class":90},[84,96330,48416],{"class":118},[84,96332,754],{"class":90},[84,96334,48421],{"class":118},[84,96336,151],{"class":90},[84,96338,96340,96342,96344,96346,96348,96350,96352],{"class":96339,"line":190},[86,10151],[84,96341,46095],{"class":90},[84,96343,47203],{"class":98},[84,96345,145],{"class":90},[84,96347,48435],{"class":118},[84,96349,754],{"class":90},[84,96351,48440],{"class":118},[84,96353,151],{"class":90},[84,96355,96356,96358,96360,96362,96364],{"class":86,"line":196},[84,96357,46095],{"class":90},[84,96359,47203],{"class":98},[84,96361,145],{"class":90},[84,96363,48453],{"class":118},[84,96365,3146],{"class":90},[84,96367,96368,96370,96372,96374,96376,96378],{"class":86,"line":201},[84,96369,48460],{"class":98},[84,96371,48463],{"class":90},[84,96373,48466],{"class":429},[84,96375,3126],{"class":90},[84,96377,172],{"class":108},[84,96379,175],{"class":90},[84,96381,96382,96384,96386,96388,96390,96392,96394],{"class":86,"line":217},[84,96383,3666],{"class":90},[84,96385,3138],{"class":98},[84,96387,145],{"class":90},[84,96389,48483],{"class":118},[84,96391,48466],{"class":90},[84,96393,4666],{"class":118},[84,96395,151],{"class":90},[84,96397,96398],{"class":86,"line":227},[84,96399,485],{"class":90},[84,96401,96402],{"class":86,"line":232},[84,96403,1492],{"class":90},[84,96405,96406],{"class":86,"line":237},[84,96407,126],{"emptyLinePlaceholder":125},[84,96409,96410,96412,96414,96416,96418],{"class":86,"line":253},[84,96411,46095],{"class":90},[84,96413,48508],{"class":98},[84,96415,145],{"class":90},[84,96417,48513],{"class":118},[84,96419,151],{"class":90},[24627,96421,96422],{"id":48518},[958,96423,48521],{},[74,96425,96427],{"className":76,"code":48524,"filename":48525,"highlights":96426,"language":79,"meta":80,"style":80},[129,154],[22,96428,96429,96439,96449,96453,96470,96487,96503,96507,96521,96533,96537,96545,96549,96557,96571,96583,96601,96609],{"__ignoreMap":80},[84,96430,96431,96433,96435,96437],{"class":86,"line":87},[84,96432,91],{"class":90},[84,96434,95],{"class":94},[84,96436,99],{"class":98},[84,96438,102],{"class":90},[84,96440,96441,96443,96445,96447],{"class":86,"line":105},[84,96442,109],{"class":108},[84,96444,47358],{"class":90},[84,96446,115],{"class":108},[84,96448,119],{"class":118},[84,96450,96451],{"class":86,"line":122},[84,96452,126],{"emptyLinePlaceholder":125},[84,96454,96456,96458,96460,96462,96464,96466,96468],{"class":96455,"line":129},[86,10151],[84,96457,132],{"class":108},[84,96459,48560],{"class":135},[84,96461,139],{"class":108},[84,96463,47383],{"class":98},[84,96465,145],{"class":90},[84,96467,48416],{"class":118},[84,96469,151],{"class":90},[84,96471,96473,96475,96477,96479,96481,96483,96485],{"class":96472,"line":154},[86,10151],[84,96474,132],{"class":108},[84,96476,48578],{"class":135},[84,96478,139],{"class":108},[84,96480,47383],{"class":98},[84,96482,145],{"class":90},[84,96484,48435],{"class":118},[84,96486,151],{"class":90},[84,96488,96489,96491,96493,96495,96497,96499,96501],{"class":86,"line":159},[84,96490,132],{"class":108},[84,96492,48595],{"class":135},[84,96494,139],{"class":108},[84,96496,47383],{"class":98},[84,96498,145],{"class":90},[84,96500,48453],{"class":118},[84,96502,151],{"class":90},[84,96504,96505],{"class":86,"line":178},[84,96506,126],{"emptyLinePlaceholder":125},[84,96508,96509,96511,96513,96515,96517,96519],{"class":86,"line":190},[84,96510,132],{"class":108},[84,96512,48616],{"class":98},[84,96514,139],{"class":108},[84,96516,169],{"class":90},[84,96518,172],{"class":108},[84,96520,175],{"class":90},[84,96522,96523,96525,96527,96529,96531],{"class":86,"line":196},[84,96524,48629],{"class":90},[84,96526,48632],{"class":98},[84,96528,145],{"class":90},[84,96530,48637],{"class":118},[84,96532,151],{"class":90},[84,96534,96535],{"class":86,"line":201},[84,96536,193],{"class":90},[84,96538,96539,96541,96543],{"class":86,"line":217},[84,96540,274],{"class":90},[84,96542,95],{"class":94},[84,96544,102],{"class":90},[84,96546,96547],{"class":86,"line":227},[84,96548,126],{"emptyLinePlaceholder":125},[84,96550,96551,96553,96555],{"class":86,"line":232},[84,96552,91],{"class":90},[84,96554,291],{"class":94},[84,96556,102],{"class":90},[84,96558,96559,96561,96563,96565,96567,96569],{"class":86,"line":237},[84,96560,299],{"class":90},[84,96562,4978],{"class":94},[84,96564,37024],{"class":98},[84,96566,184],{"class":90},[84,96568,48676],{"class":118},[84,96570,102],{"class":90},[84,96572,96573,96575,96577,96579,96581],{"class":86,"line":253},[84,96574,1642],{"class":90},[84,96576,15],{"class":94},[84,96578,48687],{"class":90},[84,96580,15],{"class":94},[84,96582,102],{"class":90},[84,96584,96585,96587,96589,96591,96593,96595,96597,96599],{"class":86,"line":266},[84,96586,1642],{"class":90},[84,96588,302],{"class":94},[84,96590,305],{"class":98},[84,96592,184],{"class":90},[84,96594,48704],{"class":118},[84,96596,48707],{"class":90},[84,96598,302],{"class":94},[84,96600,102],{"class":90},[84,96602,96603,96605,96607],{"class":86,"line":271},[84,96604,324],{"class":90},[84,96606,4978],{"class":94},[84,96608,102],{"class":90},[84,96610,96611,96613,96615],{"class":86,"line":281},[84,96612,274],{"class":90},[84,96614,291],{"class":94},[84,96616,102],{"class":90},[24627,96618,48731],{"id":48730},[737,96620,96621,96623,96625],{},[740,96622,48736],{},[740,96624,48739],{},[740,96626,48742],{},[823,96628,96629],{},[15,96630,96631,48750,96633,764],{},[958,96632,48749],{},[22,96634,48753],{},[34,96636,48757],{"id":48756},[15,96638,48760,96639,48764,96641,48768],{},[22,96640,48763],{},[958,96642,48767],{},[10842,96644,96645,96655],{},[740,96646,96647,48775,96649,48779,96651,48782,96653,764],{},[958,96648,47106],{},[22,96650,48778],{},[22,96652,48778],{},[22,96654,48785],{},[740,96656,96657,48790],{},[958,96658,47112],{},[15,96660,48793],{},[34,96662,48797],{"id":48796},[6160,96664,96665,96675],{},[6163,96666,96667],{},[6166,96668,96669,96671,96673],{},[6169,96670,46871],{},[6169,96672,48808],{},[6169,96674,48811],{},[6182,96676,96677,96687,96699,96709],{},[6166,96678,96679,96683,96685],{},[6187,96680,96681],{},[958,96682,48820],{},[6187,96684,48823],{},[6187,96686,48826],{},[6166,96688,96689,96693,96695],{},[6187,96690,96691],{},[958,96692,48833],{},[6187,96694,48836],{},[6187,96696,48839,96697,48842],{},[22,96698,47566],{},[6166,96700,96701,96705,96707],{},[6187,96702,96703],{},[958,96704,48849],{},[6187,96706,48852],{},[6187,96708,48855],{},[6166,96710,96711,96715,96717],{},[6187,96712,96713],{},[958,96714,48862],{},[6187,96716,48865],{},[6187,96718,48868,96719],{},[22,96720,48871],{},[34,96722,48875],{"id":48874},[737,96724,96725,96729,96733],{},[740,96726,96727,48883],{},[958,96728,48882],{},[740,96730,96731,48889],{},[958,96732,48888],{},[740,96734,96735,48895],{},[958,96736,48894],{},[34,96738,18395],{"id":18394},[15,96740,96741,47054,96743,48904,96745,48907],{},[22,96742,47053],{},[22,96744,48286],{},[958,96746,47047],{},[10842,96748,96749,96755,96759,96763],{},[740,96750,96751,48915,96753],{},[958,96752,48914],{},[22,96754,47566],{},[740,96756,96757,48923],{},[958,96758,48922],{},[740,96760,96761,48929],{},[958,96762,48928],{},[740,96764,96765,48935],{},[958,96766,48934],{},[15,96768,48938],{},[835,96770,48941],{},{"title":80,"searchDepth":105,"depth":105,"links":96772},[96773,96774,96775,96776,96777,96778,96779,96780,96781,96782,96783],{"id":47061,"depth":105,"text":47062},{"id":47092,"depth":105,"text":48946},{"id":47116,"depth":105,"text":47117},{"id":47510,"depth":105,"text":47511},{"id":47576,"depth":105,"text":48950},{"id":48279,"depth":105,"text":48280},{"id":48332,"depth":105,"text":48333},{"id":48756,"depth":105,"text":48757},{"id":48796,"depth":105,"text":48797},{"id":48874,"depth":105,"text":48875},{"id":18394,"depth":105,"text":18395},{"updatedAt":47012,"coverCaption":48961,"author":868,"keywords":96785},[870,47053,47057,47047,873,18479],[96787],{"headline":47035,"author":96788,"datePublished":48967,"@type":880},{"name":868,"@type":879},{"title":47035,"description":48959},[96791,96792,96793,96794,96795,96796],{"tag":48972,"color":48973},{"tag":48975,"color":48976},{"tag":2458,"color":2459},{"tag":47016,"color":47027},{"tag":888,"color":889},{"tag":891,"color":892},{"id":48983,"title":47523,"body":96798,"cover":49620,"coverAlt":49621,"date":49622,"description":49623,"draft":852,"extension":853,"lab":97333,"locale":864,"meta":97335,"navigation":125,"path":49637,"schemaOrg":97337,"seo":97340,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":49644,"tags":97341,"__hash__":49651},{"type":8,"value":96799,"toc":97322},[96800,96802,96804,96806,96808,96810,96822,96824,96830,96832,96834,96838,96846,96856,96860,96864,96866,96872,96878,96880,96934,96940,96942,96944,96958,96960,96962,96964,96978,96998,97000,97052,97054,97184,97318,97320],[11,96801,47523],{"id":48988},[15,96803,48991],{},[15,96805,48994],{},[34,96807,48998],{"id":48997},[15,96809,49001],{},[15,96811,49004,96812,49008,96814,49012,96816,49015,96818,50,96820,49022],{},[958,96813,49007],{},[22,96815,49011],{},[958,96817,49007],{},[958,96819,49018],{},[958,96821,49021],{},[15,96823,49025],{},[823,96825,96826],{},[15,96827,96828,49033],{},[958,96829,49032],{},[34,96831,49037],{"id":49036},[15,96833,49040],{},[1074,96835,49044,96836],{"id":49043},[22,96837,49047],{},[15,96839,49050,96840,2488,96842,49057,96844,764],{},[4070,96841,49053],{},[4070,96843,49056],{},[22,96845,49047],{},[737,96847,96848],{},[740,96849,96850,49067,96852,49071,96854,764],{},[958,96851,49066],{},[22,96853,49070],{},[22,96855,49074],{},[1074,96857,49078,96858],{"id":49077},[22,96859,17701],{},[15,96861,49083,96862,48768],{},[958,96863,49086],{},[15,96865,49089],{},[737,96867,96868],{},[740,96869,96870,49097],{},[958,96871,49096],{},[34,96873,49101,96874,13234,96876],{"id":49100},[22,96875,49],{},[22,96877,53],{},[15,96879,49108],{},[6160,96881,96882,96896],{},[6163,96883,96884],{},[6166,96885,96886,96888,96892],{},[6169,96887,46871],{},[6169,96889,96890],{},[22,96891,49],{},[6169,96893,96894],{},[22,96895,53],{},[6182,96897,96898,96906,96916,96926],{},[6166,96899,96900,96902,96904],{},[6187,96901,49131],{},[6187,96903,49134],{},[6187,96905,49137],{},[6166,96907,96908,96910,96914],{},[6187,96909,49142],{},[6187,96911,96912],{},[22,96913,17800],{},[6187,96915,49149],{},[6166,96917,96918,96922,96924],{},[6187,96919,995,96920],{},[22,96921,26850],{},[6187,96923,49158],{},[6187,96925,49149],{},[6166,96927,96928,96930,96932],{},[6187,96929,49165],{},[6187,96931,49168],{},[6187,96933,49171],{},[15,96935,49174,96936,49177,96938,764],{},[22,96937,24],{},[22,96939,13059],{},[34,96941,49183],{"id":49182},[15,96943,49186],{},[10842,96945,96946,96950,96954],{},[740,96947,96948,49194],{},[958,96949,49193],{},[740,96951,96952,49200],{},[958,96953,49199],{},[740,96955,96956,49206],{},[958,96957,49205],{},[15,96959,49209],{},[34,96961,49213],{"id":49212},[15,96963,49216],{},[737,96965,96966,96974],{},[740,96967,96968,49228],{},[958,96969,96970,2488,96972,1203],{},[22,96971,18274],{},[22,96973,49227],{},[740,96975,96976,49234],{},[958,96977,49233],{},[74,96979,96980],{"className":46758,"code":49237,"filename":49238,"language":46762,"meta":80,"style":80},[22,96981,96982],{"__ignoreMap":80},[84,96983,96984,96986,96988,96990,96992,96994,96996],{"class":86,"line":87},[84,96985,132],{"class":108},[84,96987,6763],{"class":90},[84,96989,49249],{"class":135},[84,96991,18230],{"class":90},[84,96993,184],{"class":108},[84,96995,49256],{"class":90},[84,96997,49259],{"class":13481},[15,96999,49262],{},[74,97001,97002],{"className":46758,"code":49265,"filename":49238,"language":46762,"meta":80,"style":80},[22,97003,97004,97016,97020,97036],{"__ignoreMap":80},[84,97005,97006,97008,97010,97012,97014],{"class":86,"line":87},[84,97007,109],{"class":108},[84,97009,49274],{"class":90},[84,97011,115],{"class":108},[84,97013,46336],{"class":118},[84,97015,18869],{"class":90},[84,97017,97018],{"class":86,"line":105},[84,97019,126],{"emptyLinePlaceholder":125},[84,97021,97022,97024,97026,97028,97030,97032,97034],{"class":86,"line":122},[84,97023,132],{"class":108},[84,97025,49291],{"class":135},[84,97027,139],{"class":108},[84,97029,2814],{"class":98},[84,97031,49298],{"class":90},[84,97033,37815],{"class":118},[84,97035,30089],{"class":90},[84,97037,97038,97040,97042,97044,97046,97048,97050],{"class":86,"line":129},[84,97039,132],{"class":108},[84,97041,6763],{"class":90},[84,97043,49249],{"class":135},[84,97045,18230],{"class":90},[84,97047,184],{"class":108},[84,97049,49317],{"class":98},[84,97051,49320],{"class":90},[34,97053,49324],{"id":49323},[74,97055,97056],{"className":76,"code":49327,"filename":873,"language":79,"meta":80,"style":80},[22,97057,97058,97068,97080,97084,97100,97104,97118,97126,97130,97138,97142,97150,97164,97168,97176],{"__ignoreMap":80},[84,97059,97060,97062,97064,97066],{"class":86,"line":87},[84,97061,91],{"class":90},[84,97063,95],{"class":94},[84,97065,99],{"class":98},[84,97067,102],{"class":90},[84,97069,97070,97072,97074,97076,97078],{"class":86,"line":105},[84,97071,109],{"class":108},[84,97073,112],{"class":90},[84,97075,115],{"class":108},[84,97077,46336],{"class":118},[84,97079,18869],{"class":90},[84,97081,97082],{"class":86,"line":122},[84,97083,126],{"emptyLinePlaceholder":125},[84,97085,97086,97088,97090,97092,97094,97096,97098],{"class":86,"line":129},[84,97087,132],{"class":108},[84,97089,49362],{"class":135},[84,97091,139],{"class":108},[84,97093,142],{"class":98},[84,97095,145],{"class":90},[84,97097,4320],{"class":135},[84,97099,18994],{"class":90},[84,97101,97102],{"class":86,"line":154},[84,97103,126],{"emptyLinePlaceholder":125},[84,97105,97106,97108,97110,97112,97114,97116],{"class":86,"line":159},[84,97107,132],{"class":108},[84,97109,49383],{"class":98},[84,97111,139],{"class":108},[84,97113,169],{"class":90},[84,97115,172],{"class":108},[84,97117,175],{"class":90},[84,97119,97120,97122,97124],{"class":86,"line":178},[84,97121,49396],{"class":90},[84,97123,49399],{"class":108},[84,97125,18869],{"class":90},[84,97127,97128],{"class":86,"line":190},[84,97129,18973],{"class":90},[84,97131,97132,97134,97136],{"class":86,"line":196},[84,97133,274],{"class":90},[84,97135,95],{"class":94},[84,97137,102],{"class":90},[84,97139,97140],{"class":86,"line":201},[84,97141,126],{"emptyLinePlaceholder":125},[84,97143,97144,97146,97148],{"class":86,"line":217},[84,97145,91],{"class":90},[84,97147,291],{"class":94},[84,97149,102],{"class":90},[84,97151,97152,97154,97156,97158,97160,97162],{"class":86,"line":227},[84,97153,299],{"class":90},[84,97155,302],{"class":94},[84,97157,305],{"class":98},[84,97159,184],{"class":90},[84,97161,49438],{"class":118},[84,97163,102],{"class":90},[84,97165,97166],{"class":86,"line":232},[84,97167,49445],{"class":90},[84,97169,97170,97172,97174],{"class":86,"line":237},[84,97171,324],{"class":90},[84,97173,302],{"class":94},[84,97175,102],{"class":90},[84,97177,97178,97180,97182],{"class":86,"line":253},[84,97179,274],{"class":90},[84,97181,291],{"class":94},[84,97183,102],{"class":90},[74,97185,97186],{"className":76,"code":49464,"filename":1782,"language":79,"meta":80,"style":80},[22,97187,97188,97196,97204,97210,97216,97224,97228,97232,97236,97242,97252,97256,97260,97264,97272,97276,97284,97298,97302,97310],{"__ignoreMap":80},[84,97189,97190,97192,97194],{"class":86,"line":87},[84,97191,91],{"class":90},[84,97193,95],{"class":94},[84,97195,102],{"class":90},[84,97197,97198,97200,97202],{"class":86,"line":105},[84,97199,418],{"class":108},[84,97201,1870],{"class":108},[84,97203,175],{"class":90},[84,97205,97206,97208],{"class":86,"line":122},[84,97207,1896],{"class":98},[84,97209,1307],{"class":90},[84,97211,97212,97214],{"class":86,"line":129},[84,97213,1903],{"class":108},[84,97215,175],{"class":90},[84,97217,97218,97220,97222],{"class":86,"line":154},[84,97219,49499],{"class":90},[84,97221,4320],{"class":135},[84,97223,1887],{"class":90},[84,97225,97226],{"class":86,"line":159},[84,97227,19195],{"class":90},[84,97229,97230],{"class":86,"line":178},[84,97231,1941],{"class":90},[84,97233,97234],{"class":86,"line":190},[84,97235,1950],{"class":90},[84,97237,97238,97240],{"class":86,"line":196},[84,97239,49520],{"class":98},[84,97241,1307],{"class":90},[84,97243,97244,97246,97248,97250],{"class":86,"line":201},[84,97245,2022],{"class":135},[84,97247,49529],{"class":90},[84,97249,49399],{"class":108},[84,97251,18869],{"class":90},[84,97253,97254],{"class":86,"line":217},[84,97255,7783],{"class":90},[84,97257,97258],{"class":86,"line":227},[84,97259,1941],{"class":90},[84,97261,97262],{"class":86,"line":232},[84,97263,18973],{"class":90},[84,97265,97266,97268,97270],{"class":86,"line":237},[84,97267,274],{"class":90},[84,97269,95],{"class":94},[84,97271,102],{"class":90},[84,97273,97274],{"class":86,"line":253},[84,97275,126],{"emptyLinePlaceholder":125},[84,97277,97278,97280,97282],{"class":86,"line":266},[84,97279,91],{"class":90},[84,97281,291],{"class":94},[84,97283,102],{"class":90},[84,97285,97286,97288,97290,97292,97294,97296],{"class":86,"line":271},[84,97287,299],{"class":90},[84,97289,302],{"class":94},[84,97291,305],{"class":98},[84,97293,184],{"class":90},[84,97295,49438],{"class":118},[84,97297,102],{"class":90},[84,97299,97300],{"class":86,"line":281},[84,97301,49445],{"class":90},[84,97303,97304,97306,97308],{"class":86,"line":286},[84,97305,324],{"class":90},[84,97307,302],{"class":94},[84,97309,102],{"class":90},[84,97311,97312,97314,97316],{"class":86,"line":296},[84,97313,274],{"class":90},[84,97315,291],{"class":94},[84,97317,102],{"class":90},[15,97319,49602],{},[835,97321,49605],{},{"title":80,"searchDepth":105,"depth":105,"links":97323},[97324,97325,97329,97330,97331,97332],{"id":48997,"depth":105,"text":48998},{"id":49036,"depth":105,"text":49037,"children":97326},[97327,97328],{"id":49043,"depth":122,"text":49612},{"id":49077,"depth":122,"text":49614},{"id":49100,"depth":105,"text":49616},{"id":49182,"depth":105,"text":49183},{"id":49212,"depth":105,"text":49213},{"id":49323,"depth":105,"text":49324},{"title":49625,"goal":49626,"tasks":97334,"starterCode":49632,"solutionHint":49633},[49628,49629,49630,49631],{"updatedAt":47012,"coverCaption":49635,"author":868,"keywords":97336},[870,3945,49086,873,24,13059],[97338],{"headline":49640,"author":97339,"datePublished":49642,"@type":880},{"name":868,"@type":879},{"title":47523,"description":49623},[97342,97343,97344],{"tag":3945,"color":3946},{"tag":894,"color":895},{"tag":49649,"color":49650},{"id":49653,"title":49640,"body":97346,"cover":50492,"coverAlt":50493,"date":50494,"description":50495,"draft":852,"extension":853,"lab":882,"locale":864,"meta":98006,"navigation":125,"path":50499,"schemaOrg":98007,"seo":98010,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":50505,"tags":98011,"__hash__":50517},{"type":8,"value":97347,"toc":97986},[97348,97350,97356,97360,97362,97368,97370,97374,97376,97406,97412,97416,97420,97422,97428,97432,97436,97452,97456,97474,97476,97478,97480,97566,97574,97576,97584,97586,97588,97728,97732,97734,97810,97812,97814,97816,97828,97840,97852,97864,97866,97870,97940,97942,97946,97976,97978,97984],[11,97349,49640],{"id":49658},[15,97351,49661,97352,49665,97354,49669],{},[958,97353,49664],{},[958,97355,49668],{},[15,97357,49672,97358,764],{},[22,97359,49675],{},[34,97361,49679],{"id":49678},[15,97363,49682,97364,49686,97366,764],{},[958,97365,49685],{},[958,97367,49689],{},[1074,97369,49693],{"id":49692},[15,97371,49696,97372,49700],{},[958,97373,49699],{},[15,97375,49703],{},[737,97377,97378,97388,97398],{},[740,97379,97380,49711,97382,754,97384,49716,97386,764],{},[958,97381,49710],{},[22,97383,8299],{},[22,97385,25577],{},[22,97387,18689],{},[740,97389,97390,49724,97392,49727,97394,49731,97396,764],{},[958,97391,49723],{},[4070,97393,46292],{},[22,97395,49730],{},[22,97397,8249],{},[740,97399,97400,49739,97402,49743,97404,764],{},[958,97401,49738],{},[22,97403,49742],{},[22,97405,49746],{},[823,97407,97408],{},[15,97409,97410,49754],{},[958,97411,49753],{},[34,97413,49758,97414,49762],{"id":49757},[22,97415,49761],{},[15,97417,49765,97418,49768],{},[958,97419,49675],{},[1074,97421,49772],{"id":49771},[15,97423,49775,97424,49778,97426,49781],{},[22,97425,17701],{},[22,97427,49675],{},[24627,97429,49785,97430,49788],{"id":49784},[22,97431,16550],{},[15,97433,49791,97434,764],{},[22,97435,16550],{},[737,97437,97438,97446],{},[740,97439,97440,49801,97442,49804,97444,2686],{},[958,97441,49800],{},[22,97443,16550],{},[4070,97445,49807],{},[740,97447,97448,49813,97450,49817],{},[958,97449,49812],{},[958,97451,49816],{},[15,97453,97454],{},[958,97455,49822],{},[10842,97457,97458,97464,97468],{},[740,97459,97460,49830,97462,49834],{},[958,97461,49829],{},[958,97463,49833],{},[740,97465,97466,49840],{},[958,97467,49839],{},[740,97469,97470,49846,97472,49849],{},[958,97471,49845],{},[22,97473,2523],{},[34,97475,49853],{"id":49852},[15,97477,49856],{},[1074,97479,49860],{"id":49859},[74,97481,97482],{"className":76,"code":49863,"filename":873,"language":79,"meta":80,"style":80},[22,97483,97484,97494,97504,97520,97528,97532,97540,97558],{"__ignoreMap":80},[84,97485,97486,97488,97490,97492],{"class":86,"line":87},[84,97487,91],{"class":90},[84,97489,95],{"class":94},[84,97491,99],{"class":98},[84,97493,102],{"class":90},[84,97495,97496,97498,97500,97502],{"class":86,"line":105},[84,97497,109],{"class":108},[84,97499,112],{"class":90},[84,97501,115],{"class":108},[84,97503,119],{"class":118},[84,97505,97506,97508,97510,97512,97514,97516,97518],{"class":86,"line":122},[84,97507,132],{"class":108},[84,97509,10133],{"class":135},[84,97511,139],{"class":108},[84,97513,142],{"class":98},[84,97515,145],{"class":90},[84,97517,4320],{"class":135},[84,97519,151],{"class":90},[84,97521,97522,97524,97526],{"class":86,"line":129},[84,97523,274],{"class":90},[84,97525,95],{"class":94},[84,97527,102],{"class":90},[84,97529,97530],{"class":86,"line":154},[84,97531,126],{"emptyLinePlaceholder":125},[84,97533,97534,97536,97538],{"class":86,"line":159},[84,97535,91],{"class":90},[84,97537,291],{"class":94},[84,97539,102],{"class":90},[84,97541,97542,97544,97546,97548,97550,97552,97554,97556],{"class":86,"line":178},[84,97543,299],{"class":90},[84,97545,302],{"class":94},[84,97547,305],{"class":98},[84,97549,184],{"class":90},[84,97551,13204],{"class":118},[84,97553,49936],{"class":90},[84,97555,302],{"class":94},[84,97557,102],{"class":90},[84,97559,97560,97562,97564],{"class":86,"line":190},[84,97561,274],{"class":90},[84,97563,291],{"class":94},[84,97565,102],{"class":90},[74,97567,97568],{"className":76,"code":49951,"filename":1782,"language":79,"meta":80,"style":80},[22,97569,97570],{"__ignoreMap":80},[84,97571,97572],{"class":86,"line":87},[84,97573,49951],{"class":90},[1074,97575,49961],{"id":49960},[15,97577,49964,97578,49967,97580,49970,97582,49974],{},[22,97579,18227],{},[958,97581,47648],{},[4070,97583,49973],{},[1074,97585,49978],{"id":49977},[15,97587,49981],{},[74,97589,97590],{"className":46758,"code":49984,"filename":49985,"language":46762,"meta":80,"style":80},[22,97591,97592,97602,97606,97624,97628,97642,97654,97672,97676,97680,97690,97710,97714,97718,97724],{"__ignoreMap":80},[84,97593,97594,97596,97598,97600],{"class":86,"line":87},[84,97595,109],{"class":108},[84,97597,49994],{"class":90},[84,97599,115],{"class":108},[84,97601,49999],{"class":118},[84,97603,97604],{"class":86,"line":105},[84,97605,126],{"emptyLinePlaceholder":125},[84,97607,97608,97610,97612,97614,97616,97618,97620,97622],{"class":86,"line":122},[84,97609,132],{"class":108},[84,97611,50010],{"class":135},[84,97613,139],{"class":108},[84,97615,50015],{"class":98},[84,97617,145],{"class":90},[84,97619,50020],{"class":118},[84,97621,3126],{"class":90},[84,97623,50025],{"class":13481},[84,97625,97626],{"class":86,"line":129},[84,97627,126],{"emptyLinePlaceholder":125},[84,97629,97630,97632,97634,97636,97638,97640],{"class":86,"line":154},[84,97631,418],{"class":108},[84,97633,421],{"class":108},[84,97635,50038],{"class":98},[84,97637,145],{"class":90},[84,97639,50043],{"class":429},[84,97641,438],{"class":90},[84,97643,97644,97646,97648,97650,97652],{"class":86,"line":159},[84,97645,443],{"class":108},[84,97647,50052],{"class":135},[84,97649,139],{"class":108},[84,97651,50010],{"class":98},[84,97653,50059],{"class":90},[84,97655,97656,97658,97660,97662,97664,97666,97668,97670],{"class":86,"line":178},[84,97657,50064],{"class":98},[84,97659,50067],{"class":90},[84,97661,50070],{"class":118},[84,97663,50073],{"class":90},[84,97665,172],{"class":108},[84,97667,50078],{"class":90},[84,97669,49399],{"class":108},[84,97671,151],{"class":90},[84,97673,97674],{"class":86,"line":190},[84,97675,43259],{"class":90},[84,97677,97678],{"class":86,"line":196},[84,97679,50091],{"class":13481},[84,97681,97682,97684,97686,97688],{"class":86,"line":201},[84,97683,50096],{"class":98},[84,97685,2992],{"class":90},[84,97687,172],{"class":108},[84,97689,175],{"class":90},[84,97691,97692,97694,97696,97698,97700,97702,97704,97706,97708],{"class":86,"line":217},[84,97693,50107],{"class":98},[84,97695,50110],{"class":90},[84,97697,172],{"class":108},[84,97699,50115],{"class":118},[84,97701,50043],{"class":90},[84,97703,764],{"class":118},[84,97705,18227],{"class":90},[84,97707,4666],{"class":118},[84,97709,151],{"class":90},[84,97711,97712],{"class":86,"line":227},[84,97713,3104],{"class":90},[84,97715,97716],{"class":86,"line":232},[84,97717,43259],{"class":90},[84,97719,97720,97722],{"class":86,"line":237},[84,97721,557],{"class":108},[84,97723,50140],{"class":90},[84,97725,97726],{"class":86,"line":253},[84,97727,193],{"class":90},[15,97729,97730,50150],{},[958,97731,50149],{},[34,97733,50154],{"id":50153},[6160,97735,97736,97746],{},[6163,97737,97738],{},[6166,97739,97740,97742,97744],{},[6169,97741,46871],{},[6169,97743,50165],{},[6169,97745,50168],{},[6182,97747,97748,97760,97774,97786,97798],{},[6166,97749,97750,97754,97756],{},[6187,97751,97752],{},[958,97753,50177],{},[6187,97755,49668],{},[6187,97757,97758],{},[958,97759,50184],{},[6166,97761,97762,97766,97770],{},[6187,97763,97764],{},[958,97765,50191],{},[6187,97767,50194,97768],{},[22,97769,16550],{},[6187,97771,97772],{},[958,97773,49816],{},[6166,97775,97776,97780,97782],{},[6187,97777,97778],{},[958,97779,50207],{},[6187,97781,50210],{},[6187,97783,97784],{},[958,97785,50215],{},[6166,97787,97788,97792,97794],{},[6187,97789,97790],{},[958,97791,50222],{},[6187,97793,50225],{},[6187,97795,50228,97796,909],{},[22,97797,50231],{},[6166,97799,97800,97804,97806],{},[6187,97801,97802],{},[958,97803,50238],{},[6187,97805,50241],{},[6187,97807,97808],{},[958,97809,50246],{},[34,97811,50250],{"id":50249},[15,97813,50253],{},[1074,97815,50257],{"id":50256},[74,97817,97818],{"className":50260,"code":50261,"filename":50262,"language":50263,"meta":80,"style":80},[22,97819,97820],{"__ignoreMap":80},[84,97821,97822,97824,97826],{"class":86,"line":87},[84,97823,50262],{"class":98},[84,97825,50272],{"class":118},[84,97827,50275],{"class":118},[74,97829,97830],{"className":50260,"code":50278,"filename":50279,"language":50263,"meta":80,"style":80},[22,97831,97832],{"__ignoreMap":80},[84,97833,97834,97836,97838],{"class":86,"line":87},[84,97835,50279],{"class":98},[84,97837,50288],{"class":118},[84,97839,50275],{"class":118},[74,97841,97842],{"className":50260,"code":50293,"filename":50294,"language":50263,"meta":80,"style":80},[22,97843,97844],{"__ignoreMap":80},[84,97845,97846,97848,97850],{"class":86,"line":87},[84,97847,50294],{"class":98},[84,97849,50288],{"class":118},[84,97851,50275],{"class":118},[74,97853,97854],{"className":50260,"code":50307,"filename":50308,"language":50263,"meta":80,"style":80},[22,97855,97856],{"__ignoreMap":80},[84,97857,97858,97860,97862],{"class":86,"line":87},[84,97859,50308],{"class":98},[84,97861,50288],{"class":118},[84,97863,50275],{"class":118},[1074,97865,50322],{"id":50321},[15,97867,50325,97868,50329],{},[22,97869,50328],{},[74,97871,97873],{"className":46758,"code":50332,"filename":50333,"highlights":97872,"language":46762,"meta":80,"style":80},[178],[22,97874,97875,97885,97895,97899,97909,97913,97919,97928,97932,97936],{"__ignoreMap":80},[84,97876,97877,97879,97881,97883],{"class":86,"line":87},[84,97878,109],{"class":108},[84,97880,50343],{"class":90},[84,97882,115],{"class":108},[84,97884,50348],{"class":118},[84,97886,97887,97889,97891,97893],{"class":86,"line":105},[84,97888,109],{"class":108},[84,97890,50355],{"class":90},[84,97892,115],{"class":108},[84,97894,50360],{"class":118},[84,97896,97897],{"class":86,"line":122},[84,97898,126],{"emptyLinePlaceholder":125},[84,97900,97901,97903,97905,97907],{"class":86,"line":129},[84,97902,418],{"class":108},[84,97904,1870],{"class":108},[84,97906,50373],{"class":98},[84,97908,1876],{"class":90},[84,97910,97911],{"class":86,"line":154},[84,97912,50380],{"class":90},[84,97914,97915,97917],{"class":86,"line":159},[84,97916,50385],{"class":98},[84,97918,1876],{"class":90},[84,97920,97922,97924,97926],{"class":97921,"line":178},[86,10151],[84,97923,50393],{"class":90},[84,97925,2938],{"class":135},[84,97927,50398],{"class":13481},[84,97929,97930],{"class":86,"line":190},[84,97931,3698],{"class":90},[84,97933,97934],{"class":86,"line":196},[84,97935,50407],{"class":90},[84,97937,97938],{"class":86,"line":201},[84,97939,1492],{"class":90},[1074,97941,50415],{"id":50414},[15,97943,50418,97944,50421],{},[22,97945,50328],{},[74,97947,97949],{"className":76,"code":50424,"filename":50425,"highlights":97948,"language":79,"meta":80,"style":80},[87],[22,97950,97951,97964,97968],{"__ignoreMap":80},[84,97952,97954,97956,97958,97960,97962],{"class":97953,"line":87},[86,10151],[84,97955,91],{"class":90},[84,97957,95],{"class":94},[84,97959,99],{"class":98},[84,97961,50440],{"class":98},[84,97963,102],{"class":90},[84,97965,97966],{"class":86,"line":105},[84,97967,50447],{"class":13481},[84,97969,97970,97972,97974],{"class":86,"line":122},[84,97971,274],{"class":90},[84,97973,95],{"class":94},[84,97975,102],{"class":90},[34,97977,18395],{"id":18394},[15,97979,50460,97980,50464,97982,50467],{},[958,97981,50463],{},[22,97983,49675],{},[835,97985,50470],{},{"title":80,"searchDepth":105,"depth":105,"links":97987},[97988,97991,97994,97999,98000,98005],{"id":49678,"depth":105,"text":49679,"children":97989},[97990],{"id":49692,"depth":122,"text":49693},{"id":49757,"depth":105,"text":50477,"children":97992},[97993],{"id":49771,"depth":122,"text":49772},{"id":49852,"depth":105,"text":49853,"children":97995},[97996,97997,97998],{"id":49859,"depth":122,"text":49860},{"id":49960,"depth":122,"text":49961},{"id":49977,"depth":122,"text":49978},{"id":50153,"depth":105,"text":50154},{"id":50249,"depth":105,"text":50250,"children":98001},[98002,98003,98004],{"id":50256,"depth":122,"text":50257},{"id":50321,"depth":122,"text":50322},{"id":50414,"depth":122,"text":50415},{"id":18394,"depth":105,"text":18395},{"updatedAt":47012,"coverCaption":50497,"author":868,"keywords":50498},[98008],{"headline":49640,"author":98009,"datePublished":50503,"@type":880},{"name":868,"@type":879},{"title":49640,"description":50495},[98012,98013,98014,98015,98016],{"tag":50508,"color":50509},{"tag":49685,"color":50511},{"tag":3945,"color":3946},{"tag":50514,"color":50515},{"tag":2462,"color":2463},{"id":50519,"title":50520,"body":98018,"cover":51479,"coverAlt":51480,"date":51481,"description":51482,"draft":852,"extension":853,"lab":882,"locale":864,"meta":98850,"navigation":125,"path":51485,"schemaOrg":98851,"seo":98854,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":51491,"tags":98855,"__hash__":51497},{"type":8,"value":98019,"toc":98838},[98020,98022,98026,98028,98030,98054,98056,98060,98070,98072,98074,98088,98102,98116,98130,98138,98140,98142,98158,98160,98162,98164,98174,98176,98186,98196,98206,98216,98220,98222,98224,98236,98246,98256,98268,98272,98274,98276,98308,98310,98314,98562,98808,98810,98836],[11,98021,50526],{"id":50525},[15,98023,50529,98024,50533],{},[958,98025,50532],{},[34,98027,50537],{"id":50536},[15,98029,50540],{},[10842,98031,98032,98036,98042,98046,98050],{},[740,98033,98034,50548],{},[958,98035,50547],{},[740,98037,98038,50554,98040,50558],{},[958,98039,50553],{},[22,98041,50557],{},[740,98043,98044,50564],{},[958,98045,50563],{},[740,98047,98048,50570],{},[958,98049,50569],{},[740,98051,98052,50576],{},[958,98053,50575],{},[34,98055,50580],{"id":50579},[15,98057,50583,98058,50587],{},[958,98059,50586],{},[74,98061,98062],{"className":50260,"code":50590,"filename":50263,"language":50263,"meta":80,"style":80},[22,98063,98064],{"__ignoreMap":80},[84,98065,98066,98068],{"class":86,"line":87},[84,98067,50597],{"class":98},[84,98069,50600],{"class":135},[34,98071,50604],{"id":50603},[15,98073,50607],{},[74,98075,98076],{"className":50260,"code":50610,"filename":50262,"language":50263,"meta":80,"style":80},[22,98077,98078],{"__ignoreMap":80},[84,98079,98080,98082,98084,98086],{"class":86,"line":87},[84,98081,50262],{"class":98},[84,98083,50619],{"class":118},[84,98085,50622],{"class":118},[84,98087,50625],{"class":118},[74,98089,98090],{"className":50260,"code":50628,"filename":50279,"language":50263,"meta":80,"style":80},[22,98091,98092],{"__ignoreMap":80},[84,98093,98094,98096,98098,98100],{"class":86,"line":87},[84,98095,50279],{"class":98},[84,98097,50619],{"class":118},[84,98099,50639],{"class":118},[84,98101,50625],{"class":118},[74,98103,98104],{"className":50260,"code":50644,"filename":50294,"language":50263,"meta":80,"style":80},[22,98105,98106],{"__ignoreMap":80},[84,98107,98108,98110,98112,98114],{"class":86,"line":87},[84,98109,50294],{"class":98},[84,98111,50619],{"class":118},[84,98113,50639],{"class":118},[84,98115,50625],{"class":118},[74,98117,98118],{"className":50260,"code":50659,"filename":50308,"language":50263,"meta":80,"style":80},[22,98119,98120],{"__ignoreMap":80},[84,98121,98122,98124,98126,98128],{"class":86,"line":87},[84,98123,50308],{"class":98},[84,98125,50619],{"class":118},[84,98127,50639],{"class":118},[84,98129,50625],{"class":118},[823,98131,98132],{},[15,98133,98134,11716,98136,50681],{},[958,98135,48749],{},[22,98137,50680],{},[34,98139,50685],{"id":50684},[15,98141,50688],{},[10842,98143,98144,98150],{},[740,98145,98146,50696,98148,764],{},[958,98147,50695],{},[22,98149,21325],{},[740,98151,98152,50704,98154,50708,98156,50712],{},[958,98153,50703],{},[22,98155,50707],{},[22,98157,50711],{},[34,98159,50716],{"id":50715},[15,98161,50719],{},[15,98163,50722],{},[74,98165,98166],{"className":50260,"code":50725,"filename":50263,"language":50263,"meta":80,"style":80},[22,98167,98168],{"__ignoreMap":80},[84,98169,98170,98172],{"class":86,"line":87},[84,98171,50732],{"class":135},[84,98173,50625],{"class":118},[15,98175,50737],{},[74,98177,98178],{"className":50260,"code":50740,"filename":50262,"language":50263,"meta":80,"style":80},[22,98179,98180],{"__ignoreMap":80},[84,98181,98182,98184],{"class":86,"line":87},[84,98183,50262],{"class":98},[84,98185,50749],{"class":118},[74,98187,98188],{"className":50260,"code":50752,"filename":50279,"language":50263,"meta":80,"style":80},[22,98189,98190],{"__ignoreMap":80},[84,98191,98192,98194],{"class":86,"line":87},[84,98193,50279],{"class":98},[84,98195,50749],{"class":118},[74,98197,98198],{"className":50260,"code":50763,"filename":50294,"language":50263,"meta":80,"style":80},[22,98199,98200],{"__ignoreMap":80},[84,98201,98202,98204],{"class":86,"line":87},[84,98203,50294],{"class":98},[84,98205,50749],{"class":118},[74,98207,98208],{"className":50260,"code":50774,"filename":50308,"language":50263,"meta":80,"style":80},[22,98209,98210],{"__ignoreMap":80},[84,98211,98212,98214],{"class":86,"line":87},[84,98213,50308],{"class":98},[84,98215,50749],{"class":118},[15,98217,50785,98218,50789],{},[22,98219,50788],{},[34,98221,50793],{"id":50792},[15,98223,50796],{},[74,98225,98226],{"className":50260,"code":50799,"filename":50262,"language":50263,"meta":80,"style":80},[22,98227,98228],{"__ignoreMap":80},[84,98229,98230,98232,98234],{"class":86,"line":87},[84,98231,50262],{"class":98},[84,98233,50808],{"class":118},[84,98235,50811],{"class":118},[74,98237,98238],{"className":50260,"code":50814,"filename":50279,"language":50263,"meta":80,"style":80},[22,98239,98240],{"__ignoreMap":80},[84,98241,98242,98244],{"class":86,"line":87},[84,98243,50279],{"class":98},[84,98245,50811],{"class":118},[74,98247,98248],{"className":50260,"code":50825,"filename":50294,"language":50263,"meta":80,"style":80},[22,98249,98250],{"__ignoreMap":80},[84,98251,98252,98254],{"class":86,"line":87},[84,98253,50294],{"class":98},[84,98255,50811],{"class":118},[74,98257,98258],{"className":50260,"code":50836,"filename":50308,"language":50263,"meta":80,"style":80},[22,98259,98260],{"__ignoreMap":80},[84,98261,98262,98264,98266],{"class":86,"line":87},[84,98263,50308],{"class":98},[84,98265,50808],{"class":118},[84,98267,50811],{"class":118},[15,98269,50849,98270,50853],{},[22,98271,50852],{},[34,98273,50857],{"id":50856},[15,98275,50860],{},[737,98277,98278,98284,98290,98296,98302],{},[740,98279,98280,50870],{},[958,98281,98282],{},[22,98283,50869],{},[740,98285,98286,50878],{},[958,98287,98288],{},[22,98289,50877],{},[740,98291,98292,50886],{},[958,98293,98294],{},[22,98295,50885],{},[740,98297,98298,50894],{},[958,98299,98300],{},[22,98301,50893],{},[740,98303,98304,50901],{},[958,98305,98306],{},[22,98307,50333],{},[34,98309,50905],{"id":50904},[15,98311,50908,98312,50911],{},[22,98313,50885],{},[74,98315,98316],{"className":76,"code":50914,"filename":873,"language":79,"meta":80,"style":80},[22,98317,98318,98326,98334,98346,98364,98372,98380,98384,98394,98406,98410,98414,98426,98442,98446,98450,98464,98472,98476,98484,98488,98498,98504,98514,98518,98524,98540,98550,98554],{"__ignoreMap":80},[84,98319,98320,98322,98324],{"class":86,"line":87},[84,98321,91],{"class":90},[84,98323,291],{"class":94},[84,98325,102],{"class":90},[84,98327,98328,98330,98332],{"class":86,"line":105},[84,98329,299],{"class":90},[84,98331,4978],{"class":94},[84,98333,102],{"class":90},[84,98335,98336,98338,98340,98342,98344],{"class":86,"line":122},[84,98337,1642],{"class":90},[84,98339,11],{"class":94},[84,98341,50941],{"class":90},[84,98343,11],{"class":94},[84,98345,102],{"class":90},[84,98347,98348,98350,98352,98354,98356,98358,98360,98362],{"class":86,"line":129},[84,98349,1642],{"class":90},[84,98351,302],{"class":94},[84,98353,305],{"class":98},[84,98355,184],{"class":90},[84,98357,49438],{"class":118},[84,98359,50960],{"class":90},[84,98361,302],{"class":94},[84,98363,102],{"class":90},[84,98365,98366,98368,98370],{"class":86,"line":154},[84,98367,324],{"class":90},[84,98369,4978],{"class":94},[84,98371,102],{"class":90},[84,98373,98374,98376,98378],{"class":86,"line":159},[84,98375,274],{"class":90},[84,98377,291],{"class":94},[84,98379,102],{"class":90},[84,98381,98382],{"class":86,"line":178},[84,98383,126],{"emptyLinePlaceholder":125},[84,98385,98386,98388,98390,98392],{"class":86,"line":190},[84,98387,91],{"class":90},[84,98389,95],{"class":94},[84,98391,99],{"class":98},[84,98393,102],{"class":90},[84,98395,98396,98398,98400,98402,98404],{"class":86,"line":196},[84,98397,109],{"class":108},[84,98399,112],{"class":90},[84,98401,115],{"class":108},[84,98403,46336],{"class":118},[84,98405,18869],{"class":90},[84,98407,98408],{"class":86,"line":201},[84,98409,126],{"emptyLinePlaceholder":125},[84,98411,98412],{"class":86,"line":217},[84,98413,51015],{"class":13481},[84,98415,98416,98418,98420,98422,98424],{"class":86,"line":227},[84,98417,132],{"class":108},[84,98419,51022],{"class":135},[84,98421,139],{"class":108},[84,98423,51027],{"class":118},[84,98425,18869],{"class":90},[84,98427,98428,98430,98432,98434,98436,98438,98440],{"class":86,"line":232},[84,98429,132],{"class":108},[84,98431,51036],{"class":135},[84,98433,139],{"class":108},[84,98435,142],{"class":98},[84,98437,145],{"class":90},[84,98439,4320],{"class":135},[84,98441,18994],{"class":90},[84,98443,98444],{"class":86,"line":237},[84,98445,126],{"emptyLinePlaceholder":125},[84,98447,98448],{"class":86,"line":253},[84,98449,51055],{"class":13481},[84,98451,98452,98454,98456,98458,98460,98462],{"class":86,"line":266},[84,98453,132],{"class":108},[84,98455,49383],{"class":98},[84,98457,139],{"class":108},[84,98459,169],{"class":90},[84,98461,172],{"class":108},[84,98463,175],{"class":90},[84,98465,98466,98468,98470],{"class":86,"line":271},[84,98467,51074],{"class":90},[84,98469,49399],{"class":108},[84,98471,18869],{"class":90},[84,98473,98474],{"class":86,"line":281},[84,98475,18973],{"class":90},[84,98477,98478,98480,98482],{"class":86,"line":286},[84,98479,274],{"class":90},[84,98481,95],{"class":94},[84,98483,102],{"class":90},[84,98485,98486],{"class":86,"line":296},[84,98487,126],{"emptyLinePlaceholder":125},[84,98489,98490,98492,98494,98496],{"class":86,"line":315},[84,98491,91],{"class":90},[84,98493,835],{"class":94},[84,98495,51103],{"class":98},[84,98497,102],{"class":90},[84,98499,98500,98502],{"class":86,"line":321},[84,98501,11],{"class":94},[84,98503,175],{"class":90},[84,98505,98506,98508,98510,98512],{"class":86,"line":331},[84,98507,21972],{"class":135},[84,98509,21408],{"class":90},[84,98511,51120],{"class":135},[84,98513,18869],{"class":90},[84,98515,98516],{"class":86,"line":336},[84,98517,193],{"class":90},[84,98519,98520,98522],{"class":86,"line":354},[84,98521,302],{"class":94},[84,98523,175],{"class":90},[84,98525,98526,98528,98530,98532,98534,98536,98538],{"class":86,"line":360},[84,98527,21984],{"class":135},[84,98529,21408],{"class":90},[84,98531,51141],{"class":135},[84,98533,22006],{"class":108},[84,98535,51146],{"class":135},[84,98537,22006],{"class":108},[84,98539,18869],{"class":90},[84,98541,98542,98544,98546,98548],{"class":86,"line":369},[84,98543,51155],{"class":135},[84,98545,21408],{"class":90},[84,98547,51160],{"class":135},[84,98549,18869],{"class":90},[84,98551,98552],{"class":86,"line":1453},[84,98553,193],{"class":90},[84,98555,98556,98558,98560],{"class":86,"line":1462},[84,98557,274],{"class":90},[84,98559,835],{"class":94},[84,98561,102],{"class":90},[74,98563,98564],{"className":76,"code":51177,"filename":1782,"language":79,"meta":80,"style":80},[22,98565,98566,98574,98582,98594,98612,98620,98628,98632,98640,98648,98656,98662,98668,98676,98682,98686,98690,98694,98700,98710,98714,98718,98722,98730,98734,98744,98750,98760,98764,98770,98786,98796,98800],{"__ignoreMap":80},[84,98567,98568,98570,98572],{"class":86,"line":87},[84,98569,91],{"class":90},[84,98571,291],{"class":94},[84,98573,102],{"class":90},[84,98575,98576,98578,98580],{"class":86,"line":105},[84,98577,299],{"class":90},[84,98579,4978],{"class":94},[84,98581,102],{"class":90},[84,98583,98584,98586,98588,98590,98592],{"class":86,"line":122},[84,98585,1642],{"class":90},[84,98587,11],{"class":94},[84,98589,50941],{"class":90},[84,98591,11],{"class":94},[84,98593,102],{"class":90},[84,98595,98596,98598,98600,98602,98604,98606,98608,98610],{"class":86,"line":129},[84,98597,1642],{"class":90},[84,98599,302],{"class":94},[84,98601,305],{"class":98},[84,98603,184],{"class":90},[84,98605,49438],{"class":118},[84,98607,50960],{"class":90},[84,98609,302],{"class":94},[84,98611,102],{"class":90},[84,98613,98614,98616,98618],{"class":86,"line":154},[84,98615,324],{"class":90},[84,98617,4978],{"class":94},[84,98619,102],{"class":90},[84,98621,98622,98624,98626],{"class":86,"line":159},[84,98623,274],{"class":90},[84,98625,291],{"class":94},[84,98627,102],{"class":90},[84,98629,98630],{"class":86,"line":178},[84,98631,126],{"emptyLinePlaceholder":125},[84,98633,98634,98636,98638],{"class":86,"line":190},[84,98635,91],{"class":90},[84,98637,95],{"class":94},[84,98639,102],{"class":90},[84,98641,98642,98644,98646],{"class":86,"line":196},[84,98643,418],{"class":108},[84,98645,1870],{"class":108},[84,98647,175],{"class":90},[84,98649,98650,98652,98654],{"class":86,"line":201},[84,98651,1881],{"class":90},[84,98653,51268],{"class":118},[84,98655,1887],{"class":90},[84,98657,98658,98660],{"class":86,"line":217},[84,98659,1896],{"class":98},[84,98661,1307],{"class":90},[84,98663,98664,98666],{"class":86,"line":227},[84,98665,1903],{"class":108},[84,98667,175],{"class":90},[84,98669,98670,98672,98674],{"class":86,"line":232},[84,98671,51287],{"class":90},[84,98673,51290],{"class":118},[84,98675,1887],{"class":90},[84,98677,98678,98680],{"class":86,"line":237},[84,98679,51297],{"class":90},[84,98681,5467],{"class":135},[84,98683,98684],{"class":86,"line":253},[84,98685,19195],{"class":90},[84,98687,98688],{"class":86,"line":266},[84,98689,1941],{"class":90},[84,98691,98692],{"class":86,"line":271},[84,98693,1950],{"class":90},[84,98695,98696,98698],{"class":86,"line":281},[84,98697,49520],{"class":98},[84,98699,1307],{"class":90},[84,98701,98702,98704,98706,98708],{"class":86,"line":286},[84,98703,2022],{"class":135},[84,98705,51324],{"class":90},[84,98707,49399],{"class":108},[84,98709,18869],{"class":90},[84,98711,98712],{"class":86,"line":296},[84,98713,1936],{"class":90},[84,98715,98716],{"class":86,"line":315},[84,98717,485],{"class":90},[84,98719,98720],{"class":86,"line":321},[84,98721,18973],{"class":90},[84,98723,98724,98726,98728],{"class":86,"line":331},[84,98725,274],{"class":90},[84,98727,95],{"class":94},[84,98729,102],{"class":90},[84,98731,98732],{"class":86,"line":336},[84,98733,126],{"emptyLinePlaceholder":125},[84,98735,98736,98738,98740,98742],{"class":86,"line":354},[84,98737,91],{"class":90},[84,98739,835],{"class":94},[84,98741,51103],{"class":98},[84,98743,102],{"class":90},[84,98745,98746,98748],{"class":86,"line":360},[84,98747,11],{"class":94},[84,98749,175],{"class":90},[84,98751,98752,98754,98756,98758],{"class":86,"line":369},[84,98753,21972],{"class":135},[84,98755,21408],{"class":90},[84,98757,51120],{"class":135},[84,98759,18869],{"class":90},[84,98761,98762],{"class":86,"line":1453},[84,98763,193],{"class":90},[84,98765,98766,98768],{"class":86,"line":1462},[84,98767,302],{"class":94},[84,98769,175],{"class":90},[84,98771,98772,98774,98776,98778,98780,98782,98784],{"class":86,"line":1484},[84,98773,21984],{"class":135},[84,98775,21408],{"class":90},[84,98777,51141],{"class":135},[84,98779,22006],{"class":108},[84,98781,51146],{"class":135},[84,98783,22006],{"class":108},[84,98785,18869],{"class":90},[84,98787,98788,98790,98792,98794],{"class":86,"line":1489},[84,98789,51155],{"class":135},[84,98791,21408],{"class":90},[84,98793,51160],{"class":135},[84,98795,18869],{"class":90},[84,98797,98798],{"class":86,"line":1495},[84,98799,193],{"class":90},[84,98801,98802,98804,98806],{"class":86,"line":1500},[84,98803,274],{"class":90},[84,98805,835],{"class":94},[84,98807,102],{"class":90},[1074,98809,51430],{"id":51429},[737,98811,98812,98820,98828],{},[740,98813,98814,51439,98818,51442],{},[958,98815,98816],{},[22,98817,26850],{},[22,98819,25419],{},[740,98821,98822,51449,98826,51452],{},[958,98823,98824],{},[22,98825,19966],{},[22,98827,24],{},[740,98829,98830,51459,98834,51463],{},[958,98831,98832],{},[22,98833,21547],{},[22,98835,51462],{},[835,98837,51466],{},{"title":80,"searchDepth":105,"depth":105,"links":98839},[98840,98841,98842,98843,98844,98845,98846,98847],{"id":50536,"depth":105,"text":50537},{"id":50579,"depth":105,"text":50580},{"id":50603,"depth":105,"text":50604},{"id":50684,"depth":105,"text":50685},{"id":50715,"depth":105,"text":50716},{"id":50792,"depth":105,"text":50793},{"id":50856,"depth":105,"text":50857},{"id":50904,"depth":105,"text":50905,"children":98848},[98849],{"id":51429,"depth":122,"text":51430},{"updatedAt":47012,"coverCaption":51484},[98852],{"headline":50520,"author":98853,"datePublished":51489,"@type":880},{"name":868,"@type":879},{"title":50520,"description":51482},[98856,98857,98858],{"tag":50532,"color":51494},{"tag":50514,"color":50515},{"tag":894,"color":895},{"id":51499,"title":51500,"body":98860,"cover":51675,"coverAlt":51676,"date":51677,"description":51678,"draft":852,"extension":853,"lab":882,"locale":864,"meta":98973,"navigation":125,"path":51681,"schemaOrg":98974,"seo":98977,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":51687,"tags":98978,"__hash__":51691},{"type":8,"value":98861,"toc":98964},[98862,98864,98868,98870,98876,98880,98882,98886,98914,98920,98922,98924,98932,98934,98936,98954,98956],[11,98863,51506],{"id":51505},[15,98865,51509,98866,51512],{},[958,98867,870],{},[34,98869,51516],{"id":51515},[15,98871,51519,98872,51523,98874,51527],{},[958,98873,51522],{},[4070,98875,51526],{},[15,98877,995,98878,51533],{},[958,98879,51532],{},[34,98881,51537],{"id":51536},[15,98883,51540,98884,51544],{},[958,98885,51543],{},[10842,98887,98888,98892,98896,98902,98908],{},[740,98889,98890,51552],{},[958,98891,51551],{},[740,98893,98894,51558],{},[958,98895,51557],{},[740,98897,98898,51564,98900,764],{},[958,98899,51563],{},[4070,98901,51567],{},[740,98903,98904,51564,98906,51576],{},[958,98905,51572],{},[4070,98907,51575],{},[740,98909,98910,51582,98912,764],{},[958,98911,51581],{},[4070,98913,50532],{},[15,98915,51587,98916,51590,98918,51594],{},[22,98917,19966],{},[958,98919,51593],{},[34,98921,51598],{"id":51597},[1074,98923,51602],{"id":51601},[15,98925,51605,98926,51609,98928,51613,98930,51616],{},[958,98927,51608],{},[958,98929,51612],{},[22,98931,49047],{},[1074,98933,51620],{"id":51619},[15,98935,51623],{},[737,98937,98938,98946,98950],{},[740,98939,98940,51631,98942,51634,98944,2686],{},[958,98941,51630],{},[4070,98943,1782],{},[4070,98945,13070],{},[740,98947,98948,51642],{},[958,98949,51641],{},[740,98951,98952,51648],{},[958,98953,51647],{},[34,98955,51652],{"id":51651},[15,98957,51655,98958,51658,98960,51662,98962,51665],{},[958,98959,50532],{},[958,98961,51661],{},[958,98963,51575],{},{"title":80,"searchDepth":105,"depth":105,"links":98965},[98966,98967,98968,98972],{"id":51515,"depth":105,"text":51516},{"id":51536,"depth":105,"text":51537},{"id":51597,"depth":105,"text":51598,"children":98969},[98970,98971],{"id":51601,"depth":122,"text":51602},{"id":51619,"depth":122,"text":51620},{"id":51651,"depth":105,"text":51652},{"updatedAt":47012,"coverCaption":51680},[98975],{"headline":51500,"author":98976,"datePublished":51685,"@type":880},{"name":868,"@type":879},{"title":51500,"description":51678},[98979,98980],{"tag":49649,"color":49650},{"tag":50514,"color":50515},{"id":51693,"title":51694,"body":98982,"cover":52326,"coverAlt":50493,"date":52327,"description":52328,"draft":852,"extension":853,"lab":882,"locale":864,"meta":99542,"navigation":125,"path":52332,"schemaOrg":99543,"seo":99546,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":52338,"tags":99547,"__hash__":52343},{"type":8,"value":98983,"toc":99524},[98984,98986,98990,98994,98996,98998,99002,99006,99010,99014,99022,99024,99028,99234,99440,99446,99448,99450,99454,99464,99468,99476,99478,99482,99486,99490,99500,99504,99508,99512,99516,99518,99520,99522],[11,98985,51700],{"id":51699},[15,98987,51703,98988,51706],{},[958,98989,870],{},[15,98991,98992,51712],{},[958,98993,51711],{},[15,98995,51715],{},[34,98997,51719],{"id":51718},[15,98999,51722,99000,51725],{},[958,99001,51543],{},[1074,99003,99004],{"id":51728},[958,99005,51731],{},[737,99007,99008],{},[740,99009,51736],{},[1074,99011,99012],{"id":51739},[958,99013,51742],{},[737,99015,99016],{},[740,99017,51747,99018,51750,99020,51753],{},[958,99019,51567],{},[958,99021,51575],{},[34,99023,51757],{"id":51756},[15,99025,51760,99026,51763],{},[22,99027,17701],{},[74,99029,99030],{"className":76,"code":51766,"filename":873,"language":79,"meta":80,"style":80},[22,99031,99032,99042,99054,99058,99062,99078,99082,99086,99112,99116,99130,99138,99142,99150,99154,99162,99176,99188,99200,99218,99226],{"__ignoreMap":80},[84,99033,99034,99036,99038,99040],{"class":86,"line":87},[84,99035,91],{"class":90},[84,99037,95],{"class":94},[84,99039,99],{"class":98},[84,99041,102],{"class":90},[84,99043,99044,99046,99048,99050,99052],{"class":86,"line":105},[84,99045,109],{"class":108},[84,99047,13102],{"class":90},[84,99049,115],{"class":108},[84,99051,46336],{"class":118},[84,99053,18869],{"class":90},[84,99055,99056],{"class":86,"line":122},[84,99057,126],{"emptyLinePlaceholder":125},[84,99059,99060],{"class":86,"line":129},[84,99061,51799],{"class":13481},[84,99063,99064,99066,99068,99070,99072,99074,99076],{"class":86,"line":154},[84,99065,132],{"class":108},[84,99067,51036],{"class":135},[84,99069,139],{"class":108},[84,99071,142],{"class":98},[84,99073,145],{"class":90},[84,99075,4320],{"class":135},[84,99077,18994],{"class":90},[84,99079,99080],{"class":86,"line":159},[84,99081,126],{"emptyLinePlaceholder":125},[84,99083,99084],{"class":86,"line":178},[84,99085,51824],{"class":13481},[84,99087,99088,99090,99092,99094,99096,99098,99100,99102,99104,99106,99108,99110],{"class":86,"line":190},[84,99089,132],{"class":108},[84,99091,51831],{"class":135},[84,99093,139],{"class":108},[84,99095,2989],{"class":98},[84,99097,2992],{"class":90},[84,99099,172],{"class":108},[84,99101,51842],{"class":90},[84,99103,51845],{"class":108},[84,99105,13150],{"class":135},[84,99107,51850],{"class":108},[84,99109,39550],{"class":135},[84,99111,18994],{"class":90},[84,99113,99114],{"class":86,"line":196},[84,99115,126],{"emptyLinePlaceholder":125},[84,99117,99118,99120,99122,99124,99126,99128],{"class":86,"line":201},[84,99119,132],{"class":108},[84,99121,49383],{"class":98},[84,99123,139],{"class":108},[84,99125,169],{"class":90},[84,99127,172],{"class":108},[84,99129,175],{"class":90},[84,99131,99132,99134,99136],{"class":86,"line":217},[84,99133,51074],{"class":90},[84,99135,49399],{"class":108},[84,99137,18869],{"class":90},[84,99139,99140],{"class":86,"line":227},[84,99141,18973],{"class":90},[84,99143,99144,99146,99148],{"class":86,"line":232},[84,99145,274],{"class":90},[84,99147,95],{"class":94},[84,99149,102],{"class":90},[84,99151,99152],{"class":86,"line":237},[84,99153,126],{"emptyLinePlaceholder":125},[84,99155,99156,99158,99160],{"class":86,"line":253},[84,99157,91],{"class":90},[84,99159,291],{"class":94},[84,99161,102],{"class":90},[84,99163,99164,99166,99168,99170,99172,99174],{"class":86,"line":266},[84,99165,299],{"class":90},[84,99167,4978],{"class":94},[84,99169,1629],{"class":98},[84,99171,184],{"class":90},[84,99173,51917],{"class":118},[84,99175,102],{"class":90},[84,99177,99178,99180,99182,99184,99186],{"class":86,"line":271},[84,99179,1642],{"class":90},[84,99181,1074],{"class":94},[84,99183,50960],{"class":90},[84,99185,1074],{"class":94},[84,99187,102],{"class":90},[84,99189,99190,99192,99194,99196,99198],{"class":86,"line":281},[84,99191,1642],{"class":90},[84,99193,15],{"class":94},[84,99195,51940],{"class":90},[84,99197,15],{"class":94},[84,99199,102],{"class":90},[84,99201,99202,99204,99206,99208,99210,99212,99214,99216],{"class":86,"line":286},[84,99203,1642],{"class":90},[84,99205,302],{"class":94},[84,99207,305],{"class":98},[84,99209,184],{"class":90},[84,99211,49438],{"class":118},[84,99213,45345],{"class":90},[84,99215,302],{"class":94},[84,99217,102],{"class":90},[84,99219,99220,99222,99224],{"class":86,"line":296},[84,99221,324],{"class":90},[84,99223,4978],{"class":94},[84,99225,102],{"class":90},[84,99227,99228,99230,99232],{"class":86,"line":315},[84,99229,274],{"class":90},[84,99231,291],{"class":94},[84,99233,102],{"class":90},[74,99235,99236],{"className":76,"code":51981,"filename":1782,"language":79,"meta":80,"style":80},[22,99237,99238,99246,99254,99260,99266,99272,99276,99280,99284,99290,99308,99312,99316,99320,99326,99336,99340,99344,99348,99356,99360,99368,99382,99394,99406,99424,99432],{"__ignoreMap":80},[84,99239,99240,99242,99244],{"class":86,"line":87},[84,99241,91],{"class":90},[84,99243,95],{"class":94},[84,99245,102],{"class":90},[84,99247,99248,99250,99252],{"class":86,"line":105},[84,99249,418],{"class":108},[84,99251,1870],{"class":108},[84,99253,175],{"class":90},[84,99255,99256,99258],{"class":86,"line":122},[84,99257,1896],{"class":98},[84,99259,1307],{"class":90},[84,99261,99262,99264],{"class":86,"line":129},[84,99263,1903],{"class":108},[84,99265,175],{"class":90},[84,99267,99268,99270],{"class":86,"line":154},[84,99269,51297],{"class":90},[84,99271,5467],{"class":135},[84,99273,99274],{"class":86,"line":159},[84,99275,19195],{"class":90},[84,99277,99278],{"class":86,"line":178},[84,99279,1941],{"class":90},[84,99281,99282],{"class":86,"line":190},[84,99283,3527],{"class":90},[84,99285,99286,99288],{"class":86,"line":196},[84,99287,52034],{"class":98},[84,99289,1307],{"class":90},[84,99291,99292,99294,99296,99298,99300,99302,99304,99306],{"class":86,"line":201},[84,99293,3539],{"class":108},[84,99295,2078],{"class":135},[84,99297,52045],{"class":90},[84,99299,51845],{"class":108},[84,99301,13150],{"class":135},[84,99303,51850],{"class":108},[84,99305,39550],{"class":135},[84,99307,18869],{"class":90},[84,99309,99310],{"class":86,"line":217},[84,99311,1936],{"class":90},[84,99313,99314],{"class":86,"line":227},[84,99315,1941],{"class":90},[84,99317,99318],{"class":86,"line":232},[84,99319,1950],{"class":90},[84,99321,99322,99324],{"class":86,"line":237},[84,99323,49520],{"class":98},[84,99325,1307],{"class":90},[84,99327,99328,99330,99332,99334],{"class":86,"line":253},[84,99329,2022],{"class":135},[84,99331,51324],{"class":90},[84,99333,49399],{"class":108},[84,99335,18869],{"class":90},[84,99337,99338],{"class":86,"line":266},[84,99339,1936],{"class":90},[84,99341,99342],{"class":86,"line":271},[84,99343,485],{"class":90},[84,99345,99346],{"class":86,"line":281},[84,99347,18973],{"class":90},[84,99349,99350,99352,99354],{"class":86,"line":286},[84,99351,274],{"class":90},[84,99353,95],{"class":94},[84,99355,102],{"class":90},[84,99357,99358],{"class":86,"line":296},[84,99359,126],{"emptyLinePlaceholder":125},[84,99361,99362,99364,99366],{"class":86,"line":315},[84,99363,91],{"class":90},[84,99365,291],{"class":94},[84,99367,102],{"class":90},[84,99369,99370,99372,99374,99376,99378,99380],{"class":86,"line":321},[84,99371,299],{"class":90},[84,99373,4978],{"class":94},[84,99375,1629],{"class":98},[84,99377,184],{"class":90},[84,99379,51917],{"class":118},[84,99381,102],{"class":90},[84,99383,99384,99386,99388,99390,99392],{"class":86,"line":331},[84,99385,1642],{"class":90},[84,99387,1074],{"class":94},[84,99389,50960],{"class":90},[84,99391,1074],{"class":94},[84,99393,102],{"class":90},[84,99395,99396,99398,99400,99402,99404],{"class":86,"line":336},[84,99397,1642],{"class":90},[84,99399,15],{"class":94},[84,99401,51940],{"class":90},[84,99403,15],{"class":94},[84,99405,102],{"class":90},[84,99407,99408,99410,99412,99414,99416,99418,99420,99422],{"class":86,"line":354},[84,99409,1642],{"class":90},[84,99411,302],{"class":94},[84,99413,305],{"class":98},[84,99415,184],{"class":90},[84,99417,49438],{"class":118},[84,99419,45345],{"class":90},[84,99421,302],{"class":94},[84,99423,102],{"class":90},[84,99425,99426,99428,99430],{"class":86,"line":360},[84,99427,324],{"class":90},[84,99429,4978],{"class":94},[84,99431,102],{"class":90},[84,99433,99434,99436,99438],{"class":86,"line":369},[84,99435,274],{"class":90},[84,99437,291],{"class":94},[84,99439,102],{"class":90},[15,99441,52190,99442,52194,99444,52198],{},[22,99443,52193],{},[22,99445,52197],{},[34,99447,52202],{"id":52201},[15,99449,52205],{},[1074,99451,99452],{"id":52208},[958,99453,52211],{},[737,99455,99456],{},[740,99457,52216,99458,754,99460,754,99462,52223],{},[22,99459,12799],{},[22,99461,12808],{},[22,99463,2523],{},[1074,99465,99466],{"id":52226},[958,99467,51630],{},[737,99469,99470],{},[740,99471,52233,99472,52236,99474,764],{},[958,99473,872],{},[958,99475,50711],{},[34,99477,52242],{"id":52241},[1074,99479,99480],{"id":52245},[958,99481,52248],{},[737,99483,99484],{},[740,99485,52253],{},[1074,99487,99488],{"id":52256},[958,99489,52259],{},[737,99491,99492],{},[740,99493,52264,99494,52267,99496,52270,99498,52274],{},[958,99495,50532],{},[958,99497,51575],{},[958,99499,52273],{},[1074,99501,99502],{"id":52277},[958,99503,52280],{},[737,99505,99506],{},[740,99507,52285],{},[1074,99509,99510],{"id":52288},[958,99511,52291],{},[737,99513,99514],{},[740,99515,52296],{},[34,99517,18395],{"id":18394},[15,99519,52301],{},[15,99521,52304],{},[835,99523,52307],{},{"title":80,"searchDepth":105,"depth":105,"links":99525},[99526,99530,99531,99535,99541],{"id":51718,"depth":105,"text":51719,"children":99527},[99528,99529],{"id":51728,"depth":122,"text":51731},{"id":51739,"depth":122,"text":51742},{"id":51756,"depth":105,"text":51757},{"id":52201,"depth":105,"text":52202,"children":99532},[99533,99534],{"id":52208,"depth":122,"text":52211},{"id":52226,"depth":122,"text":51630},{"id":52241,"depth":105,"text":52242,"children":99536},[99537,99538,99539,99540],{"id":52245,"depth":122,"text":52248},{"id":52256,"depth":122,"text":52259},{"id":52277,"depth":122,"text":52280},{"id":52288,"depth":122,"text":52291},{"id":18394,"depth":105,"text":18395},{"updatedAt":47012,"coverCaption":52330,"author":868,"keywords":52331},[99544],{"headline":51694,"author":99545,"datePublished":52336,"@type":880},{"name":868,"@type":879},{"title":51694,"description":52328},[99548,99549,99550],{"tag":50514,"color":50515},{"tag":894,"color":895},{"tag":49649,"color":49650},{"id":52345,"title":52346,"body":99552,"cover":52502,"coverAlt":52503,"date":52504,"description":52505,"draft":852,"extension":853,"lab":882,"locale":864,"meta":99656,"navigation":125,"path":52508,"schemaOrg":99657,"seo":99660,"series":882,"seriesDescription":882,"seriesOrder":882,"seriesTitle":882,"slug":882,"stem":52514,"tags":99661,"__hash__":52521},{"type":8,"value":99553,"toc":99650},[99554,99558,99562,99570,99572,99574,99610,99612,99616,99620,99624,99626,99634,99636,99640,99642,99644],[11,99555,52352,99556,1344],{"id":52351},[958,99557,868],{},[15,99559,52357,99560,52360],{},[958,99561,870],{},[15,99563,99564,52365,99566,754,99568,52370],{},[958,99565,868],{},[958,99567,871],{},[958,99569,998],{},[34,99571,52374],{"id":52373},[15,99573,52377],{},[737,99575,99576,99584,99594,99600],{},[740,99577,99578,52385,99580,52388,99582,764],{},[958,99579,52384],{},[958,99581,873],{},[4070,99583,13070],{},[740,99585,99586,52396,99588,754,99590,754,99592,52405],{},[958,99587,52395],{},[958,99589,2440],{},[958,99591,52401],{},[958,99593,52404],{},[740,99595,99596,52411,99598,52415],{},[958,99597,52410],{},[4070,99599,52414],{},[740,99601,99602,52421,99604,754,99606,754,99608,52428],{},[958,99603,52420],{},[958,99605,51575],{},[958,99607,51567],{},[958,99609,50532],{},[34,99611,52432],{"id":52431},[15,99613,52435,99614,764],{},[958,99615,52438],{},[15,99617,52441,99618,52445],{},[958,99619,52444],{},[15,99621,52448,99622,52452],{},[958,99623,52451],{},[34,99625,52456],{"id":52455},[15,99627,52459,99628,52462,99630,52466,99632,52470],{},[22,99629,19966],{},[4070,99631,52465],{},[4070,99633,52469],{},[34,99635,52474],{"id":52473},[15,99637,52477,99638,52480],{},[958,99639,868],{},[15,99641,52483],{},[39158,99643],{},[15,99645,99646,52491,99648],{},[958,99647,52490],{},[13911,99649,52495],{"href":52494},{"title":80,"searchDepth":105,"depth":105,"links":99651},[99652,99653,99654,99655],{"id":52373,"depth":105,"text":52374},{"id":52431,"depth":105,"text":52432},{"id":52455,"depth":105,"text":52456},{"id":52473,"depth":105,"text":52474},{"updatedAt":47012,"coverCaption":52507},[99658],{"headline":52346,"author":99659,"datePublished":52512,"@type":880},{"name":868,"@type":879},{"title":52346,"description":52505},[99662,99663,99664],{"tag":868,"color":50509},{"tag":52518,"color":52519},{"tag":50514,"color":50515},1782173563263]