many changes, including working reset routine