we now have a 'reset' function which is quite harsh