pub type Singleton<T> = SingletonOf<Mutex<LazyLock<T>>>;
pub struct Singleton<T> { /* private fields */ }