Development of Open Source Extension for Microcontrolled Systems with Scratch Approach in Educational Robotics

 
D
E
S
A
R
R
O
L
L
O
 
D
E
 
U
N
A
 
E
X
T
E
N
S
I
Ó
N
 
D
E
 
C
Ó
D
I
G
O
 
A
B
I
E
R
T
O
 
P
A
R
A
 
S
I
S
T
E
M
A
S
M
I
C
R
O
C
O
N
T
R
O
L
A
D
O
S
 
E
N
 
B
A
S
E
 
A
 
S
C
R
A
T
C
H
 
C
O
N
 
E
N
F
O
Q
U
E
 
A
 
R
O
B
Ó
T
I
C
A
E
D
U
C
A
T
I
V
A
 
Presentado por:
González Caiza Josselyn del Pilar
Director:
 
       Ing. Ibarra Jácome, Oswaldo Alexander. MGs
 
Departamento de Eléctrica,  Electrónica  y Telecomunicaciones
Carrera de Ingeniería en Electrónica, Automatización y Control
 
índice
 
Antecedentes
Objetivos
Fundamento Teórico
Robótica Educativa
Robótica móvil
Scratch
Desarrollo
Pruebas
Conclusiones
Recomendaciones
Trabajos futuros
 
Antecedentes
 
En la nueva era tecnológica la
importancia de la apropiación de
las TIC en los procesos de
enseñanza y aprendizaje debe
estar integrada a las políticas
educativas, debido a esto existe
un interés por introducir
nociones de programación en
contextos educativos a partir de
diferentes herramientas
 
Hora del código evento mundial
 
La educación STEM es un enfoque interdisciplinario al
aprendizaje que remueve las barreras tradicionales de las cuatro
disciplinas, integra en sus actividades, las conecta con el mundo
real con experiencias rigurosas y relevantes para los estudiantes
 
La inclusión de la robótica en la metodología STEM permite el acercamiento del estudiante al
campo de la ingeniería, mediante el planteamiento de retos que parten de una necesidad de
que el robot realice determinados procedimientos, que pueden ser solucionados de manera
cooperativa, con el fin de cumplir los objetivos planteados
 
Objetivos
 
Objetivo General
Desarrollar una extensión de código abierto para sistemas microcontrolados en base a Scracth con
enfoque a robótica educativa
Objetivos Específicos
Desarrollar la conexión entre el microcontrolador y Mblock para entablar la comunicación entre ellos.
Realizar el acondicionamiento de los periféricos del sistema microcontrolado a fin de tener compatibilidad con la
extensión desarrollada en Mblock.
Diseñar e implementar el robot móvil con el fin de visualizar de manera física la programación desarrollada en
Mblock.
Realizar pruebas de funcionamiento entre la extensión desarrollada, el robot móvil y la adaptación del usuario
con el sistema.
 
Robótica Educativa
Se define como:
 
La robótica ha estado operando en el sistema educativo mundial por más de 15 años
 
Importancia de la robótica educativa
 
Robótica móvil
 
Morfología
 
Scratch
 
Scratch es un medio de programación desarrollado por un
conjunto de investigadores del Instituto de Tecnología de
Massachusetts (MIT)
 
A partir de su lanzamiento al público en mayo de 2007, la
página Web de Scratch se ha transformado en una gran
comunidad online, en el cual los usuarios aprenden,
intercambian ideas y unen programas propios con los de
otros participantes
 
La plataforma Scratch toma inspiración de plataformas
similares como es Logo, los e-toys de Squeak y
LogoBlocks, mientras que su lenguaje de programación se
basa en Logo, y presenta un entorno en el que múltiples
objetos pueden evolucionar e interactuar.
 
mBlock
 
Es un entorno gráfico de
programación basado en el editor
Scratch 2.0 y Scratch 3.0, sus
funcionalidades son las mismas
al igual que sus aplicaciones y el
público al cual va dirigido con el
objetivo de introducir la robótica
de forma sencilla y enseñar a
programar robots basados en un
solo microcontrolador
 
Hardware
 
El robot móvil esta
constituido por
 
Software
 
Bloques de programación
 
Bloque de encabezado
Este bloque es el que permite la
comunicación entre la plataforma
mBlock y el software Arduino que ha su
vez carga el programa desarrollado por
el usuario en la tarjeta de control.
Solo debe ir al inicio del programa.
 
Bloques programación movimiento del robot
Se observa 6 bloques:
El bloque de conexión debe estar presente
siempre que se pretenda iniciar movimiento
del robot  solo debe ir una vez
 
Bloques
 programación sensor ultrasónico
El primer bloque  
inicia la conexión con el
sensor ultrasónico, debe estar presente siempre
que se requiera su uso
El segundo bloque recibe la lectura del sensor,
se debe comparar con valores enteros.
 
Boques
 de programación sensor seguidor de línea
El primer bloque inicia la conexión con el sensor
seguidor de línea, debe estar presente siempre
que se requiera su uso.
Este bloque recibe la lectura del sensor, para
ello se debe utilizar una comparación con HIGH
y LOW.
 
 
Bloques de programación leds rgb
El primer bloque enciende los leds de acuerdo
con la elección del usuario.
 
Esto sucede de
manera similar con los otros bloques del led.
El segundo bloque permite encender el led RGB
modificando los valores de 0 a 255.
Esto sucede de manera similar con los otros
bloques led.
 
Bloques de programación Matriz de leds
Este bloque inicia la conexión con la matriz led,
debe estar presente siempre que se requiera su
uso
Imprime un texto móvil permitiendo modificar la
velocidad de transición.
Permite imprimir números en la matriz led.
Borra los datos presentados en la pantalla.
Permite expresar varios estados emocionales
dependiendo de la elección de usuario
 
Bloques de programación  robot resuelve laberintos
Permite resolver el laberinto de manera
autónoma.
Conecta los sensores laterales para su
funcionamiento.
Este bloque recibe la lectura del sensor, para
ello se debe utilizar una comparación con HIGH
y LOW.
 
Integración de Hardware y Software
 
Pruebas
 
En la Gráfico se deduce que de las 10 interacciones realizadas por el robot, tres veces
el robot presentó dificultad al realizar su recorrido debido a un tropiezo, el cual se
superó al ser nuevamente el robot orientando por el usuario volviendo a su recorrido
habitual permitiéndole terminar el laberinto. En promedio el robot tarda en resolver
el laberinto 57 segundos durante todo su trayecto
 
Programa realizado por los usuarios en la ultima prueba
 
Aspectos relevantes de las pruebas
E
l 60% de los usuarios estuvieron participativos
y con intenciones de seguir aprendiendo,
mientras que en el 40% restante presentan
ciertas dificultades
E
l 50% de los usuarios presentaron complicaciones,
mientras que solo el 10% de los usuarios no
lograron terminar las actividades dadas y solo el
40% de los usuarios no presentaron ninguna
dificultad.
Se observa que el 50% de los usuarios no
trabajan en grupo mientras el 20% tratan de
aportar ideas y ser participativos, solo el 30%
trabaja en grupo e incluye las ideas de todos
los usuarios
E
l 50% de los usuarios crearon un entorno
donde se familiarizaron, mientras que el 30%
tuvo dificultades, solo el 20% de los usuarios
no lograron realizar las actividades planteadas
 
Conclusiones
 
Se estableció la conexión, a través del estándar de comunicación USB, entre la tarjeta de control teensy 2++ y el entorno de
desarrollo mBlock, software con el cual se ha desarrollado la extensión del robot móvil.
El robot móvil está diseñado de manera modular, de esta manera se pueden adaptar diferentes elementos entre sensores y
actuadores los cuales funcionan de forma individual o conjunta según sea el caso. Estos elementos se conectan a la tarjeta de
control a través de cables, cada elemento sensor o actuador posee un bloque para su funcionamiento y conexión.
Después de cargar el programa a la tarjeta de control el robot móvil ejecuta las instrucciones, los pasos para cargar el programa se
encuentran en el manual de usuario, el principal inconveniente fue ejecutar de manera simultánea el programa y la aplicación debido
a un problema con el firmware de mBlock y su compatibilidad con una tarjeta de control especifica.
Se puede concluir que la extensión desarrollada para mBlock junto con el robot, trabajan de manera intuitiva y fácil ya que ningún
usuario presento mayor dificultad, esto se evidencio en las pruebas realizadas puesto que, el 50% de los usuarios, manejaron el
robot y la plataforma sin ninguna complicación mientras que, el otro 50% necesitó constante monitoreo y apoyo del tutor, se indica
que estas estadísticas pueden mejorar con la continua utilización del sistema robótico y la destreza desarrollada al hacerlo.
 
El 60% de los usuarios mostraron total atención por el robot móvil con su extensión de
mBlock, mientras que el 40% no muestran interés profundo en el tema, esto se debe a las
aptitudes y actitudes afines con la tecnología presentada.
El robot y su extensión en mBlock, ayuda al aprendizaje, fomenta la lógica espacial y la
resolución de problemas evidenciado por medio de las pruebas donde el 40% de los
usuarios lograron las actividades solos, mientras que el 50% completó las actividades con
asesoría y el 10% de los usuarios presentaron dificultades mayores.
Debido a las pruebas realizadas y al observar la interacción de los usuarios se concluye
que, para mejor manejo de la extensión y uso del robot móvil debe estar presente un tutor
que guie a los usuarios con la lógica para resolver los problemas planteados, para utilizar el
robot con su extensión, trabajar en grupo, entre otras situaciones que se puedan presentar.
 
Recomendaciones
 
Se debe cargar la batería a partir de las 4 horas de uso aproximadamente, este tiempo depende de
cuantos elementos se estén utilizando. Otra manera de verificar que la batería necesita ser recarga es
que el robot empieza a perder potencia y realiza movimientos entorpecidos.
Para cargar la batería no es necesario desarmar el robot móvil basta con extender los cables y
conectar a la fuente.
Para usar el laberinto es recomendable retirar los sensores seguidores de línea ubicados en la parte
delantera del robot con el objetivo de evitar golpes u obstrucciones a lo largo del camino.
 
Trabajos a futuros
 
Desarrollar un firmware para la comunicación de mBlock con diferentes tarjetas de control.
Desarrollar un prototipo con su aplicación enfocado a niños de educación inicial.
Evaluar cómo influye en el desarrollo cognitivo, emocional y social la robótica educativa en niño y
adolescentes.
Slide Note
Embed
Share

In the era of technological advancements, integrating programming concepts into educational contexts is crucial. This project focuses on developing an open-source code extension for microcontrolled systems using Scratch, emphasizing educational robotics. It aims to establish communication between microcontrollers and Mblock, adapt system peripherals for compatibility, design and implement a mobile robot to visualize programming, and conduct functional tests. The inclusion of robotics in STEM methodology facilitates student engagement in engineering challenges.

  • Educational Robotics
  • STEM Education
  • Scratch Programming
  • Open Source Development
  • Microcontrolled Systems

Uploaded on Apr 06, 2024 | 6 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

E N D

Presentation Transcript


  1. Departamento de Elctrica, Electrnica y Telecomunicaciones Carrera de Ingenier a en Electr nica, Automatizaci n y Control DESARROLLO DE UNA EXTENSI N DE C DIGO ABIERTO PARA SISTEMAS MICROCONTROLADOS EN BASE A SCRATCH CON ENFOQUE A ROB TICA EDUCATIVA Presentado por: Gonz lez Caiza Josselyn del Pilar Director: Ing. Ibarra J come, Oswaldo Alexander. MGs

  2. ndice Antecedentes Objetivos Fundamento Te rico Rob tica Educativa Rob tica m vil Scratch Desarrollo Pruebas Conclusiones Recomendaciones Trabajos futuros

  3. Antecedentes En la nueva era tecnol gica la importancia de la apropiaci n de las TIC en los procesos de ense anza y aprendizaje debe estar integrada a las pol ticas educativas, debido a esto existe un inter s por introducir nociones de programaci n en contextos educativos a partir de diferentes herramientas Hora del c digo evento mundial

  4. S T E M Science Technology Engineering Mathematics La educaci n STEM es un enfoque interdisciplinario al aprendizaje que remueve las barreras tradicionales de las cuatro disciplinas, integra en sus actividades, las conecta con el mundo real con experiencias rigurosas y relevantes para los estudiantes

  5. La inclusin de la robtica en la metodologa STEM permite el acercamiento del estudiante al campo de la ingenier a, mediante el planteamiento de retos que parten de una necesidad de que el robot realice determinados procedimientos, que pueden ser solucionados de manera cooperativa, con el fin de cumplir los objetivos planteados

  6. Objetivos Objetivo General Desarrollar una extensi n de c digo abierto para sistemas microcontrolados en base a Scracth con enfoque a rob tica educativa Objetivos Espec ficos Desarrollar la conexi n entre el microcontrolador y Mblock para entablar la comunicaci n entre ellos. Realizar el acondicionamiento de los perif ricos del sistema microcontrolado a fin de tener compatibilidad con la extensi n desarrollada en Mblock. Dise ar e implementar el robot m vil con el fin de visualizar de manera f sica la programaci n desarrollada en Mblock. Realizar pruebas de funcionamiento entre la extensi n desarrollada, el robot m vil y la adaptaci n del usuario con el sistema.

  7. Robtica Educativa Martial Vivet Se define como: Actividad de concepci n, creaci n y puesta en funcionamiento, con fines pedag gicos, objetos tecnol gicos Monique y Guy El uso de herramientas rob ticas educativas para fomentar en los alumnos desde temprana edad la resoluci n de problemas. Ruiz Velasco Ofrece un micro mundo excelente para la ense anza y aprendizaje de las ciencias y tecnolog as, dejando obsoleta la educaci n tradicional

  8. La robtica ha estado operando en el sistema educativo mundial por ms de 15 aos Rob tica educativa en Jap n Se ha impulsando una serie de iniciativas para familiarizar a ni os, ni as y j venes con la rob tica educativa. Los robots educacionales brindan la posibilidad de aprender disciplinas relacionadas con la ingenier a, ciencias sociales, literatura, dise o, danza, m sica y arte. Rob tica educativa en Espa a La programaci n y la rob tica ya son asignaturas curriculares en algunas Comunidades Aut nomas el objetivo es mejorar la creatividad, el trabajo en equipo, el pensamiento cient fico, la reflexi n y la resoluci n de problemas. Rob tica educativa en Latinoam rica La falta de recursos econ micos, recursos tecnol gicos entre otras situaciones limitan una educaci n que utilice herramientas tecnol gicas

  9. Importancia de la robtica educativa Est mulos creativos Pensamiento y razonamiento l gico Trabajo en Equipo Aptitudes que desarrolla la rob tica educativa Capacidades intelectuales Desarrolla la autonom a

  10. Robtica mvil Aporta soluciones tecnol gicas innovadoras orientadas al desarrollo de robots sofisticados Actualmente se considera un rea de la tecnolog a m s avanzada Las diferentes gamas de robots y la adaptaci n de dise os

  11. Morfologa los robots con ruedas son sencillos y f ciles de construir, la carga que pueden transportar es mayor Configuraci n de ruedas los sistemas que emplean patas son bastante complejos, sin embargo, existen variantes de menor complejidad Sistema de Marcha Configuraci n Articuladas Robot tipo orugas est n equipados con arreglos de dos o m s ruedas unidas por una cadena creando el efecto de una rueda sin fin Otras Configuraciones

  12. Sistema sensoriales Sensores internos Sensores externos Sensores de presencia y de proximidad Sensores de posici n Sensores de velocidad Sensores de Fuerza Sensores de aceleraci n Sensores de visi n Sensores de localizaci n

  13. Scratch Scratch es un medio de programaci n desarrollado por un conjunto de investigadores del Instituto de Tecnolog a de Massachusetts (MIT) A partir de su lanzamiento al p blico en mayo de 2007, la p gina Web de Scratch se ha transformado en una gran comunidad online, en el cual los usuarios aprenden, intercambian ideas y unen programas propios con los de otros participantes La plataforma Scratch toma inspiraci n de plataformas similares como es Logo, los e-toys de Squeak y LogoBlocks, mientras que su lenguaje de programaci n se basa en Logo, y presenta un entorno en el que m ltiples objetos pueden evolucionar e interactuar.

  14. mBlock Es un entorno gr fico de programaci n basado en el editor Scratch 2.0 y Scratch 3.0, sus funcionalidades son las mismas al igual que sus aplicaciones y el p blico al cual va dirigido con el objetivo de introducir la rob tica de forma sencilla y ense ar a programar robots basados en un solo microcontrolador

  15. Motores Hardware El robot m vil esta constituido por Sistema de locomoci n Drive Llantas Tarjeta de control Sensor de proximidad ultras nico Sensor IR seguidor de l nea Sistema sensorial y componentes varios Diodos leds RGB Matriz de Led

  16. Ubicacin de los elementos y diagrama de conexi n

  17. Software La programaci n por bloques permite generar programas sin necesidad de escribir c digo, volvi ndolo f cil, did ctico y l dico. La programaci n por bloques presenta clasificaci n por categor as y colores volviendo una programaci n intuitiva con un c digo entendible. Desarrollo del pensamiento computacional. Crea fundamentos de programaci n permitiendo aprender otros lenguajes de programaci n m s complejos

  18. Bloques de programacin Bloque de encabezado Este bloque es el que permite la comunicaci n entre la plataforma mBlock y el software Arduino que ha su vez carga el programa desarrollado por el usuario en la tarjeta de control. Solo debe ir al inicio del programa.

  19. Bloques programacin movimiento del robot Se observa 6 bloques: El bloque de conexi n debe estar presente siempre que se pretenda iniciar movimiento del robot solo debe ir una vez

  20. Bloques programacin sensor ultrasnico El primer bloque inicia la conexi n con el sensor ultras nico, debe estar presente siempre que se requiera su uso El segundo bloque recibe la lectura del sensor, se debe comparar con valores enteros.

  21. Boques de programacin sensor seguidor de lnea El primer bloque inicia la conexi n con el sensor seguidor de l nea, debe estar presente siempre que se requiera su uso. Este bloque recibe la lectura del sensor, para ello se debe utilizar una comparaci n con HIGH y LOW.

  22. Bloques de programacin leds rgb El primer bloque enciende los leds de acuerdo con la elecci n del usuario. Esto sucede de manera similar con los otros bloques del led. El segundo bloque permite encender el led RGB modificando los valores de 0 a 255. Esto sucede de manera similar con los otros bloques led.

  23. Bloques de programacin Matriz de leds Este bloque inicia la conexi n con la matriz led, debe estar presente siempre que se requiera su uso Imprime un texto m vil permitiendo modificar la velocidad de transici n. Permite imprimir n meros en la matriz led. Borra los datos presentados en la pantalla. Permite expresar varios estados emocionales dependiendo de la elecci n de usuario

  24. Bloques de programacin robot resuelve laberintos Permite resolver el laberinto de manera aut noma. Conecta los sensores laterales para su funcionamiento. Este bloque recibe la lectura del sensor, para ello se debe utilizar una comparaci n con HIGH y LOW.

  25. Integracin de Hardware y Software Se realiza el programa que se va a cargar en la tarjeta de control del robot m vil Descargar teensyduino Se carga el archivo y se enciende al robot para que ejecute el programa

  26. Pruebas En la primera prueba el robot debe resolver el laberinto por repetidas ocasiones con el objetivo de medir el tiempo y observar los inconvenientes que se pudiera presentar. La segunda prueba el usuario podr crear su propio programa con el objetivo de experimentar el funcionamiento del robot y de su extensi n desarrollada. La ltima prueba de manera conjunta todos los usuarios desarrollan un algoritmo que permitir al robot resolver el laberinto La tercera prueba concite en varias tareas a cumplir con diferentes dificultades

  27. Tiempo que tarda el robot en resolver el laberinto 60 59 Tiempo en segundos 58 57 56 55 54 1 2 3 4 5 6 7 8 9 10 N mero de intentos En la Gr fico se deduce que de las 10 interacciones realizadas por el robot, tres veces el robot present dificultad al realizar su recorrido debido a un tropiezo, el cual se super al ser nuevamente el robot orientando por el usuario volviendo a su recorrido habitual permiti ndole terminar el laberinto. En promedio el robot tarda en resolver el laberinto 57 segundos durante todo su trayecto

  28. Programa realizado por los usuarios en la ultima prueba

  29. Aspectos relevantes de las pruebas El robot m vil y la aplicaci n fue de inter s del usuario El usuario genero estrategias para resolver los problemas planteados Si Posiblemente No Si Posiblemente No El 60% de los usuarios estuvieron participativos y con intenciones de seguir aprendiendo, mientras que en el 40% restante presentan ciertas dificultades El 50% de los usuarios presentaron complicaciones, mientras que solo el 10% de los usuarios no lograron terminar las actividades dadas y solo el 40% de los usuarios no presentaron ninguna dificultad.

  30. El usuario trabajo en equipo para resolver los problemas planteados Se creo un entorno de relaci n humano-entorno-robot Si Posiblemente No Si Posiblemente No Se observa que el 50% de los usuarios no trabajan en grupo mientras el 20% tratan de aportar ideas y ser participativos, solo el 30% trabaja en grupo e incluye las ideas de todos los usuarios El 50% de los usuarios crearon un entorno donde se familiarizaron, mientras que el 30% tuvo dificultades, solo el 20% de los usuarios no lograron realizar las actividades planteadas

  31. Conclusiones Se estableci la conexi n, a trav s del est ndar de comunicaci n USB, entre la tarjeta de control teensy 2++ y el entorno de desarrollo mBlock, software con el cual se ha desarrollado la extensi n del robot m vil. El robot m vil est dise ado de manera modular, de esta manera se pueden adaptar diferentes elementos entre sensores y actuadores los cuales funcionan de forma individual o conjunta seg n sea el caso. Estos elementos se conectan a la tarjeta de control a trav s de cables, cada elemento sensor o actuador posee un bloque para su funcionamiento y conexi n. Despu s de cargar el programa a la tarjeta de control el robot m vil ejecuta las instrucciones, los pasos para cargar el programa se encuentran en el manual de usuario, el principal inconveniente fue ejecutar de manera simult nea el programa y la aplicaci n debido a un problema con el firmware de mBlock y su compatibilidad con una tarjeta de control especifica. Se puede concluir que la extensi n desarrollada para mBlock junto con el robot, trabajan de manera intuitiva y f cil ya que ning n usuario presento mayor dificultad, esto se evidencio en las pruebas realizadas puesto que, el 50% de los usuarios, manejaron el robot y la plataforma sin ninguna complicaci n mientras que, el otro 50% necesit constante monitoreo y apoyo del tutor, se indica que estas estad sticas pueden mejorar con la continua utilizaci n del sistema rob tico y la destreza desarrollada al hacerlo.

  32. El 60% de los usuarios mostraron total atencin por el robot mvil con su extensin de mBlock, mientras que el 40% no muestran inter s profundo en el tema, esto se debe a las aptitudes y actitudes afines con la tecnolog a presentada. El robot y su extensi n en mBlock, ayuda al aprendizaje, fomenta la l gica espacial y la resoluci n de problemas evidenciado por medio de las pruebas donde el 40% de los usuarios lograron las actividades solos, mientras que el 50% complet las actividades con asesor a y el 10% de los usuarios presentaron dificultades mayores. Debido a las pruebas realizadas y al observar la interacci n de los usuarios se concluye que, para mejor manejo de la extensi n y uso del robot m vil debe estar presente un tutor que guie a los usuarios con la l gica para resolver los problemas planteados, para utilizar el robot con su extensi n, trabajar en grupo, entre otras situaciones que se puedan presentar.

  33. Recomendaciones Se debe cargar la bater a a partir de las 4 horas de uso aproximadamente, este tiempo depende de cuantos elementos se est n utilizando. Otra manera de verificar que la bater a necesita ser recarga es que el robot empieza a perder potencia y realiza movimientos entorpecidos. Para cargar la bater a no es necesario desarmar el robot m vil basta con extender los cables y conectar a la fuente. Para usar el laberinto es recomendable retirar los sensores seguidores de l nea ubicados en la parte delantera del robot con el objetivo de evitar golpes u obstrucciones a lo largo del camino.

  34. Trabajos a futuros Desarrollar un firmware para la comunicaci n de mBlock con diferentes tarjetas de control. Desarrollar un prototipo con su aplicaci n enfocado a ni os de educaci n inicial. Evaluar c mo influye en el desarrollo cognitivo, emocional y social la rob tica educativa en ni o y adolescentes.

More Related Content

giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#