!7 module HourlyOnMark > DynPrintLog { transient java.util.Timer timer; start { startTimer(); ownResource(tempAddToList((L) dm_getOSOpt('timeJumpDetector_onTimeJump), r { temp enter(); cancelTimer(timer); startTimer(); })); } void startTimer { timer = atTheStartOfEveryHour(r { logQuoted(javaxDataDir("hourly-mark.log"), print("On at: ", localDateWithSeconds())); }); } }