public string FormatDefaultProperties()
        {
            if (Default != null && Default != this)
            {
                Default.BeginDeserializing();
            }

            if (Properties == null || !Properties.Any())
            {
                return(String.Empty);
            }

            string output = String.Empty;
            string innerOutput;

            if (IsClassType("Class"))
            {
                output += "\r\ndefaultproperties\r\n{\r\n";
            }
            else
            {
                output += "\r\n" + UDecompilingState.Tabs + "structdefaultproperties\r\n"
                          + UDecompilingState.Tabs + "{\r\n";
            }

            UDecompilingState.AddTabs(1);
            try
            {
                innerOutput = DecompileProperties();
            }
            catch (Exception e)
            {
                innerOutput = String.Format
                              (
                    "{0}// {1} occurred while decompiling properties!\r\n",
                    UDecompilingState.Tabs, e.GetType().Name
                              );
            }
            finally
            {
                UDecompilingState.RemoveTabs(1);
            }
            if (Name.StartsWith("Seq"))
            {
                innerOutput += $"\tObjCategory=\"{Package.FullPackageName}\"\r\n";
            }
            return(output + innerOutput + UDecompilingState.Tabs + "}");
        }