add fault tolerance for root