public interface ITransientStateManager
 {
    object SaveState();
    void LoadState(object obj);
 }