added update controller, untested