Inheritance: EditorWindow
	// ReSharper disable UnusedMember.Local

	/// Called when the Fsm Editor window is created
	/// NOTE: happens on playmode change and recompile!
	private void OnEnable()
	{
		instance = this;

		if (fsmEditor == null)
		{
			fsmEditor = new FsmEditor();
		}
		
		fsmEditor.InitWindow(this);
		fsmEditor.OnEnable();
	}
	// ReSharper disable UnusedMember.Local

    /// <summary>
    /// Delay initialization until first OnGUI to avoid interfering with runtime system intialization.
    /// </summary>
    public override void Initialize()
    {
        instance = this;

        if (fsmEditor == null)
        {
            fsmEditor = new FsmEditor();
        }

        fsmEditor.InitWindow(this);
        fsmEditor.OnEnable();
    }
    public void OnDisable()
    {
        if (fsmEditor != null)
        {
            fsmEditor.OnDisable();
        }

        instance = null;
    }
    private void OnDisable()
	{
        if (Initialized && fsmEditor != null)
		{
			fsmEditor.OnDisable();
		}

		instance = null;
	}
 public static bool ValidateOpenTimelineWindow()
 {
     return(FsmEditorWindow.IsOpen());
 }