Codigo funcional

Pendiente de comentarios y salidas optimizadas