/// <summary>
 /// Draw the Setup Window.
 /// </summary>
 private async void SetupWindow()
 {
     EditorGUILayout.Space();
     if (settings.appName == "")
     {
         settings.appName = Application.productName;
     }
     settings.orgName = EditorGUILayout.TextField("Organization Name", settings.orgName);
     settings.appName = EditorGUILayout.TextField("App Name", settings.appName);
     settings.appVers = EditorGUILayout.TextField("App Version", settings.appVers);
     if (settings.region.Length > 0)
     {
         try
         {
             selectedRegionIndex = regionOptions.FindIndex(region => region == settings.region);
             if (selectedRegionIndex == -1)
             {
                 selectedRegionIndex = 0;
             }
         }
         catch (ArgumentNullException)
         {
             selectedRegionIndex = 0;
         }
         catch (ArgumentOutOfRangeException)
         {
             selectedRegionIndex = 0;
         }
     }
     EditorGUI.BeginChangeCheck();
     selectedRegionIndex = EditorGUILayout.Popup("Region (Editor Only)", selectedRegionIndex, regionOptions.ToArray());
     EditorGUI.EndChangeCheck();
     settings.region = regionOptions[selectedRegionIndex];
     EditorGUILayout.BeginVertical(headerStyle);
     scrollPos = EditorGUILayout.BeginScrollView(scrollPos, GUILayout.Width(300), GUILayout.Height(100));
     GUILayout.Label(progressText, labelStyle);
     EditorGUILayout.EndScrollView();
     EditorGUILayout.EndVertical();
     if (GUILayout.Button("Setup"))
     {
         progressText = "";
         if (await CheckCredentials())
         {
             Enhancement.SetupStep(getId());
             progressText += "\nConnected !\nSee App Information in MobiledgeXSettings!";
             ShowSettings();
             EditorUtility.SetDirty(settings);
             AddMobiledgeXPlugins();
         }
         else
         {
             progressText += "\nError Connecting, Check the console for more details! ";
         }
     }
 }