OOP
clock
defer