Many changes on Model and Controller