Make tick() pure virtual and make destructor virtual