Some OOP-ization