first version of all controller