Versión final eliminando redundancia de código