Added OO concepts stuff