object oriented additions