public override IEnumerable <Transition> GetTransitions() { if (PostStateIndexes.Any()) { yield return(new Transition(this) { PreStateIndexes = StateIndexes.ToArray(), NewStateIndexes = PostStateIndexes.ToArray() }); } else if (null != Parent) { /*foreach (var e in Parent.GetTransitions()) * { * yield return e; * }*/ throw new NotImplementedException(); } }