code: function checkTimes() {
  		var now = new HDate();
  
  		if (!today.isSameDate(now)) {
  			events.emit('dayChange');
  			today = now;
  		}
  
  		function close(obj, compare) {
  			return c.filter(c[map](obj, function(time){
  				return time - nowGreg;
  			}), function(time) {
  				return time > 0 && time - compare < 0;
  			});
  		}
  
  		var nowGreg = new Date(),
  			almostTime = close(now.getZemanim(), events.beforeZeman),
  			customTimes = close(events.customs, events.refreshInterval);
  
  		for (var zeman in almostTime) {
  			events.emit('almostZeman', zeman, almostTime[zeman]);
  			if (almostTime[zeman] < events.refreshInterval) {
  				events.emit('atZeman', zeman);
  			}
  		}
  		for (var custom in customTimes) {
  			events.emit('custom', custom);
  		}
  	}
docs: 10 minutes