safekeeping checking, benchmark not done yet, not tried to compile