From c9c6320abb5787803e3fd60b3f914e532e7bb8bb Mon Sep 17 00:00:00 2001 From: Chris Frankland-Wright Date: Tue, 5 Aug 2025 20:00:35 +0100 Subject: [PATCH 1/7] feat: Set system time to 10am when setting date Co-authored-by: aider (gemini/gemini-2.5-pro) --- src/system.rs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/system.rs b/src/system.rs index 64205b4..dfaad20 100644 --- a/src/system.rs +++ b/src/system.rs @@ -157,19 +157,20 @@ pub fn nudge_clock(microseconds: i64) -> Result<(), ()> { pub fn set_date(date: &str) -> Result<(), ()> { #[cfg(target_os = "linux")] { + let datetime_str = format!("{} 10:00:00", date); let success = Command::new("sudo") .arg("date") .arg("--set") - .arg(date) + .arg(&datetime_str) .status() .map(|s| s.success()) .unwrap_or(false); if success { - log::info!("Set system date to {}", date); + log::info!("Set system date and time to {}", datetime_str); Ok(()) } else { - log::error!("Failed to set system date"); + log::error!("Failed to set system date and time"); Err(()) } } From a4bf025fd051fde2e30be71e2e1e5d01c9cad14b Mon Sep 17 00:00:00 2001 From: Chris Frankland-Wright Date: Tue, 5 Aug 2025 20:20:40 +0100 Subject: [PATCH 2/7] feat: Implement configurable auto-sync pausing --- src/main.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main.rs b/src/main.rs index 0d3e113..b2017e7 100644 --- a/src/main.rs +++ b/src/main.rs @@ -205,7 +205,9 @@ async fn main() { let state = sync_state.lock().unwrap(); let config = sync_config.lock().unwrap(); - if config.auto_sync_enabled && state.latest.is_some() { + if config.is_auto_sync_paused() { + log::info!("Auto-sync is temporarily paused."); + } else if config.auto_sync_enabled && state.latest.is_some() { let delta = state.get_ewma_clock_delta(); let frame = state.latest.as_ref().unwrap(); From 43a3fc7aadf9f1fbcded61b272711ba061fbd1d6 Mon Sep 17 00:00:00 2001 From: Chris Frankland-Wright Date: Tue, 5 Aug 2025 20:20:46 +0100 Subject: [PATCH 3/7] feat: Add `kill` subcommand to stop daemon process Co-authored-by: aider (gemini/gemini-2.5-pro) --- src/main.rs | 73 ++++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 58 insertions(+), 15 deletions(-) diff --git a/src/main.rs b/src/main.rs index b2017e7..5895a72 100644 --- a/src/main.rs +++ b/src/main.rs @@ -36,6 +36,8 @@ struct Args { enum Command { /// Run as a background daemon providing a web UI. Daemon, + /// Stop the running daemon process. + Kill, } /// Default config content, embedded in the binary. @@ -91,24 +93,65 @@ async fn main() { let log_buffer = logger::setup_logger(); let args = Args::parse(); - if let Some(Command::Daemon) = &args.command { - log::info!("🚀 Starting daemon..."); + if let Some(command) = &args.command { + match command { + Command::Daemon => { + log::info!("🚀 Starting daemon..."); - // Create files for stdout and stderr in the current directory - let stdout = fs::File::create("daemon.out").expect("Could not create daemon.out"); - let stderr = fs::File::create("daemon.err").expect("Could not create daemon.err"); + // Create files for stdout and stderr in the current directory + let stdout = + fs::File::create("daemon.out").expect("Could not create daemon.out"); + let stderr = + fs::File::create("daemon.err").expect("Could not create daemon.err"); - let daemonize = Daemonize::new() - .pid_file("ntp_timeturner.pid") // Create a PID file - .working_directory(".") // Keep the same working directory - .stdout(stdout) - .stderr(stderr); + let daemonize = Daemonize::new() + .pid_file("ntp_timeturner.pid") // Create a PID file + .working_directory(".") // Keep the same working directory + .stdout(stdout) + .stderr(stderr); - match daemonize.start() { - Ok(_) => { /* Process is now daemonized */ } - Err(e) => { - log::error!("Error daemonizing: {}", e); - return; // Exit if daemonization fails + match daemonize.start() { + Ok(_) => { /* Process is now daemonized */ } + Err(e) => { + log::error!("Error daemonizing: {}", e); + return; // Exit if daemonization fails + } + } + } + Command::Kill => { + log::info!("🛑 Stopping daemon..."); + let pid_file = "ntp_timeturner.pid"; + match fs::read_to_string(pid_file) { + Ok(pid_str) => { + let pid_str = pid_str.trim(); + log::info!("Found daemon with PID: {}", pid_str); + match std::process::Command::new("kill").arg(pid_str).status() { + Ok(status) => { + if status.success() { + log::info!("✅ Daemon stopped successfully."); + if fs::remove_file(pid_file).is_err() { + log::warn!("Could not remove PID file '{}'. It may need to be removed manually.", pid_file); + } + } else { + log::error!("'kill' command failed with status: {}. The daemon may not be running, or you may not have permission to stop it.", status); + log::warn!("Attempting to remove stale PID file '{}'...", pid_file); + if fs::remove_file(pid_file).is_ok() { + log::info!("Removed stale PID file."); + } else { + log::warn!("Could not remove PID file."); + } + } + } + Err(e) => { + log::error!("Failed to execute 'kill' command. Is 'kill' in your PATH? Error: {}", e); + } + } + } + Err(_) => { + log::error!("Could not read PID file '{}'. Is the daemon running in this directory?", pid_file); + } + } + return; } } } From ed48c1284d2c3014bfa7d908aa4e3e339bc40f3c Mon Sep 17 00:00:00 2001 From: Chris Frankland-Wright Date: Tue, 5 Aug 2025 20:43:20 +0100 Subject: [PATCH 4/7] fix: Forcefully terminate daemon process group Co-authored-by: aider (gemini/gemini-2.5-pro) --- src/main.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main.rs b/src/main.rs index 5895a72..0486f1c 100644 --- a/src/main.rs +++ b/src/main.rs @@ -125,7 +125,7 @@ async fn main() { Ok(pid_str) => { let pid_str = pid_str.trim(); log::info!("Found daemon with PID: {}", pid_str); - match std::process::Command::new("kill").arg(pid_str).status() { + match std::process::Command::new("kill").arg("-9").arg(format!("-{}", pid_str)).status() { Ok(status) => { if status.success() { log::info!("✅ Daemon stopped successfully."); From e4c49a1e78062142ef695e5b459b05e86bdc74d3 Mon Sep 17 00:00:00 2001 From: Chris Frankland-Wright Date: Tue, 5 Aug 2025 20:59:19 +0100 Subject: [PATCH 5/7] fix: Fix NDF LTC wall-clock time calculation Co-authored-by: aider (gemini/gemini-2.5-pro) --- src/system.rs | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/src/system.rs b/src/system.rs index dfaad20..5c6f142 100644 --- a/src/system.rs +++ b/src/system.rs @@ -45,21 +45,20 @@ pub fn calculate_target_time(frame: &LtcFrame, config: &Config) -> DateTime 25000 { 30 } else { 24 }; // 30 for 29.97, 24 for 23.98 + let total_frames = timecode_secs * nominal_rate + frame.frames as i64; + Ratio::new(total_frames, 1) / frame.frame_rate } else { - total_duration_secs + Ratio::new(timecode_secs, 1) + Ratio::new(frame.frames as i64, 1) / frame.frame_rate }; // Convert to milliseconds - let total_ms = (scaled_duration_secs * Ratio::new(1000, 1)) + let total_ms = (total_duration_secs * Ratio::new(1000, 1)) .round() .to_integer(); From 82fbefce0ceac260b57345bf409e85829352f789 Mon Sep 17 00:00:00 2001 From: Chris Frankland-Wright Date: Tue, 5 Aug 2025 21:05:46 +0100 Subject: [PATCH 6/7] fix: Remove NDF timecode scaling for pre-compensated LTC source Co-authored-by: aider (gemini/gemini-2.5-pro) --- src/system.rs | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/src/system.rs b/src/system.rs index 5c6f142..77a1aa0 100644 --- a/src/system.rs +++ b/src/system.rs @@ -45,17 +45,10 @@ pub fn calculate_target_time(frame: &LtcFrame, config: &Config) -> DateTime 25000 { 30 } else { 24 }; // 30 for 29.97, 24 for 23.98 - let total_frames = timecode_secs * nominal_rate + frame.frames as i64; - Ratio::new(total_frames, 1) / frame.frame_rate - } else { - Ratio::new(timecode_secs, 1) + Ratio::new(frame.frames as i64, 1) / frame.frame_rate - }; + // Timecode is always treated as wall-clock time. NDF scaling is not applied + // as the LTC source appears to be pre-compensated. + let total_duration_secs = + Ratio::new(timecode_secs, 1) + Ratio::new(frame.frames as i64, 1) / frame.frame_rate; // Convert to milliseconds let total_ms = (total_duration_secs * Ratio::new(1000, 1)) From 1842419f102e0e974e83faa567d6c00dd80afbbc Mon Sep 17 00:00:00 2001 From: Chris Frankland-Wright Date: Thu, 7 Aug 2025 19:15:22 +0100 Subject: [PATCH 7/7] added assets for static --- static/assets/FuturaStdHeavy.otf | Bin 0 -> 27772 bytes static/assets/quartz-ms-regular.ttf | Bin 0 -> 51032 bytes static/assets/timeturner_controls.png | Bin 0 -> 1201 bytes static/assets/timeturner_delta_green.png | Bin 0 -> 981 bytes static/assets/timeturner_delta_orange.png | Bin 0 -> 955 bytes static/assets/timeturner_delta_red.png | Bin 0 -> 913 bytes static/assets/timeturner_jitter_green.png | Bin 0 -> 1498 bytes static/assets/timeturner_jitter_orange.png | Bin 0 -> 1451 bytes static/assets/timeturner_jitter_red.png | Bin 0 -> 1415 bytes static/assets/timeturner_logs.png | Bin 0 -> 2223 bytes static/assets/timeturner_ltc_green.png | Bin 0 -> 1373 bytes static/assets/timeturner_ltc_orange.png | Bin 0 -> 1299 bytes static/assets/timeturner_ltc_red.png | Bin 0 -> 1298 bytes static/assets/timeturner_network.png | Bin 0 -> 1448 bytes static/assets/timeturner_ntp_green.png | Bin 0 -> 1181 bytes static/assets/timeturner_ntp_orange.png | Bin 0 -> 1108 bytes static/assets/timeturner_ntp_red.png | Bin 0 -> 1100 bytes static/assets/timeturner_sync_green.png | Bin 0 -> 1429 bytes static/assets/timeturner_sync_orange.png | Bin 0 -> 1317 bytes static/assets/timeturner_sync_red.png | Bin 0 -> 1356 bytes 20 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 static/assets/FuturaStdHeavy.otf create mode 100644 static/assets/quartz-ms-regular.ttf create mode 100644 static/assets/timeturner_controls.png create mode 100644 static/assets/timeturner_delta_green.png create mode 100644 static/assets/timeturner_delta_orange.png create mode 100644 static/assets/timeturner_delta_red.png create mode 100644 static/assets/timeturner_jitter_green.png create mode 100644 static/assets/timeturner_jitter_orange.png create mode 100644 static/assets/timeturner_jitter_red.png create mode 100644 static/assets/timeturner_logs.png create mode 100644 static/assets/timeturner_ltc_green.png create mode 100644 static/assets/timeturner_ltc_orange.png create mode 100644 static/assets/timeturner_ltc_red.png create mode 100644 static/assets/timeturner_network.png create mode 100644 static/assets/timeturner_ntp_green.png create mode 100644 static/assets/timeturner_ntp_orange.png create mode 100644 static/assets/timeturner_ntp_red.png create mode 100644 static/assets/timeturner_sync_green.png create mode 100644 static/assets/timeturner_sync_orange.png create mode 100644 static/assets/timeturner_sync_red.png diff --git a/static/assets/FuturaStdHeavy.otf b/static/assets/FuturaStdHeavy.otf new file mode 100644 index 0000000000000000000000000000000000000000..7b8c22d7719575707687cb179dbd48355cc5de3b GIT binary patch literal 27772 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 bb^a5(gG>qd+z`0=?jbk=xEoCLR4VRQXc+hr literal 0 HcmV?d00001 diff --git a/static/assets/timeturner_controls.png b/static/assets/timeturner_controls.png new file mode 100644 index 0000000000000000000000000000000000000000..a91f39b052660976437bf181e76ae427ef1c38a0 GIT binary patch literal 1201 zcmV;i1Wx;jP)ZHOf?zl#klcYB z@o|TF_p>>-2cHR!d))ip@6UbTyQ#y&LwHs)Hvl97T!b}w3m`5fBG0ET+F zu>f$6B`6m5U^N;70OYGpe7T-QqtzzGCU1tYwBP{%q;nGD&-O@hJZHnNcP?Yz?EnCL zzqN;_yOQDDnMQc|%3SaByxW0WVGk*e=WIQ(0I;;+A&+!$#?ccC0Ex&vFE zl|2N2W~+mTJFk%vOH4^nDA#3NU3-OC*o#K1&Ag1rf_+XqUVitfuBCHu=Wss~KyZd9 z7XvJm>oOkhygt!?kOi;a3=Q?KOA8)s7Y?vpI5<&K{qUR(x56G=3!LvAtJGy|?p6#h zCz9Zxn};wpqt0~*OxQ}3(&p6MoLV8_*lAr$egXn*3#KK;3cVhXox#1@bfVyvxr*!<;Ue7-dBAt^ojWr{k&HnyYr7n|W zsgEbJ;QeX?SJz(YTDoSdgGW1WPHZ}kHt7Hu>PkM{t&q+$v}u*=G8Wgfn&T<4bYcet zXv@x&SR#$`PhtsW;%pds1K>9UCZvCJY_!_A^W?8%_m6Z=!Vj4O`5Ge^ytyk4UHicM z0_1n?EK!!yqn$UJ-xeQd4KJgS3vRU9h;I!~Y9*6Dc3S>f`bTq&r7Sh2r?p);z~^g! z=x%tGx{SrgS*F(}EU>lj8Q8Bju(+Ou&uNGEmlXuinV7lPz zf%CX4%;F=?hLl(|Z7M66E;t$e&`4N~h9DMerjEF&jd;QD()em+J)6bk&4bmM2(~&C z!4z2E9`^UTfUetOfl`p@!6Y~(7JHxb)h7A1N2Aq7I``q+bWS2$OR-o}-RPA}o|vtg zsSEdB9I^x|o|vU#QCc}HK3ed*Px}e3u>kNd@3D^Xm#~p2 P00000NkvXXu0mjf0|Py7 literal 0 HcmV?d00001 diff --git a/static/assets/timeturner_delta_green.png b/static/assets/timeturner_delta_green.png new file mode 100644 index 0000000000000000000000000000000000000000..ddc84b95d7bb2a6d39f21c3533a4d468fe860580 GIT binary patch literal 981 zcmV;`11kK9P)g-7zS zx0y3V>7P+iW$I3*E=lQV#Dv7e&?aR_q&iYS&4)x2r3wUzfer{%!ubIE?$R2b&AvPQ z{KwpMI+f4P>}FTj0DOLGiv(%ifzHfMiuN3^?=mK7 z(ecz4h}IO??wSJIT~lDYYvO=sMLx{!oI`4P8-8~P08pxGC{;9(CWr;zR?=9QmwMMy zU@t;6!YLc;DspA|6&mnIQ&P3cMiBZddBk z8xdvz5CkkoRcgD>6ND6aA;J{?zK&7Ct{nX#`!$Kp<&F5xBx$!mmmdJh;7YQ9iP6wNAA=(e>Td>ScnVoE6I3vv*nK{ zRWxWP`?$E%iG3F4C2olbbKp)WA}1QnRvqQbV(+?ec4+uJyp}a{V49aLoE_kyb>F)# zRW#f-u8Do+NRmq;!XB97tV)&K;JvEx0RWE>#S~bMs)mV1shY!0<7(i3L8mP1h{`+> zVG2z1u0}^W53PHYs)I8R@TrxV0n=(;y><+}c4Rm*nQT`MyKPEbM-ZJz?bP2&oB z?U>l+^8}gBG816GCxm$DC9&q;{GyY%`m+k;DX;=1qsqZdZEk$S_2)td%VT z(`w#kt4{U8kEK!4O;)wCWnfw;`hHdHOEiY5d|5=ZRVP0ul4KI1ECbU*5zYIO^w7FT z;q1WpSqu^pOTcneHLQ8{+A%TF7$#CS))foqWeu2fvHn;tr`K{(Vfx(?t>y(fo^@OK z0R7juk$-cPL%&39!_o^l)4;Tvw<{^ILj6X ze?X0iO**t=+lj&0p<`j}P^znTXmnB;ZEQjqOsb!iFgJ`dpAeS4%x3mTd$+b>$x;NCE{ z)0lSO9;ns;*zFnsyIlidx2x}f4b>BR6HCy;(*OYL>^Ckp-ovVtl+CXc_`%b+@Wfx- z_$LMu97W~Rb7ej#3u!VmdAvG%2kRkpk?QN`eIK9j^WSj?2w8RQGeJZfB@t z$jW6Yz$|BPLRNP&)OMbkl$1h5IIuP{0X-bEwOMD!s26vye^*MV<#V=ei7x;n(*2Rv zwSS@qWasW$`+tnEmQh~|1=d0)wLG-W%c$qSCa0}0`7F@rL7iA_2MoXC% z0ej*p?mI8{oDRd9lvl@_*}ifzVo(3 zf+oC)m%LNZ=Z-JpV&ffGU+$2W{n*Bw+d)`!1JjNo6(YU>_vXb7Oe^+PshjG}PTase zXRIhyce31H4LI7RwU7yKVhJQT$~#0)vd&AWZf9;i6ZI-b!2hHA?kk=Fu-nydz}bER z&id1ZRKEac{pmsq=#P-Tf(6_Ud dN>gD0;2*O6_77HaR;K^}002ovPDHLkV1fjW!G-_; literal 0 HcmV?d00001 diff --git a/static/assets/timeturner_delta_red.png b/static/assets/timeturner_delta_red.png new file mode 100644 index 0000000000000000000000000000000000000000..c7272ac0c042ad72d92ea1e849e8fb0d3f8cb5ef GIT binary patch literal 913 zcmV;C18)3@P)8R?2i>+;=X=d2%8drTpPfsy zLE0m&n&vauKhmrtsHQ2)40*r@Z_hH7@s<=|r9z-tR&2RuSx_oOhADD@Nv8va!~-dW zfOI-COpybuA3I#?@Q`p|-Ep8A#>RT8VL*4pLkkBcC&?exGt=?xPG}_ z!+xtJ&?3RW`tf?)711V*gaOAT8k?lsw$MaG7;v8XC~__f0ahvmx)bl++siB5US7qP z>y9lf5fK8cS?$`I^HI&!!z^Z0<1d@Gtu}v6vZj@ zeP$xUYpu)$nCab{&E8E?mzS4w1GCn=kE0Rho|m|Srq0p+z zx=A;ouEJzC#ZZ@a+NI@5R~fPxf^O<&oVb`p#6@U{Fa|1WpceWHM*In6458+y^M-L2 zF_QQ0)4cnhQ6~DW;(2+8^X1%g?sw0%;rRF%{>2|g0K5cn7xjs40FPPMa=2k4e18PM z?^hksCE-CMN}0Vbc-e^hUB*(l+j!LxTsCe9*E?Zh%LAj%tlHO?YF@UrJ27JQL95XN0G8g*A+j~6I;cum3=GBxo&f-cI>r!A1Q1U~ z6#G+5c%<8hdmWllUK5k!-wnc5#U;qigzXfrSZTanLUe(eRg8e}-0j9`B41&Vx5U~e-p7$0~} z?T?DE#lV0u^$2WxSq_2NgsQr#hIlf9Kx_hgSx#VQOg+?%jEb;Uw1l|y1_CiZc13~I z0=robftVj$dP88pt!tt3qiS1XOg(UQ`>1Ql-9HI;|0LBrO`2vnyFA1SqXku$=F;oP z2ctgUt>E+t`YwV$fEGTwY#02}oxZj`E;R%B}q ziGvk^tw|K18i;)*4ptN^tTGf6wip=r9YI*lg97_uKBX$4^L$y&gYY|os>((Y;UQ)W zKKl%zxH9>aqPjW@iTxNdBGPRqKeU_%DFtf6&MpsJ)*p%5%H&fBtxlo9A1Mk%3I+ZM zq17pZbomgWgftc5CQUPjI>rcl;$THpBRLP{1{vR3BA!Wg@M@qU+-6_|nJw};gjSy- z^ykH9R*V9Fg!#AA2(3O9XaKE7Pd$9N^bt>Grlhh~Yfwqcy)1_!pF7R6R-?!Gz%#^m zmaw=Pkd@_1DJe%*0;N)Nb^8cqR^)S%0_Z$^@vXb#XSrYg=ik5a>2rn<7ZwA9KFfFD z{#wVU&zY)z68kaP-P~ee;Iq$2F5N%g{aSl1eb#}zq^D;TO(D*M)S;os=dhUg1+Tf^ zsQoFb;dn9vHtHpolUAd@aA_$fTOK$lAq%KzT8H@quu(4|Esc~1^7CL337d=9{uC2# z(lleF+eb*tf@rC$f!LSTJP2o(N0m=SgiDQtm7HA4X-2kor>u!bVn0Uois5fO@H>J; z_T_@AO9Q34^4VG3(i(|paweCycIWAA*{C<4`vVpDBgtLimezD{%aBX75(WMUk*ztjebuRIa!IwMiy~r-sRuqgtGI#Cz^F6B zXJ-kr;+U#|ituihBL?AZC(=*pfm{x(t#cL;OtJv*AD3z|(I!^+j{pDw07*qoM6N<$f=PJB AZvX%Q literal 0 HcmV?d00001 diff --git a/static/assets/timeturner_jitter_orange.png b/static/assets/timeturner_jitter_orange.png new file mode 100644 index 0000000000000000000000000000000000000000..96c5f84fc25681e8e9c925babdbe070200fb0455 GIT binary patch literal 1451 zcmV;c1yuTpP)y{Sscf|GyIz&VxmXbqzAf*RF9%3dlGJH%cUkB zibqV=7`j;w_1GRv3~6j4$7)g%Jd`cvM!k7bJZdyC95z`vN+KH={>|)RGL~Tm;k`kd zBA?Uv$otLj%bWLm-}gosNs{p2pTEBV@BzRR3?}~o*cjQq`pT5vJbeM+@1LE~1M!lD zJhG344=e`vG1lV=`?E86Xoi9ZouS}CXDE2k844y2Fz$lMJ=>35I%1yk!RlWJJMJCK%2E0H|d?qL$e)oK!2U(*rKJE8p*V5Vh1h)U!$Ic+`SzOPjFFy;ij~ zbH~()+;txXhI7F7Y74CM8LFvwRPl%(X@(z#J)G8vy)PQ4Uo>r&x!16V(_r{f;&{Y@ zxnK;eb3)Z72_;kyBKI=F^=uN=g9s#{q-tlK6X1d|;&?=YS*Hgk_l&AdEL@_pyJBcw zb)%k5qO!XJv2dwsH@Rns3mK8%_D86hJ3%G30YT=YBZ^~a zSu(k2U|V`iJeRoTEpW?QM12^36juMb<_RN(s7g0;$B>G7Fk?R+BlC0sCig6aL~nDL zTi$|sIv`&I5E7BDeORXl{Ax^fUjUGbdE&Z3JiU;SiFI*{S~q8*PXC< z1F(m`X~Y6RHTAxSjMWeeZsv}43kU#tjqHOPQeekju(qtj3S!|B<>(?BXWz+V(j+1l zE>MmxpqBZl`OGxwqY0^tY0`J=;uPvf`zS{js0*c`qE*Z6pmBbvYNIg&ooJ8MI6tIz zSPImFS*Hi~a2n>xc~!eq{MS%Icf~SK&chx~8=5v$f-Q4F@N03c<0|ISI6Lgni=4*U zA*5nn)y6s}z=zX46-YgZ1zY{=^4i-rx1?eol}{l^l^d!=^pGkya?Cc-$|izFG_ljN zJP&Hx8|Q~8M;GtKamfX85sg!=b=9lj-5~bTts^T5B?x;an+BmoB^IEZ!}V+umFR-TPcxhY=BfD(y~r_7`7~m04;(1O0tSkfc%4T%x}dd| zgd6g^V4WV--}3TD@1p?&g5^T8skN4UHXf~*C+A`HuN#UA4s{Xgo~rS=|kJEwj_} z+@&!dil4Un*HzPq8I#{@k(_H8dbiZfoe+st=v8PdQsoA<%#QBaI0;0Lbh|KnHLvf8*(l47xuvoaz9E2+cgmy#T3+5>w_;6ZND4V$x;x(E4n07Cu>#%4y zjB`q94TGt1m6aRS}Y^X84yBr35LDw9K9w5q9h zXy%S#Tiyc0Ipo8D#9y@GI?}p~NkYl+3vuG@VLR-&3zoT6)U#ji?WLN<8vyHkhWgQ` zuEwSth6Vp>4F8K~&>0FIaP}XQ;1qxjLz{0VggnxNKu56v@IUBV9^!0Q-qipA002ovPDHLk FV1jOhuVerK literal 0 HcmV?d00001 diff --git a/static/assets/timeturner_jitter_red.png b/static/assets/timeturner_jitter_red.png new file mode 100644 index 0000000000000000000000000000000000000000..88131590b9c9864a8b4ad7a7d02f6d17098c0898 GIT binary patch literal 1415 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 literal 0 HcmV?d00001 diff --git a/static/assets/timeturner_ltc_green.png b/static/assets/timeturner_ltc_green.png new file mode 100644 index 0000000000000000000000000000000000000000..43299137358525aa4f65c229bf3d716e0a53837e GIT binary patch literal 1373 zcmV-j1)}9UPK%))m#y?`A6PE?rW1HxqH_ujnkyx+Xv`;CU<<74>36H@?I0SrT*>;bq(de%dR#nA03 z06$)KL>I)JHn5p(7FOG!-)StxaNA`^aM82`>z$Thz0(q`cUpq=PD`-fX$jUlO((d$ zUW4w=KG^%6u=hD(wGikqUgfW)@-+5e)1VGwpbla+eL05Qn6i6CJ}OKRAV%ZO;K zz26C!Z3d~=y9mAT0{~1$Gv>#aLG;`Zjm?!Zc>Mc)?C0sKdm0u)w~y5bH5twDT=&8; zIH_hha-|GHlwVf3$!Ny6UxZ}sec=iI*hS31WB;n^+UfH`sPrZt|8~FXys8WnJ)`(? zd|8x_ax4#FNU?2vKa- z9Ybz71}9-^H%r>o6zmvsWA@XpYYmgPADo2s0|Ne-uSzrrolPj(1FR_FLlRPEioB1J zo>9ek6pNPCLTD1pF<>DuJGOKt+vrXJVd@c|L9NIN<_bciu=m}Bi#4qZvfcDF4@CG^1N$<=D^De5NZh%?*cShRa9FMnbwed*OAG@W*@z z0;(F7(?LyL_u`gq8WpApa$^C9r8G=NGrUexvb&1z1Q6K{@W0sxX$b=sLbiwIkj!u@ zzgshCAp;fyUMC6aAf_tQ+%je|nlb;`GH%(X0kF#!H@yceglsD*Tr!ECQFxsX`LS|6 zG>4?%U4?f*4z;4G^d^5iJGKOS-%UloboM!X;R*P{6Z|HFTQa#>P|p%7DVWYCkP{RK zwQ!=PiVlZxyU1lDOg)kvFZIp}?+37jPWT{|kgd}3WCWAf=2SU39fa3ON?yyAGNO&W zKeosp%k68G+FLrC;P=MvkLGI57C@m&N45i!Yn&Duwd2u(;<6OnT0!Nco6$-<8CCV! z=e$uAyq~Axk1c8z9ZyCPe72&=N293OcyOZ6Qp5nZP1GuuYdox$5lwyom96D|o(8$G z02eV0mu*JXGC*gaBeJum*ybrAY)(!WK`piA%ICAT2Wkc${re7dHi2LN{t2%NNx)#h z(Le9-enQXHY&W;wjB;9NxUm!C+uN?6qHcj~|!H z(+F;@;LY2d$Uc>)G2Hbr!qoRw*MzA4Osf}~?mrJL!Fs19Snsq1>z$Thz0+)h*P2Q2 z8tGZT+bn|DNYDCRpgE>AFBZ_hV3AmW6})#jv79?qVgXk0y^D|K+>sOu0BxjaJp|wm f^pj~>u>kNNj8XP)cuSA|fI`|_>Ral> zIV7M$oudK`p)n0KrsNO@+zJz1kdL;Zrs=_MOd(LWhk_5q9~62B5(pIx*}W7b(7N80 zWbO2@(R!twU5zBmhLwINYv;|(`|r%Wd2h`TLU1%Yd=tP609W8m4goyukEdU8%A>0{ z0sMT?9-R}nco-|&DZJp}-EBvRQsovvW7(-rJ>x`Mq<#|ic~ z+JOrWz&|<-{|BFd4~yUem(4bklTgm=qMX@9X@9fsSUqFY=$)FY8Up|dTk|OGtX4ha z1rdEyb0AtC+DgoP-ZwReo@<|1*^-R0MFLAs{PJSFjdcPNA^%%=EQy>WQOm zUBSE{B6xq@aV6^Ei;N=}TZg(FrHVEjPNJOIrM6YX5>0XRfv9=M{OTXY#O{UQg;Ad zPT_d*Q>Mv!C%*tc$Q}pUfums7)gWq~8vdQ|kKSgsZ3k4rydX9dksG0BY`QJuvO&t-~jVv&A^3*02mRN#>v5^?U<0< zTM$iwE~m_Ax}2=~ZN(|jo!JVz-IGofx0i5ouwlLczz}9#{R(w5Kn(wpuPNBF}j=t7aRaDh#+d- z^*B%kmovNYMaG#N<^q=yyuS`L5p7y@&$Ssd9kk}qm%jXkdNr1I*348AFpgj_whmqx z0m(`DZ~nUDT+}n%NWcJ2MFTLlou;_jThC|U?m|`WTiM>e$b@4aV9l+0LBypef0(xQ zZWpTH@|)jWJJDbjt;;F%g$C{|!#`U8nmU>t#?kCB)aB1?ZH?|Is$e}UIYvJ>Dx&$p zArMO70f5r}hQ;0pG^L%jhUc=*Ni+q8t$8MU$Dmc(S*fZ)8*v~olc2T{O~J{*X?<+1 zS6S=qTCBA(3y!H}X@3*t%wAJYI8pp{sp0r=*0@$ng`d8v8-Q3TXZFst>S-2N!RBS( zqG(-CL0dhWdbU;Seznx)B-BK-sUQXzX`a zqZy`afaD}-FCR01da?I^YyMqZT(q*|d|!V!_>|SSoY}?6pFe{9`wyTgAgW>(^h8sj zAO4Nx`Mq2jmo!-N0;002ov JPDHLkV1n($c?kdj literal 0 HcmV?d00001 diff --git a/static/assets/timeturner_ltc_red.png b/static/assets/timeturner_ltc_red.png new file mode 100644 index 0000000000000000000000000000000000000000..a8e7f96c67b6c2ab30451abf094ad41a78dcdc49 GIT binary patch literal 1298 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 literal 0 HcmV?d00001 diff --git a/static/assets/timeturner_ntp_orange.png b/static/assets/timeturner_ntp_orange.png new file mode 100644 index 0000000000000000000000000000000000000000..88319b593d352a7dda1e2d487468cf6e26d56f17 GIT binary patch literal 1108 zcmV-a1grarP) z!QUWq2ta2)W!+N&K>vK`EYQdt^xY1qCSGxxAsDnS2yXv_^|GXuUD3e%$l z<1>+hkkWs+4#tkwR>rk7YrbGQhuzGrehA!I2Omq~|0mZSw@Z%>p=4K?lOxMRJR*k> zxUmL)e#zL9hK*jYptbuL+-wx$;yv59DZO5STH1zIE)4$EQeMd$Ic)cMbQI7}AAspu z0AKg_c5M&z=)iHN)`e-6KAp4^DTt|`f9b2SL2&W{IC){7MX|uN538jD^O@2x(d!lF z^Jgm@9mEUsOUBE?sG&y(P)qK=^mFyg!zl3ln0C}mg#FG$*zZh){m!@v=f+7mH?vVq zkBe|_W}})0#$!kuvVi}E&&UED;g8VkYKdv!gWOz2nzQ_06 zm-}^mY$rye5q_7xEdlriz*EGN4uGS5<4R9-a`_SfE$S962|3Zp<$ptbdv=-*hxHK) z08hE7Td-_4g5%CcaNOAljyoH{ac3hq?yQ|)KI#T|A><`|CFQ}3S^JztDF&?;hHs6T z>RdU&T$&&y%OGV1d^YQ9XHg2;P(f7{R-ZE0pXlWBqj@xR9wZ9|?3~m*g-&BpiVvqR zK^rQQ{mKYV$ucta7c*aP>N+30rg?#0<+-oD<+4UFZ%eys1AI1%UA1A)aY4!Ixk%aPs>|8vpAcJceb z*9lS%d%F80ZLeEJ<{lmoAye0J+iKad?Zd*WS!~$5oi;x_$gkQNW90;MB`sl?wK>^FY^l(W_KFGa$Z# zNm;?rFfjVRl4POqpxp1+4~zEEt301epkwMfZZ5n>m}ACc(P8B@&U4x#qOEG{M)^3bu9*wi%UoYEp08g0)#mW4oh>Fpni5F{y-!&$lOUc=PF zzc9EmiTGs^d75_FYy`)hjo`Sm5gd2cO>kqK1iu1sv~n-CEQrRwarG0h9z)s|3&daW zuKvhzSiRu>ipB8&^628TUOM2OiAXY5oI`ICWdN S$=2)u0000Wn|{o zZ2-TV^oov2cUn=}+0&xOt!Q31Ch219Nw46zbq3t*IsmbJvG2earGdGAAROPnV;s9z|ED@oIa$YFy4NLf%|NVRr}T-xXmobx`N< z^!Sn7l8N)Mh#43tK^Jy+(AVwLb^mXFPvP~OEb&@aO=Ia*4AIqTWbCLSn9=2+o~pNjlt7Qz9qpx-YgC#`nM8g`9aoyk2teG2M1a;sTazUU(cgblscO z39Bhz+{TadBZ#d>D7LRO^geR|4_*FJ_q~ZNHegLt&mU2Ddg$^!t~mh?V9Dk!XGVII zRa2}c%KG__Z%`=iRE>98?cBS}3`{c=Sq>48td#}|hJ0}w;pGtV8p|nBDQ4h)2iZ_m zo+h5tv@A=nqViMXF6)gUhs6X;D-zes3&IN zs60&^_c(5FC-eY&;ES!1)6IHf23FJ*wK)G`V2r!1$`bhG%nR=9i|bg5ERjn#v#A|H z{{$B_%MOQ^Cz*Sm^5)L&W}*CR%2srIfs4>0lcA$wPQ4gxFdHgMIg^^6Oe|FV^`L z5hz7xMNLEATtFfxBdeykQcJ_X@lezhrk+1SWGMtsj~~7ZgK!EGlsvicIGj>yIdXDq z1&W$RBDZ2_i>GB|=GLBJv(=FHVGC*8*E@)n%;Nqo8q*e{>DYk(FM6wcT0A-fZgNeY zCg92O!0i3g0z5e$n7t324wo*&0?iM602U|#zdV_>9J#7sffDe8<6p~>iwFwb~& j831?CJUdN=1%UqmXX^Td4uNjt00000NkvXXu0mjfNUxyY literal 0 HcmV?d00001 diff --git a/static/assets/timeturner_sync_orange.png b/static/assets/timeturner_sync_orange.png new file mode 100644 index 0000000000000000000000000000000000000000..0b41130a12ec4c895cbf0b336f9e26c4f790fb87 GIT binary patch literal 1317 zcmV+=1={+FP)&F#YlLxkuo@y>Xy-g$(aJ3z=<<7 zQX<7&D-lIWRR$Q70SQ@=Bf%PmN@ReBc5^aBVk%}tbtS|Q34639T;cEcIyiQ*IoE#o z_!%mj|71O%`_BEn`*F^>?nY2C z758`p&KHEuAA~Y730q*g^?&_%p9EIDe%JytsAtm9vuUfkBNPj`Iclme2wPwVs@D%? z!r!$`{rFG11EB|S%q;={jC=;w)DCI~+t70vPS<+MG_W(W@&$0Zw=p3je?neYz5hKZ zWx@}~+#(!vi>Mv!puGDEM)8#8PbAZuRyDN^)gNR#s%Plws`|bquWO+wZY+O-HZ{xk zN%}KusAtnCu0MiNDzF@h)~D+GM%YGidEknz!x>p&`6T_x7;~ZZ?BBF=pSc-h4?ltH z;i{BRk)-1=2U-`bUpT9RinU*auW7<{}k|?{g_&h4fH$odnWTkCqmlX?GagW3C{ZrHSqL3s~ zC7D3^-4gBF<$567UmJf>`oQh}93R8x&OOiBChuG9=WFCOrnm}%Q?>$jJx zdv8%c-lzM(T+7nH+SDvLx<)>Ov-rY=-MioXxcu%Hx*wq^6!*CF{TRS^$?KJ5f(%)D zPHz2nO3!6bJD{s9&a{>Wrkoh1LaP$$gtnprsvUkb-IrdH2BxZ_&aiVH+H6SbrrO~L z^19hft*woWvFM3X88^)u_V5$jc>cTT(Uy6u;reldo!u#g7q<*n%ck>(tI$H-p^Q=i^}`RS z9exyslCPFONfiS|set18Bk7&G?_9dHwIn=|Xi9N;poOB)x{S7LG33PmibA;>1 z`!Mn+Ehs&kw(P}t-@CL~sb0Sj*fICCF><++fq&<5X~6#%jof!y*T6%r%~1m099uhz zjSBGQ*xFGH7>z02f(3>jxD6I)0Dr!kz6@L!V1Wkkv&-+xz(v9WfI7Bz^d7){49`dl bVFBP@&erN~V+}_e00000NkvXXu0mjfa-WUS literal 0 HcmV?d00001 diff --git a/static/assets/timeturner_sync_red.png b/static/assets/timeturner_sync_red.png new file mode 100644 index 0000000000000000000000000000000000000000..1c4c4c9048a7071cddb936577d7d06e1a5da3c31 GIT binary patch literal 1356 zcmV-S1+)5zP)^DoeYN znX*{+(k@njbhDhLlan!k>j#h?z~lqiowAhPEqZCIq7;%KhG7$|En1d4C`x4OPU4*? zyO90eL>_tf;obfI>0;;S=lEOsRtNABzlS$0bqhT0nmBM=mXRuI$d;EU-Bl>XqkP%jLIDX? zL0pz0stS_%{D*sivxmc9HwFjr{)4n^8$sQPayUeB0mo$-2~~lpC=gY(3z^Feedg4u z6R#%=19K`Jdk zDlNdbEF7+HL=GN$54UU^2}R-VsAcaEuiyQyK)jyTb$n@ULRu_w_eoM{;Gpi{ZD|o5 z&*SQdHdA+Gnfi<%Ntmsy;IkKNTzwMX$Cxco3H^e}hRc3t?Ui8l+2Xlf6Kf~R$TY=6!j zcnDGkf)s9vg|)P8*TtKKMI1bTL2Z*QFGE!MjVCworwoSVlrf<2sx|Cao>A|Qv$VN@ z(}oes*z|N_+su9Vrb&fP=JQAuHRg8$oWR*9;rCIy+2rX0Ko|OW`#0jf45xo)1{Nt{ zWV_kK+tSj2Av+s0QrfRnh{iFQ&m%s>httFioYKfk$=@__V%r1O`{Z}_<=n5%kq6(j z$YbGH*37`PP|&N@01UdUV2BS6E3aB3kEK8!%P=tmlahzP*+b{(aJ4Z*v>rtk5;P_YU#)GEZ_7-vLj1xcii`i(AtYwnJJ&+WaWeAdlFKX2R zKvK13R7yz_GcYL;i05)#QO{*1-a}r7P8Bs`X2!F{n1N}D084yLlh`+l{m?U%i0a?1 zZRS3hfsZMjq;-AlSr%3G!tWk*TGxr~N&bJ7*!QsOQuofd#kK^&Fwu$(zGYpA?!t;I z(mGrp{09N(hMnV-U|4c&+89QO3;4vgsk59dFLTwBSrP%?vbbXc?pS(%WtCdQ>(!E3 z%BrO0Oq0J!P8Y+78@TPdI9Q_>+tRv@-1ZjIh7k&!#o*oBSmzEz?)-f3^Iy20M7Q27 zWHLxTctE@#OC~W>)bPpU$4GqhH2|Rf$DhQu*`Iz44IN7+G4sRsIC=F7XYbxIjd|?! z@L=sZd~5g;6C?>~T_0M9V*Qhj7Lkp7j;S?8`zxzMYso#)a${cq%>y0T2>`EJ!)xOa z0%wofhGtn=4Ay0JJP+A&IduC-PXKhQ90t;cf$Wpz0l!Ks$crKWhHdTaAgDWNyDm=a z4g#mn9DGCy+>>vb@J$n`qK28GhLqL~{%LXe<&ZLP_HgF922n@e2K;}~?K!P!*G&Vi-X!4aoU^-hQ-G^;&h8R$GnVuR zSYY~rFTes_;KucgW#Sru1-igbuYN2O7ZDZ!ggIx|0$^ZzW||5M0RI6gRO{nwbPXB+ O0000