pub type FnTimeGen = Arc<dyn Fn() -> SystemTime + Send + Sync>;
FnTimeGen provides current SystemTime
pub struct FnTimeGen { /* private fields */ }