comentadas las funciones del codigo cliente