anchor.diff:      NativeDay = cloudi_timestamp:
                   convert(NanoSecondsDay, nanosecond, native),
       NanoSecondsDowntime = nanoseconds_downtime(UpdateTimeList,
  -                                               NativeDay, TimeNow),
  +                                               TimeNow - NativeDay),
       AvailabilityDay = (erlang:min(NanoSecondsRunning, NanoSecondsDay) -
           NanoSecondsDowntime) / NanoSecondsDay,
       availability_to_string(AvailabilityDay).
  
positive.code:     NativeWeek = cloudi_timestamp:
                   convert(NanoSecondsWeek, nanosecond, native),
      NanoSecondsDowntime = nanoseconds_downtime(UpdateTimeList,
                                                 NativeWeek, TimeNow),
      AvailabilityWeek = (erlang:min(NanoSecondsRunning, NanoSecondsWeek) -
          NanoSecondsDowntime) / NanoSecondsWeek,
      availability_to_string(AvailabilityWeek).
  
negative.code:                   convert(cloudi_math:ceil(NanoSecondsMonth),
                            nanosecond, native),
      NanoSecondsDowntime = nanoseconds_downtime(UpdateTimeList,
                                                 TimeNow - NativeMonth),
      AvailabilityMonth = (erlang:min(NanoSecondsRunning, NanoSecondsMonth) -
          NanoSecondsDowntime) / NanoSecondsMonth,
      availability_to_string(AvailabilityMonth).
  