void Save()
 {
     if (OnDataUpdate != null)
     {
         OnDataUpdate();
     }
     TMSerializer.WriteToDisk <TutorialManagerModel>(ref m_TMData);
 }
 public static TutorialManagerModelMiddleware GetInstance()
 {
     if (m_Instance == null)
     {
         m_Instance          = new TutorialManagerModelMiddleware();
         m_Instance.m_TMData = new TutorialManagerModel();
         TMSerializer.ReadFromDisk(ref m_Instance.m_TMData);
         m_Instance.TMData.tutorialTable = m_Instance.TMData.tutorials.ToDictionary(t => t.id, t => t);
         m_Instance.TMData.stepTable     = m_Instance.TMData.steps.ToDictionary(s => s.id, s => s);
         m_Instance.TMData.contentTable  = m_Instance.TMData.content.ToDictionary(c => c.id, c => c);
     }
     return(m_Instance);
 }