more fault tolerant and works with fakes3