public override VisualElement CreateInspectorGUI()
        {
            m_Scenario         = (ScenarioBase)target;
            m_SerializedObject = new SerializedObject(m_Scenario);
            m_Root             = AssetDatabase.LoadAssetAtPath <VisualTreeAsset>(
                $"{StaticData.uxmlDir}/ScenarioBaseElement.uxml").CloneTree();
            CreatePropertyFields();
            CheckIfConstantsExist();

            var serializeConstantsButton = m_Root.Query <Button>("serialize-constants").First();

            serializeConstantsButton.clicked += () => m_Scenario.Serialize();

            var deserializeConstantsButton = m_Root.Query <Button>("deserialize-constants").First();

            deserializeConstantsButton.clicked += () => m_Scenario.Deserialize();

            return(m_Root);
        }