Add third level
Add reset function
Add proper exits