generateBindingIn :: MonadState s m => Lens' s NameGenerator -> m Binding
generateBindingIn accessor = do
    (bnd, gen') <- generateBindingFromGenerator <$> use accessor
    accessor .= gen'
    pure bnd
generateBindingIn :: MonadState s m => Lens' s NameGenerator -> m Binding
generateBindingIn accessor = do
    (bnd, gen') <- generateBindingFromGenerator <$> use accessor
    accessor .= gen'
    pure bnd
generateBindingIn accessor = do
    (bnd, gen') <- generateBindingFromGenerator <$> use accessor
    accessor .= gen'
    pure bnd