todas las funciones implementadas, no anda ni en pedo, pero están
implementadas
agregué un par de comentarios par hacerlo un poco más facil