rebuilt with original reset method