some impacting changes from setTimeout removal and EventDispatcher enhancement