supports state.update()
removed old proof-of-concept