added fault tolerance to client