added zeroCallback, initCallback, timerCallback