still needs to fix reset