update :: Input a => GNG a -> a -> GNG a
update gng input = State.execState (update' input) gng
update :: Input a => GNG a -> a -> GNG a
update gng input = State.execState (update' input) gng
update gng input = State.execState (update' input) gng