Added new classes and altered the constraints