Dictionary> stateConversions = new Dictionary>(); stateConversions.Add("Enclosed", new List { "AwaitingActivation" }); stateConversions.Add("Active", new List { "Frozen", "Cancellation", "Violation" }); stateConversions.Add("AwaitingActivation", new List { "Active" }); stateConversions.Add("Frozen", new List { "Active" }); stateConversions.Add("Cancellation", new List { "Active", "Cancelled" }); if (stateConversions[CurState.First()].Contains(newState.Name)) { return true; } else { return false; }