added code to dispose timers on exit