added fault tolerance, whatever.