private List <long> WriteGlobalStream(BinaryWriter writer)
        {
            writer.BaseStream.Write(Constants.GLOBAL1, 0, Constants.GLOBAL1.Length);
            m_styleContainer.Write(writer);
            writer.BaseStream.Write(Constants.GLOBAL3, 0, Constants.GLOBAL3.Length);
            RecordFactory.PALETTE(writer, m_colors);
            List <long> list = new List <long>();

            foreach (WorksheetInfo worksheet in m_worksheets)
            {
                list.Add(writer.BaseStream.Position);
                RecordFactory.BOUNDSHEET(writer, 0u, worksheet.SheetName);
            }
            if (m_externSheet != null)
            {
                RecordFactory.SUPBOOK(writer, (ushort)m_worksheets.Count);
                RecordFactory.EXTERNSHEET(writer, m_externSheet);
                foreach (WorksheetInfo worksheet2 in m_worksheets)
                {
                    if (worksheet2.PrintTitle != null)
                    {
                        RecordFactory.NAME_PRINTTITLE(writer, worksheet2.PrintTitle);
                    }
                }
            }
            if (m_drawingGroupContainer != null)
            {
                MsoDrawingGroup.WriteToStream(writer, m_drawingGroupContainer);
            }
            m_stringTable.Write(writer.BaseStream);
            writer.BaseStream.Write(Constants.GLOBAL4, 0, Constants.GLOBAL4.Length);
            return(list);
        }