let inc_by (counter: counter) (increment: int) : unit = let new_value = !counter + increment in if new_value > !counter then counter := new_value else raise OVERFLOW