let set (counter: counter) (value: int) : unit = if value >= 0 then counter := value else raise OVERFLOW