Added more code to new OOP implementation