Rehecho todo el codigo