making it oop...