implemented remains methods, added update controller