código reestructurado , en function