button update, while loops