why do you reset this instead of checking for zero?