private void TryAddToPBXResourcesBuildPhase(StringBuilder sb)
        {
            if ((_added & FrmSection.PBXResourcesBuildPhase) != 0)
            {
                return;
            }

            if (_newSubGroup == "files" &&
                Groups.Contains("PBXResourcesBuildPhase") &&
                SubGroups.Skip(1).First().Contains("Resources"))
            {
                foreach (var f in _frameworks)
                {
                    if ((f.Section & FrmSection.PBXResourcesBuildPhase) == 0)
                    {
                        continue;
                    }

                    sb.Append('\t').Append('\t').Append('\t').Append('\t')
                    .Append(f.ID)
                    .Append(" /* ")
                    .Append(f.Name)
                    .Append(" in Resources */,")
                    .AppendLine();
                }
                _added |= FrmSection.PBXResourcesBuildPhase;
            }
        }
        private void TryAddToPBXGroupFrameworks(StringBuilder sb)
        {
            if ((_added & FrmSection.PBXGroupFrameworks) != 0)
            {
                return;
            }

            if (_newSubGroup == "children" &&
                Groups.Contains("PBXGroup") &&
                SubGroups.Skip(1).First().Contains("Frameworks"))
            {
                foreach (var f in _frameworks)
                {
                    if ((f.Section & FrmSection.PBXGroupFrameworks) == 0)
                    {
                        continue;
                    }

                    sb.Append('\t').Append('\t').Append('\t').Append('\t')
                    .Append(f.FileID)
                    .Append(" /* ")
                    .Append(f.Name)
                    .Append(" */,")
                    .AppendLine();
                }
                _added |= FrmSection.PBXGroupFrameworks;
            }
        }
        private void TryAddToPBXFileReference(StringBuilder sb)
        {
            if ((_added & FrmSection.PBXFileReference) != 0)
            {
                return;
            }

            if (_newGroup == "PBXFileReference")
            {
                foreach (var f in _frameworks)
                {
                    if ((f.Section & FrmSection.PBXFileReference) == 0)
                    {
                        continue;
                    }

                    sb.Append('\t').Append('\t')
                    .Append(f.FileID)
                    .Append(" /* ")
                    .Append(f.Name)
                    .Append(" */ = {isa = PBXFileReference; lastKnownFileType = ")
                    .Append(f.FileType)
                    .Append("; name = ")
                    .Append(f.Name.Contains('+') ? "\"" + f.Name + "\"" : f.Name)
                    .Append("; path = ")
                    .Append(f.Path)
                    .Append("; sourceTree = ")
                    .Append(f.Src)
                    .Append("; };")
                    .AppendLine();
                }
                _added |= FrmSection.PBXFileReference;
            }
        }
        private void TryAddToPBXBuildFile(StringBuilder sb)
        {
            if ((_added & FrmSection.PBXBuildFile) != 0)
            {
                return;
            }

            if (_newGroup == "PBXBuildFile")
            {
                foreach (var f in _frameworks)
                {
                    if ((f.Section & FrmSection.PBXBuildFile) == 0)
                    {
                        continue;
                    }

                    sb.Append('\t').Append('\t')
                    .Append(f.ID)
                    .Append(" /* ")
                    .Append(f.Name)
                    .Append(" in ")
                    .Append(f.In)
                    .Append(" */ = {isa = PBXBuildFile; fileRef = ")
                    .Append(f.FileID)
                    .Append(" /* ")
                    .Append(f.Name)
                    .Append(" */; };")
                    .AppendLine();
                }
                _added |= FrmSection.PBXBuildFile;
            }
        }
        private void TryAddToXCBuildConfigurationReleaseObjC(StringBuilder sb)
        {
            if ((_added & FrmSection.XCBuildConfigurationReleaseObjC) != 0)
            {
                return;
            }

            if (_closingSubGroup == "OTHER_LDFLAGS" &&
                Groups.Contains("XCBuildConfiguration") &&
                SubGroups.Skip(1).First().Contains("Release"))
            {
                sb.Append('\t').Append('\t').Append('\t').Append('\t').Append('\t')
                .AppendLine("\"-ObjC\",");

                _added |= FrmSection.XCBuildConfigurationReleaseObjC;
            }
        }
        private void TryAddToXCBuildConfigurationRelease(StringBuilder sb)
        {
            if ((_added & FrmSection.XCBuildConfigurationRelease) != 0)
            {
                return;
            }

            if (_newSubGroup == "buildSettings" &&
                Groups.Contains("XCBuildConfiguration") &&
                SubGroups.Skip(1).First().Contains("Release"))
            {
                sb.Append('\t').Append('\t').Append('\t').Append('\t')
                .AppendLine("FRAMEWORK_SEARCH_PATHS = (")
                .Append('\t').Append('\t').Append('\t').Append('\t').Append('\t')
                .AppendLine("\"$(inherited)\",")
                .Append('\t').Append('\t').Append('\t').Append('\t').Append('\t')
                .AppendLine("/Users/vladimirbodurov/Desktop/Code/GoogleLibs,")
                .Append('\t').Append('\t').Append('\t').Append('\t')
                .AppendLine(");");

                _added |= FrmSection.XCBuildConfigurationRelease;
            }
        }