void OnDestroy()
 {
     Debug.Assert(Instance == this);
     Instance = null;
 }
 void Awake()
 {
     Debug.Assert(Instance == null);
     Instance = this;
 }