oops
More error handling and flexibility
Create a special var for the initial value