update: convolute with objects to practice OOP