updates to design and logic.