comentadas todas las funciones