Temas de Investigación para Alumnos de Postgrado
Summary
TLDREn esta conferencia, el Dr. Contarino Navarro explora el campo de las estructuras de datos compactas, enfocándose en su importancia en el contexto de la evolución de la tecnología y las limitaciones físicas actuales. Expone cómo estas estructuras, diseñadas para ocupar poco espacio y permitir el manejo eficiente de datos, son fundamentales en dispositivos con memoria limitada y en aplicaciones de bioinformática. Además, comparte su experiencia en investigación y enseñanza, destacando la relevancia de su trabajo en la mejora del rendimiento y la reducción de costos en sistemas de información.
Takeaways
- 😀 El área de investigación del orador está enfocada en estructuras de datos compactas, es decir, diseño de estructuras que ocupan poco espacio en memoria.
- 📈 La evolución de la capacidad de almacenamiento y procesamiento ha llegado a un punto donde la memoria se vuelve más lenta en comparación con la CPU y la GPU.
- 💾 Aparece la necesidad de varios niveles de memoria, donde cada nivel más cercano a la CPU es más rápido y costoso, y se busca optimizar el uso de esta jerarquía de memoria.
- 🌐 La diferencia en tiempo de acceso entre memoria y disco se compara con la diferencia entre tomar un objeto del escritorio versus tomar un avión para ir a buscarlo.
- 🌐 Las estructuras de datos compactas surgen para aprovechar la jerarquía de memoria y mejorar el rendimiento, permitiendo manipular datos sin descomprimirlos.
- 🧬 El genoma humano es un ejemplo de datos altamente repetitivos que requiere técnicas especiales para su almacenamiento y búsqueda eficiente.
- 🌐 La investigación en estructuras de datos compactas se relaciona con la teoría de la información y se centra en el diseño, análisis teórico y experimentación de estas estructuras.
- 🔍 Se abordan técnicas para representar objetos como árboles, grafos y textos de manera compacta, permitiendo operaciones de consulta y navegación en tiempo constante.
- 📚 Existe un libro que recopila varias estructuras de datos que se pueden representar en forma compacta, incluyendo secuencias de bits, permutaciones y secuencias de símbolos.
- 🎓 Los alumnos del orador trabajan en temas relacionados con estructuras de datos compactas, bioinformática y bases de datos, y han publicado artículos en conferencias importantes.
Q & A
¿Cuál es el área de investigación principal del orador?
-El área de investigación principal del orador se relaciona con estructuras de datos compactas.
¿Qué es la Ley de Moore y cómo está relacionada con el discurso?
-La Ley de Moore es un principio que establece que el número de transistores en un circuito integrado se duplica aproximadamente cada 24 meses, lo que implica un aumento en la capacidad de procesamiento. Esto ha llevado a la creciente disparidad entre la velocidad de la CPU y la memoria, un tema central en la charla.
¿Qué son las estructuras de datos compactas y por qué son importantes?
-Las estructuras de datos compactas son diseños que permiten almacenar información de manera más eficiente en términos de espacio, lo que es crucial en contextos donde la memoria es limitada y costosa, y mejora el rendimiento al permitir que más datos se manejen en memoria rápida.
¿Cómo se relacionan las estructuras de datos compactas con la jerarquía de memoria moderna?
-Las estructuras de datos compactas se alinean con la jerarquía de memoria moderna al permitir que se utilice la memoria de manera más eficiente, lo que reduce el tiempo de acceso a los datos y se beneficia de los niveles superiores de memoria más rápidas.
¿Qué es la diferencia entre compresión y estructuras de datos compactas?
-La compresión implica almacenar datos de manera más eficiente pero requiere descomprimirlos para su uso, mientras que las estructuras de datos compactas mantienen los datos comprimidos pero permiten operar sobre ellos sin necesidad de descomprimirlos.
¿Cuál es la aplicación práctica de las estructuras de datos compactas en dispositivos con memoria limitada?
-En dispositivos con memoria limitada, como teléfonos móviles o sensores, las estructuras de datos compactas permiten almacenar más información y reducir costos de comunicación y energía, mejorando el rendimiento y la eficiencia.
¿Cómo se pueden representar estructuras de datos complejas como árboles de sufijos de forma compacta?
-Los árboles de sufijos pueden representarse de forma compacta utilizando técnicas que reducen la memoria necesaria, como la representación de los árboles en secuencias de bits, permitiendo operaciones complejas a pesar de la reducción de espacio.
¿Qué es el árbol de sus hijos y cómo se relaciona con las estructuras de datos compactas?
-El árbol de sus hijos es una estructura utilizada en bioinformática para representar secuencias genéticas. Su representación compacta es crucial para manejar grandes volúmenes de datos genéticos sin sobrepasar los límites de memoria.
¿Cuáles son algunos de los desafíos en el diseño de estructuras de datos compactas para objetos complejos como árboles o grafos?
-Los desafíos incluyen mantener la capacidad de realizar operaciones y consultas eficientes sin descomprimir los datos, así como adaptar la representación compacta a diferentes tipos de datos y estructuras.
¿Cómo se evalúa el rendimiento de las estructuras de datos compactas?
-El rendimiento se evalúa a través de análisis teóricos y experimentales, comparando el espacio ocupado y el tiempo de ejecución de las operaciones con soluciones clásicas.
Outlines
💻 Estructuras de datos compactas y la evolución tecnológica
El párrafo introduce el área de investigación de estructuras de datos compactas y su relevancia en la evolución de la tecnología, especialmente en relación con la Ley de Moore. Explica cómo, aunque los procesadores y la capacidad de memoria han crecido exponencialmente, otros factores como el tiempo de acceso a discos y redes no han seguido el mismo ritmo. Esto crea una jerarquía en la memoria donde, a medida que los datos se acercan físicamente a la CPU, son más rápidos pero también más caros. La investigación se enfoca en optimizar esta jerarquía con estructuras de datos que ocupen menos espacio sin perder eficiencia en el acceso y manipulación.
📚 Beneficios de las estructuras de datos comprimidas
Este párrafo se enfoca en las ventajas de las estructuras de datos comprimidas en un contexto donde la memoria es cada vez más barata, pero limitada en algunos dispositivos como celulares o sensores. Estas estructuras permiten almacenar y manejar grandes cantidades de datos en menos espacio, mejorando el rendimiento y reduciendo costos. También se mencionan casos como el almacenamiento del genoma humano, donde la compresión eficiente es esencial para búsquedas complejas y minería de datos. En lugar de comprimir y descomprimir datos, las estructuras compactas permiten manipular la información en su forma comprimida.
🌲 Representación y navegación en árboles compactos
El párrafo aborda cómo los árboles compactos se pueden representar y manipular utilizando secuencias de paréntesis, permitiendo realizar operaciones de navegación sin descomprimir los datos. Explica un método en el cual los nodos de un árbol se representan mediante paréntesis que se abren y cierran al recorrer los nodos. Este enfoque reduce el espacio necesario para almacenar el árbol, pero requiere técnicas avanzadas para poder realizar operaciones como encontrar el nodo padre o los hijos en tiempo constante. Se destacan las complejidades de mantener esta estructura comprimida sin comprometer la funcionalidad.
🧠 Técnicas avanzadas en estructuras de datos compactas
Este párrafo describe el uso del 'running backs train' para optimizar las operaciones de consulta en secuencias de paréntesis en árboles compactos. Al combinar búsquedas secuenciales con subidas y bajadas por el árbol, se logran acelerar las operaciones en tiempo constante. Se menciona que el campo de estructuras de datos compactas está bien desarrollado, y existen libros que recogen estas técnicas aplicadas a distintos objetos como árboles, grafos y textos. El autor finaliza mencionando sus temas actuales de investigación, incluyendo el trabajo con datos repetitivos y textos comprimidos, y destaca los logros de sus alumnos.
Mindmap
Keywords
💡Estructuras de datos compactos
💡Ley de Moore
💡Memoria
💡Jerarquía de memoria
💡Compresión de datos
💡Árboles de sufijos
💡Entropía
💡Bioinformática
💡Internet de las Cosas (IoT)
💡Colecciones de textos
Highlights
El área de investigación de Contarello Navarro se centra en estructuras de datos compactos.
Las estructuras compactas surgen como solución a la creciente lentitud de la memoria en comparación con la CPU y la GPU.
La ley de Moore de 1965 predijo una duplicación cada dos años en la potencia de los sistemas de computación.
Hoy en día, se encuentran límites físicos que ralentizan la velocidad de la CPU y la expansión de la memoria.
La jerarquía de memorias ha crecido con la aparición de varios niveles, cada uno más cercano y rápido a la CPU.
Las estructuras de datos compactas permiten aprovechar la jerarquía de memoria para mejorar el rendimiento.
Las estructuras de datos compactas son ambiciosas, permitiendo el uso de datos comprimidos sin necesidad de descomprimir.
La importancia de las estructuras de datos compactas en dispositivos con memoria limitada, como teléfonos móviles y sensores.
Las estructuras de datos compactas pueden manejar conjuntos de datos más grandes con menos memoria.
El genoma humano como ejemplo de datos altamente repetitivos que requieren técnicas de estructuras de datos compactas.
Los árboles de sufijos como ejemplo de estructuras de datos que pueden representarse de forma compacta.
La teoría de la información es crucial para diseñar estructuras de datos que se acerquen al espacio de entropía.
La implementación y experimentación son aspectos fundamentales en la investigación de estructuras de datos compactas.
La representación de árboles usando secuencias de paréntesis y cómo operar sobre ellas sin descomprimir.
Los árboles de running Fisher, una técnica para acelerar operaciones en secuencias de paréntesis.
Las estructuras de datos compactas aplicadas a textos, árboles, grafos y otros objetos.
Los principales temas de investigación incluyen árboles, grafos, textos y datos altamente repetitivos.
La importancia de las estructuras de datos compactas en la bioinformática y la recuperación de documentos XML.
Los alumnos de Navarro han publicado en conferencias y trabajan en la academia e industria.
Navarro tiene financiamiento disponible para proyectos en bioinformática, bases de datos y estructuras de datos.
Transcripts
bueno en esta charla contarles
brevemente de qué se trata mi área de
investigación y en qué temas se pueden
hacer
magíster o doctorado
mi nombre es contarlo navarro mi área
principal tiene que ver con estructuras
de datos compactos
tiene una presentación
necesitamos
una lista
estructuras compactas
y de qué se trata esto cuando surgen y
esto me viene de algo que esté hecho muy
importante recientemente pero tiene una
muy larga data del choro lo puede llevar
hasta el de la de la época de la ley de
moore 1965 que notó que el número de
transistores que conseguía el menor
costo por transistor en un circuito
integrado se duplicaba cada 24 meses y
eso esencialmente quería decir que cada
dos años el poder de los sistemas de
conjunto se duplicaban
y eso es lo que hay
se veía por ejemplo en la cantidad de
memoria se sigue viendo que va creciendo
a este ritmo las cpu se hacían más
potentes que la normal que se duplicaba
la velocidad de la cpu que hablar cada
dos años hoy en día ya se llega a
ciertos límites físicos y lo que va
creciendo la cantidad de procesadores el
tamaño del disco pero como todo no todo
se duplicaba cada dos años entonces lo
explicado sanz lo por ejemplo el tiempo
de respuesta de los discos los discos
rígidos
está estabilizado en unos milisegundos
desde hace décadas porque usa y depende
de otro tipo de mecanismos llamadas más
mecánicos electrónicos y otra cosa que
no se ha ido duplicando la velocidad de
acceso a la red
y eso hace que hoy en día
en general se puede tener tanta memoria
como se quiera pero esta memoria es cada
vez más lenta con respecto a la cpu y la
gpu se basa en la más rápida la memoria
no se va a aumentar su tamaño y lo que
siga pasando que van apareciendo
distintos niveles de memorias que a
zonas de cadera solamente el disco la
memoria principal y el procesador tal
vez un caché pero ahora aparecen varios
niveles de calle y cada nivel y estamos
más alto más cerca de la cpu es más
rápida está más cerca físicamente es más
cara porque es una tecnología mejor y
más pequeña entonces hoy en día
y tenemos varios niveles de casi todos
han oído hablar de él luego mis dedos
por lo menos y se fijan partimos de unos
pocos registran las cpu con tiempos de
acceso eran unos segundos
pasamos por varios niveles de caché que
son de decenas de menos segundos ya la
que van creciendo en tamaño y se fijan
cada amigas ya la rmi de típicamente
unos pocos gigas de un tiempo de acceso
de unos 60 - segundos de pasamos al
disco que tiene unos pocos tiras pero
que si se fijan tiene
varios órdenes de magnitud más de tiempo
de exceso que la memoria de hecho estar
uno tan grande esta diferencia tiempo de
acceso entre la memoria el disco y
sentir una metáfora para entenderlo bien
y hay una que dice que la diferencia del
tiempo entre tener un dato en round
versus traerlo en disco es comparable la
de tomar el sacapuntas del escritorio
comparado con el de tomarse un avión es
china para ir a buscar el sacapuntas y
regresar
más
las estructuras de las compactas surgen
en este ámbito en el cual
yo quiero aprovechar esa esta jerarquía
de cpu en un contexto en que los datos
que sean muy rápidamente
son esencialmente estructuras de datos
diseñados para ocupar poco espacio eso
no es sólo compresión compresión es
comprimir los datos si los cumplimos del
guardado forma comprimida y si lo quiere
utilizar los tengo que descomprimir
primero la estructura de datos comparta
son más ambiciosas lo que quieren es
tener los tipos de datos comprimidos es
decir los tipos de post tracto
comprimido a decir yo los quiero tener
comprimidos piden nunca descomprimiendo
sino usarlos siempre en forma comprimida
sin descomprimir la nunca acceder a
cualquier dato almacenado directamente
hacer consultas sobre los datos
comprimidos y navegar sobre los datos
buscar incluso modificarlos todo sin
descomprimirlo nunca
porque interesante un contexto en que la
memoria es tan barata
por venir cosas que mejoran el
rendimiento debido a la jerarquía del
memoria así como regidor que es las
memorias de hacer más chicas y más
rápidas
también hay que mercer con la cpu si yo
logro usar menos espacio en una
estructura de datos tengo chance de
meter en una memoria más ram con eso
mejor el rendimiento el gran salto se da
cuando logramos tener en memoria una
estructura cristina tendría que ocupar
el disco que un millón de veces más
lenta
y permite manejar las aceras más grandes
con el dispositivo tiene memoria
limitada de meneses celulares sensores
radio que estos aparatos pequeños
típicos del internet defensa son
aparatos chicos y cuanto mejor cuanto
más comparten las representaciones de lo
que guardan más datos van a poder
manejar
y reducen costos de comunicación y
energía imagínense que da tarjetas que
tienen todos los datos de la memoria
principal de cientos o miles de máquinas
si si yo consigo utilizar menos memoria
necesitan bien la máquina con menos
hardware menos luz menos costo de
comunicación etc
como motivante pero que se puede lograr
la estructura de otras compactas es el
genoma humano el genoma humano tiene 23
mil millones de bases así que como cada
base se representa con cuatro letras
posibles necesitamos sólo dos bits por
cada base y eso significa que podríamos
compartir fácilmente en una memoria ram
de un hit sobre de un poco de espacio
pero los biólogos no necesitan tener
genoma de marsden ave sino además que
necesiten es hacer búsquedas complejas
en el abdomen con tres repeticiones
encontrar en secuencias determinadas que
aparecen determinados lugares hacer
minería para encontrar patrones
frecuentes etc
similitudes y estas operaciones son muy
lentas en forma secuencial
hay personas que toman tiempo
cuadráticas y si no tengo un índice que
se pueden hacer tiempo lineal
construyendo un índice
un índice que resuelve muchos de esos
problemas relevantes a buscar complejas
es el árbol de sus hijos
pero para un genoma humano requiere
entre 30 y 60 gigas de memoria y para la
mayoría de los algoritmos sobre el borde
sus hijos no tienen localidad referencia
entonces no se llevan bien
en la práctica el árbol de su hijo así
como éstas sólo se producen en secuencia
de juguete en cambio en estos últimos
años ha habido
desarrollan como representar árboles en
sus fijos en forma compacta ya han
logrado meterla en una rama de lógica
donde las operaciones son más lentas que
con un árbol de sufijos clásicos si es
que las de la misma memory pero si yo
tenga que meter el árbol de sus fijos
que hace con un disco porque no me cabe
en memoria que es lo más normal entonces
tenerlo compacta memoria principal es
infinitamente más rápida
y que se trata la investigación entonces
en general relacionamos conceptos de
teoría de la información con conceptos
de estructuras de datos esos son los dos
grandes ejes que se cruzan aquí
un cierto universo de objetos que
queremos representar por ejemplo
queremos representar árboles establece
una noción de entropía esta otra piel la
cantidad mínima de hábitat es está allí
para representar urgiendo de ese
universo y distinguirlos de los otros
no sé lo que hacemos es intentar obtener
estructuras de datos
usando espacios cercanos a esta entropía
permite representar y manipular esos
objetos esencialmente lo que se hace
entonces hay un aspecto que es de diseño
de estructuras de datos compactas de
toda clase grafos árboles textos
documentos grilla geométrica en un
montones de distintos objetos de estos
hay un aspecto de análisis teórico de su
desempeño en espacio y tiempo cuando
ocupan cuál es la entropía de estos
objetos y cuánto tiempo demora las
operaciones cuánto tiempo demora las
modificaciones etc
y hay una componente importante sobre
todo con alumnos de implementación y
experimentación en la cual se compara el
tiempo y el espacio que ocupan estas
estructuras compactas comparadas con
otras compradas por soluciones clásicas
un ejemplo de árboles generales y
hablábamos con un árbol general con una
estructura clásica de puntero les ocupa
en el vm bits para un árbol de en ese
orden de reloj de naves porque necesitan
n punteras o sea que no hay un puntero
que les llega así que hay en punteros
las punteras necesitan los bits para
poder distinguir entre en objeto por lo
menos así que tienen los orden del medio
viene bits
y eso permite navegar en el árbol en
tiempo constante y de hoy mismo y al
padre etc pero si no se fija y solamente
controla inés sobre 9 a 3 medias hacia
mente árboles distintos que tienen en
ojos
con lo cual si yo tomo el logaritmo de
eso descubro que se podrían almacenar
estos árboles usando básicamente 12 bits
un orden de 32 bits por nodo esto debe
ser suficiente para representar una
topología y en realidad vamos a ver no
es tan difícil representar un árbol en
este espacio
lo que sí es difícil es todos los
navegar en ese espacio sin descomprimir
hoy en día se conocen formas de realizar
un gran número de operaciones de
consulta y navegación en árboles en
tiempo constante usando esta cantidad de
pits vamos a darles una idea fíjense
esta representación del tomo un árbol
y lo recorro haciendo de fe estén
abriendo un paréntesis cada vez que
llego a un modo por primera vez y
cerrando un paréntesis cuando lo
abandona por última vez entonces tenemos
el paréntesis que abre para el luego en
el que abre para todos el quiebre para
el 3 después cierran del 3
volvemos arriba hacia el 2 bajamos al 4
34 cierre los cuatro días lo que nos
quede una secuencia con dos en
paréntesis y esos son los vagina bits
sin partes y solo presión hasta que con
un bis por paréntesis en el alcance y si
ustedes pueden fácilmente representar el
árbol
ahora como les decía lo que es más
desafiante es poder hacer operaciones
sobre esa secuencia de paréntesis y
estimular la navegación en el árbol
uno puede definir unas pocas operaciones
básicas sobre estas secuencias iniciales
llamado aquí
como una persona franca que me cuenta
cuántos para que se haya abierto
sostienen cierta posición clubs de un
paréntesis que abra me dice dónde está
el que cierra o vende un paréntesis que
cierra me dice dónde está el que hable y
en close de un paréntesis que abra me
diste dónde está el paréntesis más
cercano que lo contiene
porque fíjate que estás secuencia de
paréntesis son tan malas se habla de
vestirlo
un par de sentimiento que lo cierra y si
lo de más profundos sus partes están
contenidas en esos estas operaciones
paso de este puede reducir a primitivas
un tema bajo nivel que lo que hacen es
buscar exceso del exceso en de una
posición es la cantidad paréntesis que
habrá en menos la cristiana hasta esta
posición
y se puede expresar en términos de
arranque
i
esta operación estas primitivas y estas
se pueden resolver en tiempo constante
usando sobre las dos n vistas para decir
solamente orden chiquito de m bits extra
y con eso simplemente un gran número de
operaciones de navegación por ejemplo
imagínense que identificamos cada nodo
del árbol con el paréntesis que lo abre
en 2022 en amarillo se identifica con el
primer paréntesis que abre de la zona
amarilla si ustedes le toman el close a
este paréntesis llegan al final de la
zona amarilla y si toman el largo de la
zona amarilla / 2 lo que tienen es el
tamaño del subaru
el nodo 8 que corresponde a la zona
naranja ustedes pueden saber que es una
hoja porque justo después del paréntesis
que abre hay uno que es tierra con eso
está bien que es una hoja
pueden recorrer los hijos del 2 por
ejemplo en 3 el siguiente paréntesis que
abre después del 2
buscarán que los cierran y después de
que los cierran que abre es el siguiente
hermano el 4 después que cierra el 4 que
es el siguiente hermano el que sigue es
el 5 en el 5 este paréntesis que abre
aquí que si buscan después de que la
sierra y van a la siguiente posición
encuentran el 9 se pueden visitar los
hijos de un nodo tomando el paréntesis
que me cierra viviendo que así también
pueden darse cuenta que el exceso de una
posición corresponde a la altura a la
profundidad del nodo los paréntesis que
en un recorrido de fs están abiertos
hasta aquí pero todavía no cerrados si
cuentan el rango la cantidad para ser
abierto lo que tienen es la posición del
nuevo entre orden
pueden comprar los que cierran a cerrar
de los que cierran en contra el post o
orden del paréntesis es decir pueden
hacer varias operaciones interesantes
simplemente con con estas pocas
permitidos
puedes saber por ejemplo que el 8
diciembre del 2 porque su paréntesis
está entre el que abre el 2 y su club
entonces está contenido si puedo
rápidamente que 1 202 y así que son no
es tan fácil una representación de
paréntesis
para resolver estas operaciones se usa
un árbol que se llama el running backs
train que me guarda varias de estos
indicadores sobre el exceso del exceso
total al mínimo o máximo exceso en zonas
de la secuencia de paréntesis no sé
esencialmente yo para calcular una
operación hago una pequeña parte
secuencial después subo al árbol hasta
cierra hasta que encuentro el que
contiene la respuesta y bajó por él y
termina completando la operación en las
paredes eso acelera todas las
operaciones y bien parametrizado el
constante
si sigues en un ejemplo en muchas
estructuras muy bonitas el área de
estructuras de datos compactas está
bastante desarrollado hoy en día existe
el primer libro sobre ellas que toma
toma la cumbre digamos varias
estructuras de datos que se pueden
representar en forma compacta como
secuencia de bits permutaciones
secuencia de símbolos para investir como
vimos árboles grafos grillas geométricas
texto etc
mis principales temas de investigación
en este momento son estructuras de datos
básicas árboles grafos bueno todas estas
estoy interesado en datos altamente
repetitivos que están surgiendo mucho
últimamente por los documentos con muy
diversión y esta competición fuerte
multi versiones por los secuenciadores
de genomas que producen muchos genoma o
reese de la misma especie que tiene
mucha repetitividad y son muy
comprensibles pero necesitan técnicas
distintas las que existan trabajo muy
especialmente en colecciones de textos
se trace diccionarios recuperación de
documentos xml
árboles de sufijos como vimos y también
al tema de en collins que son
estructuras que ya no permiten recuperar
los datos originales sino solamente
responder cierto tipo de preguntas y
entonces pueden romper las barreras de
la entropía porque nos permite recuperar
los datos
aquí como tessio codificar a sólo el
tipo de toks track
puedo realizar las operaciones que me
das tipos del dos tracto pero no puedo
recuperar el dash
e
podemos consultar en esta página de las
tesis realizadas para que vean el tipo
de trabajo que han hecho mis alumnos en
este momento tengo dos alumnos de
magisterio 5 de doctorado no todos en
chillán
y ponerlos los temas que están
relacionadas con los que vimos antes y
está este cuadro para que vean que mis
alumnos pasan bastante por unas paseaban
bastante antes del
de la época del corona vinos
conference es donde han publicado esta
villa es que han hecho y donde donde
están laboralmente en general están de
profesores de universidades en puestos
interesante en la industria algunos
haciendo doctorado y bajista
desde 2008
las estrellitas son este para word
presenta los mejores artículos de
estudiantes
finalmente dispongo de ir bastante
financiamiento en financiamiento para
temas de bioinformática para temas de
bases de datos y para tema de
estructuras de datos compartan en
general
esto eso es todo los espera pueden
escribir una tenían el mail del comienzo
de la de las tres 'leyes si tienen algún
tema de investigación que les interesa
en particular rossi le pareció
interesante el área y podemos buscar
algún tema
eso es todo
me despido gracias por su atención
Weitere ähnliche Videos ansehen
5.0 / 5 (0 votes)