     @updateToggle @humanData
 
   officeHoursTimeout: ->
-    now = utcDate().getTime()
+    now = @officeTimestamp()
     officeOpen = @officeOpenTimestamp() - now
     officeClose = @officeCloseTimestamp() - now
     nextChange = if officeOpen < officeClose then officeOpen else officeClose


  isOutOfOffice: ->
    return false if !@options["outOfOffice"]
    now = utcDate().getTime()
    !(@officeOpenTimestamp() <= now && now <= @officeCloseTimestamp())

  officeOpenTimestamp: ->


  officeHoursOverlapDays: ->
    @outOfOffice["officeOpenHour"] < @outOfOffice["officeCloseHour"]

  officeTimestamp: ->
    if window.moment
      moment().tz(@outOfOffice["timezone"]).valueOf()
    else
      utcDate().getTime()

  debounce: (func, threshold, execAsap) ->
    timeout = null
