nextName :: St -> St
nextName s@St { counter } = s { counter = succ counter }
nextName :: St -> St
nextName s@St { counter } = s { counter = succ counter }
nextName s@St { counter } = s { counter = succ counter }