YB
public abstract class CharacterController<T, M> : MonoBehaviour where M: Singleton<M>
{
[SerializeField] protected T inputSource;
[SerializeField] protected Singleton<M> manager;
protected virtual void Awake()
{m_LandingDistance = manager.Instance.landingDistance;}