started to implement Controller, changed return typ of compute critical points