algo mejorado pero faltan cosas