private Pulse.PulseTypes correction_helper(Pulse.OperationClass expected, Pulse pulse) { List <Pulse.PulseTypes> possible = pulse.PossibleTypes.ToList(); for (int i = 0; i < possible.Count; i++) { if (Pulse.TypeToOpClass(possible[i]) != expected) { possible.RemoveAt(i--); } } if (possible.Count == 1) { return(possible[0]); } return(Pulse.PulseTypes.OWErrorType); }