public static FsmError FindError(FsmError error)
 {
     using (List <FsmError> .Enumerator enumerator = FsmErrorChecker.FsmErrorList.GetEnumerator())
     {
         while (enumerator.MoveNext())
         {
             FsmError current = enumerator.get_Current();
             if (current.SameAs(error))
             {
                 return(current);
             }
         }
     }
     return(null);
 }
 private static FsmError AddError(FsmError error)
 {
     using (List <FsmError> .Enumerator enumerator = FsmErrorChecker.FsmErrorList.GetEnumerator())
     {
         while (enumerator.MoveNext())
         {
             FsmError current = enumerator.get_Current();
             if (current.SameAs(error))
             {
                 return(error);
             }
         }
     }
     FsmErrorChecker.FsmErrorList.Add(error);
     return(error);
 }