making it object oriented