Esempio n. 1
0
 private int get_table_width(nest_tables cur_tab, nest_tables prev_tab)
 {
     int tBLEN = this.TBLEN;
     int num2 = prev_tab.td_up_curcol;
     int num3 = prev_tab.tr_cur - 1;
     float num6 = 1f;
     if (num3 < 0)
     {
         num3 = 0;
     }
     if (num2 > 0)
     {
         tBLEN = prev_tab.table_map[num3, num2 + 1] - prev_tab.table_map[num3, num2];
     }
     else
     {
         tBLEN = prev_tab.table_map[num3, 1];
     }
     if (cur_tab.change_width != 1)
     {
         for (int i = 0; i < cur_tab.table_p.rows; i++)
         {
             for (int j = 1; j < (cur_tab.table_p.cols + 1); j++)
             {
                 cur_tab.table_map[i, j] = (int)(cur_tab.table_map[i, j] * num6);
             }
         }
     }
     cur_tab.change_width = 1;
     if (tBLEN <= 0)
     {
         tBLEN = this.TBLEN;
     }
     return tBLEN;
 }
Esempio n. 2
0
        private string ConvertStringPrivate(string htmlString, ArrayList ImageList)
        {
            
            int num4;
            int num5;
            int num38;
            if ((this._tableCellPadding > -1) && (this._tableCellPadding < 11))
            {
                this.TRPADDR = this._tableCellPadding * 20;
                this.TRPADDL = this._tableCellPadding * 20;
                this.TRPADDB = this._tableCellPadding * 20;
                this.TRPADDT = this._tableCellPadding * 20;
            }
            string s = this.LF + @"\trowd\trgaph" + this.TRGAPH.ToString() + @"\trautofit1\trpaddfr3\trpaddfl3\trpaddft3\trpaddfb3\trpaddr" + this.TRPADDR.ToString() + @"\trpaddl" + this.TRPADDL.ToString() + @"\trpaddb" + this.TRPADDB.ToString() + @"\trpaddt" + this.TRPADDT.ToString() + " ";
            string str2 = this.LF + @"{\*\nesttableprops\trowd\trgaph" + this.TRGAPH.ToString() + @"\trautofit1\trpaddfr3\trpaddfl3\trpaddft3\trpaddfb3\trpaddr" + this.TRPADDR.ToString() + @"\trpaddl" + this.TRPADDL.ToString() + @"\trpaddb" + this.TRPADDB.ToString() + @"\trpaddt" + this.TRPADDT.ToString() + " ";
            string str3 = @"{\pict\pngblip\picw420\pich375\picwgoal420\pichgoal375\picscalex100\picscaley100" + this.LF + "89504e470d0a1a0a0000000d494844520000001c000000190803000000151ebe15000000017352474200aece1ce90000000467414d410000b18f0bfc6105000000206348524d00007a26000080840000fa00000080e8000075300000ea6000003a98000017709cba513c00000060504c5445000000fbf9eedfddd1cccccc7a786d202020f2f0e5171718333333faf8ede6e6e6f4f2e7848276d7d5ce141414ffffffdfdfdf7b7a70272727f7f7f73b3b3cf0f0efd6d7d7e4e2d6858378f7efef807e74000000000000000000000000000000d2cf2ddc00000083494441542853c5925d0fc2200c45afa263b6dbcac78a8bffff872a6862228d6fcbce232797de14207fc02132d3979f0290f9123f4cf74eba48da20e55e3e723ba3556f86d46ae90a32e414d62094e0ade41690ca085fc498b99187c7524406ab50599ab364cce292ab212ba9afaeedc25ece67663ef150e966be576072cc63eff2fb9e550c27c74d708d7c0000000049454e44ae426082}" + this.LF;
            string str4 = @"{\pict\pngblip\picw420\pich375\picwgoal420\pichgoal375\picscalex100\picscaley100" + this.LF + "89504e470d0a1a0a0000000d494844520000001c000000190803000000151ebe15000000017352474200aece1ce90000000467414d410000b18f0bfc6105000000206348524d00007a26000080840000fa00000080e8000075300000ea6000003a98000017709cba513c00000030504c54457a786dffffffe5e5e4ccccccf2f0e5f5f4f2d7d5cef4f2e77b7a70dfddd1807e74f0f0eff7f7f8e4e2d684827600000079b7580a000000494944415428536360c40318064492950901d01cc0c0c8c6c001057cbc1892cc1c4cdc50c08e29c9c5031363c122c93ac82439c875101b273b0b0c60f8131e0498313b30914d93d4070094c8044f2aaddf8c0000000049454e44ae426082}" + this.LF;
            string str5 = @"{\pict\pngblip\picw420\pich375\picwgoal420\pichgoal375\picscalex100\picscaley100" + this.LF + "89504e470d0a1a0a0000000d494844520000001c000000190803000000151ebe15000000017352474200aece1ce90000000467414d410000b18f0bfc6105000000206348524d00007a26000080840000fa00000080e8000075300000ea6000003a98000017709cba513c00000018504c5445000000fffffff1efe2aca899716f64000000000000000000d5d8b27300000053494441542853c59131120030040489fcffcd3934194491c6150a6b624d889bd01c14246f3721918d64ac104847bcde71e89d554063a45391a2a790903ff87cb615625966e2359e62202368ce7d59bd7942e8006d6903093c53bdc70000000049454e44ae42608200000000000000}" + this.LF;
            string str6 = @"{\pict\pngblip\picw420\pich375\picwgoal420\pichgoal375\picscalex100\picscaley100" + this.LF + "89504e470d0a1a0a0000000d494844520000001c000000190803000000151ebe15000000017352474200aece1ce90000000467414d410000b18f0bfc6105000000206348524d00007a26000080840000fa00000080e8000075300000ea6000003a98000017709cba513c0000000c504c5445716f64fffffff1efe2aca8995b47d6600000004d494441542853c5d14b0a00200804503ff7bf7393431029ee42172e7a852389362573e8a83c3d02b90b2af346d0bec27e17912756e0b1ac78f409db40ea1639d9df55023261f3b92fab274f045a17b502ddf2d9efa10000000049454e44ae42608200000000000000000000000000000000000000000000000000}" + this.LF;
         
            ByteClass message = new ByteClass();
            ByteClass buf = new ByteClass();
            ByteClass class4 = new ByteClass();
            string str8 = "";
            this.EncodingToASCII(htmlString, buf);
            if (this._outputTextFormat == eOutputTextFormat.Html)
            {
                return this.HtmlToHtml(buf).ByteToString();
            }
            int index = 0;
            int num3 = 0;
            int num7 = 0;
            int num8 = 0;
            int num9 = 0;
            int num10 = 0;
            int num11 = 0;
            int num12 = 0;
            ByteClass str = new ByteClass(0x80);
            str.Add(@"\'");
            ByteClass class6 = new ByteClass();
            class6.Clear();
            class6.Add(this.GetFontByEnum(this._fontFace));
            ByteClass class7 = new ByteClass();
            ByteClass class8 = new ByteClass();
            ByteClass newb = new ByteClass();
            ByteClass class10 = new ByteClass();
            ByteClass class11 = new ByteClass();
            ArrayList list = new ArrayList();
            ArrayList list2 = new ArrayList();
            int num13 = 0;
            int num14 = 0;
            bool flag = false;
            bool flag2 = false;
            bool flag3 = true;
            bool flag4 = true;
            bool flag5 = true;
            int[] numArray = new int[3];
            int[] numArray2 = new int[] { 6, 8, 10, 12, 14, 0x12, 0x18, 0x24 };
            int num15 = 0;
            int num16 = 3;
            int fontsize = this._fontSize;
            int num18 = this._fontSize;
            bool flag6 = false;
            bool flag7 = false;
            ByteClass class12 = new ByteClass(0x20);
            int num19 = 0;
            int num20 = 1;
            int num21 = 1;
            int num22 = 1;
            ByteClass class13 = new ByteClass();
            ByteClass class14 = new ByteClass();
            int[] numArray3 = new int[this.STK_MAX];
            ByteClass class15 = new ByteClass();
            bool flag8 = false;
            ByteClass class16 = new ByteClass();
            ByteClass class17 = new ByteClass();
            ByteClass class18 = new ByteClass();
            class18.Add(@"\qj ");
            ByteClass class19 = new ByteClass();
            class19.Add(@"\qc ");
            ByteClass class20 = new ByteClass();
            class20.Add(@"\ql ");
            ByteClass class21 = new ByteClass();
            class21.Add(@"\qr ");
            ByteClass class22 = new ByteClass();
            class22.Add(@"\ql ");
            byte num23 = 0x6a;
            if (this._pageAlignment == ePageAlignment.AlignLeft)
            {
                num23 = 0x6c;
            }
            else if (this._pageAlignment == ePageAlignment.AlignRight)
            {
                num23 = 0x72;
            }
            else if (this._pageAlignment == ePageAlignment.AlignCenter)
            {
                num23 = 0x63;
            }
            else if (this._pageAlignment == ePageAlignment.AlignJustify)
            {
                num23 = 0x6a;
            }
            class22.b[2] = num23;
            ByteClass align = new ByteClass();
            align.Add(class22);
            int len = align.len;
            int num25 = 100;
            int num26 = 100;
            byte num27 = 0;
            string str9 = @"\li450 ";
            bool flag9 = false;
            int num28 = 0;
            int num29 = 0;
            int num30 = 0;
            int num31 = 0;
            int num32 = 0;
            int num33 = 0;
            bool flag10 = false;
            bool flag11 = false;
            int num34 = 0;
            bool flag12 = false;
            bool flag13 = false;
            string str10 = "";
            bool flag14 = false;
            bool flag15 = false;
            ByteClass class24 = new ByteClass();
            bool flag16 = false;
            bool flag17 = false;
            if (this._borderVisibility == eBorderVisibility.Visible)
            {
                flag17 = true;
            }
            CSS_params _params = new CSS_params();
            _params.CSS_reset(_params);
            bool flag18 = false;
            nest_tables[] _tablesArray = new nest_tables[this.MAX_NEST];
            for (int i = 0; i < this.MAX_NEST; i++)
            {
                _tablesArray[i] = new nest_tables();
            }
            int num36 = 0;
            string str12 = "";
            int tBLEN = this.TBLEN;
            bool flag19 = false;
            ByteClass class25 = new ByteClass();
            int num39 = 0;
            int num40 = 0;
            int num41 = 0;
            int num42 = 0;
            ByteClass class26 = new ByteClass();
            ByteClass folder = new ByteClass();
            ByteClass class28 = new ByteClass();
            ByteClass valueStr = new ByteClass();
            string path = "";
            class28.Clear();
            class28.Add(this._htmlPath);
            ByteClass class30 = new ByteClass(8);
            int charset = 0;
            int num44 = 0x4e4;
            ByteClass class31 = new ByteClass(8);
            class31.Add("fswiss");
            bool hieroglyph = false;
            int num45 = 0x4e4;
            int lang = 0x409;
            this.detect_lang(this._rtfLanguage, ref lang, ref hieroglyph, ref num45, ref charset);
            this.margl = (int)(this._pageMarginLeft * 56.7);
            this.margr = (int)(this._pageMarginRight * 56.7);
            this.margt = (int)(this._pageMarginTop * 56.7);
            this.margb = (int)(this._pageMarginBottom * 56.7);
            this.page_width = this.PAGE_SIZE_LETTER_W;
            this.page_height = this.PAGE_SIZE_LETTER_H;
            if (this._pageSize == ePageSize.A3)
            {
                this.page_width = this.PAGE_SIZE_A3_W;
                this.page_height = this.PAGE_SIZE_A3_H;
            }
            else if (this._pageSize == ePageSize.A5)
            {
                this.page_width = this.PAGE_SIZE_A5_W;
                this.page_height = this.PAGE_SIZE_A5_H;
            }
            else if (this._pageSize == ePageSize.A4)
            {
                this.page_width = this.PAGE_SIZE_A4_W;
                this.page_height = this.PAGE_SIZE_A4_H;
            }
            else if (this._pageSize == ePageSize.B5)
            {
                this.page_width = this.PAGE_SIZE_B5_W;
                this.page_height = this.PAGE_SIZE_B5_W;
            }
            else if (this._pageSize == ePageSize.Letter)
            {
                this.page_width = this.PAGE_SIZE_LETTER_W;
                this.page_height = this.PAGE_SIZE_LETTER_H;
            }
            else if (this._pageSize == ePageSize.Legal)
            {
                this.page_width = this.PAGE_SIZE_LEGAL_W;
                this.page_height = this.PAGE_SIZE_LEGAL_H;
            }
            else if (this._pageSize == ePageSize.Executive)
            {
                this.page_width = this.PAGE_SIZE_EXECUTIVE_W;
                this.page_height = this.PAGE_SIZE_EXECUTIVE_H;
            }
            else if (this._pageSize == ePageSize.Monarh)
            {
                this.page_width = this.PAGE_SIZE_MONARH_W;
                this.page_height = this.PAGE_SIZE_MONARH_H;
            }
            if ((this.margb < 0) || (this.margb > (this.page_height / 2)))
            {
                this.margb = this.DEF_MARGIN * 2;
            }
            if ((this.margt < 0) || (this.margt > (this.page_height / 2)))
            {
                this.margt = this.DEF_MARGIN;
            }
            if ((this.margl < 0) || (this.margl > (this.page_width / 2)))
            {
                this.margl = this.DEF_MARGIN;
            }
            if ((this.margr < 0) || (this.margr > (this.page_width / 2)))
            {
                this.margr = this.DEF_MARGIN;
            }
            int max = buf.len;
            if (max <= 0)
            {
                return "";
            }
            int num = 0;
            num10 = 0;
            while (num < max)
            {
                if (buf.b[num] == 0)
                {
                    num10++;
                }
                num++;
            }
            if ((num10 * 3) > max)
            {
                class4.Clear();
                for (num = 0; num < max; num++)
                {
                    if ((buf.b[num] != 0) && (buf.b[num + 1] != 0))
                    {
                        this.ToSpecSymbol(class24, buf.b[num + 1], buf.b[num]);
                        class4.Add(class24);
                        num++;
                    }
                    else if (buf.b[num] != 0)
                    {
                        class4.Add(buf.b[num]);
                    }
                }
                max = max = num10;
                for (num = 0; num < max; num++)
                {
                    buf.b[num] = class4.b[num];
                }
            }
            if (this._encoding != eEncoding.AutoSelect)
            {
                if (this._encoding == eEncoding.Windows_1250)
                {
                    num44 = 0x4e3;
                    charset = 0xee;
                    class31.Add("fswiss");
                }
                else if (this._encoding == eEncoding.Windows_1251)
                {
                    num44 = 0x4e3;
                    charset = 0xcc;
                    class31.Add("fnil");
                }
                else if (this._encoding == eEncoding.Windows_1252)
                {
                    num44 = 0x4e3;
                    charset = 0;
                    class31.Add("fswiss");
                }
                else if (this._encoding == eEncoding.Windows_1253)
                {
                    num44 = 0x4e3;
                    charset = 0xa1;
                    class31.Add("fswiss");
                }
                else if (this._encoding == eEncoding.Windows_1254)
                {
                    num44 = 0x4e6;
                    charset = 0xa2;
                    class31.Add("fswiss");
                }
                else if (this._encoding == eEncoding.Windows_1255)
                {
                    num44 = 0x4e3;
                    charset = 0xb1;
                    class31.Add("fswiss");
                }
                else if (this._encoding == eEncoding.Windows_1256)
                {
                    num44 = 0x4e8;
                    charset = 0xb2;
                    class31.Add("fswiss");
                }
                else if (this._encoding == eEncoding.Windows_1257)
                {
                    num44 = 0x4e3;
                    charset = 0xba;
                    class31.Add("fswiss");
                }
                else if (this._encoding == eEncoding.Windows_1258)
                {
                    num44 = 0x4e3;
                    charset = 0;
                    class31.Add("fswiss");
                }
                else if (this._encoding == eEncoding.KOI8_R)
                {
                    num44 = 0x4e3;
                    charset = 0xcc;
                    class31.Add("fnil");
                }
                else if (this._encoding == eEncoding.ISO_8859_5)
                {
                    num44 = 0x4e3;
                    charset = 0xcc;
                    class31.Add("fnil");
                }
                else if (this._encoding == eEncoding.UTF_8)
                {
                    num44 = 0x4e4;
                    class31.Add("fswiss");
                }
                else
                {
                    num44 = 0x4e4;
                    charset = 0;
                    class31.Add("fswiss");
                }
            }
            else
            {
                num = 0;
                while (num < max)
                {
                    if ((((buf.b[num] == 60) && ((buf.b[num + 1] == 0x68) || (buf.b[num + 1] == 0x48))) && (((buf.b[num + 2] == 0x65) || (buf.b[num + 2] == 0x45)) && ((buf.b[num + 3] == 0x61) || (buf.b[num + 3] == 0x41)))) && (((buf.b[num + 4] == 100) || (buf.b[num + 4] == 0x44)) && ((buf.b[num + 5] == 0x3e) || this.IS_DELIMITER(buf.b[num + 5]))))
                    {
                        num += 5;
                        while ((buf.b[num] != 0x3e) && (num < max))
                        {
                            num++;
                        }
                        break;
                    }
                    num++;
                }
                while (num < max)
                {
                    if (((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x68) || (buf.b[num + 2] == 0x48))) && (((buf.b[num + 3] == 0x65) || (buf.b[num + 3] == 0x45)) && ((buf.b[num + 4] == 0x61) || (buf.b[num + 4] == 0x41)))) && (((buf.b[num + 5] == 100) || (buf.b[num + 5] == 0x44)) && (buf.b[num + 6] == 0x3e)))
                    {
                        break;
                    }
                    if (((((buf.b[num] == 0x63) || (buf.b[num] == 0x43)) && ((buf.b[num + 1] == 0x68) || (buf.b[num + 1] == 0x48))) && (((buf.b[num + 2] == 0x61) || (buf.b[num + 2] == 0x41)) && ((buf.b[num + 3] == 0x72) || (buf.b[num + 3] == 0x52)))) && ((((buf.b[num + 4] == 0x73) || (buf.b[num + 4] == 0x53)) && ((buf.b[num + 5] == 0x65) || (buf.b[num + 5] == 0x45))) && (((buf.b[num + 6] == 0x74) || (buf.b[num + 6] == 0x54)) && (buf.b[num + 7] == 0x3d))))
                    {
                        while (num < max)
                        {
                            if (((buf.b[num] == 0x31) && (buf.b[num + 1] == 50)) && ((buf.b[num + 2] == 0x35) && (buf.b[num + 3] == 0x30)))
                            {
                                charset = 0xee;
                                num44 = 0x4e3;
                                class31.Clear();
                                class31.Add("fswiss");
                            }
                            if (((buf.b[num] == 0x31) && (buf.b[num + 1] == 50)) && ((buf.b[num + 2] == 0x35) && (buf.b[num + 3] == 0x31)))
                            {
                                charset = 0xcc;
                                num44 = 0x4e3;
                                class31.Clear();
                                class31.Add("fnil");
                            }
                            if (((buf.b[num] == 0x31) && (buf.b[num + 1] == 50)) && ((buf.b[num + 2] == 0x35) && (buf.b[num + 3] == 50)))
                            {
                                charset = 0;
                                num44 = 0x4e3;
                                class31.Clear();
                                class31.Add("fswiss");
                            }
                            if (((buf.b[num] == 0x31) && (buf.b[num + 1] == 50)) && ((buf.b[num + 2] == 0x35) && (buf.b[num + 3] == 0x33)))
                            {
                                charset = 0xa1;
                                num44 = 0x4e3;
                                class31.Clear();
                                class31.Add("fswiss");
                            }
                            if (((buf.b[num] == 0x31) && (buf.b[num + 1] == 50)) && ((buf.b[num + 2] == 0x35) && (buf.b[num + 3] == 0x34)))
                            {
                                num44 = 0x4e6;
                                charset = 0xa2;
                                class31.Clear();
                                class31.Add("fswiss");
                            }
                            if (((buf.b[num] == 0x31) && (buf.b[num + 1] == 50)) && ((buf.b[num + 2] == 0x35) && (buf.b[num + 3] == 0x35)))
                            {
                                charset = 0xb1;
                                num44 = 0x4e3;
                                class31.Clear();
                                class31.Add("fswiss");
                            }
                            if (((buf.b[num] == 0x31) && (buf.b[num + 1] == 50)) && ((buf.b[num + 2] == 0x35) && (buf.b[num + 3] == 0x36)))
                            {
                                num44 = 0x4e8;
                                charset = 0xb2;
                                class31.Clear();
                                class31.Add("fswiss");
                            }
                            if (((buf.b[num] == 0x31) && (buf.b[num + 1] == 50)) && ((buf.b[num + 2] == 0x35) && (buf.b[num + 3] == 0x37)))
                            {
                                charset = 0xba;
                                num44 = 0x4e3;
                                class31.Clear();
                                class31.Add("fswiss");
                            }
                            if (((buf.b[num] == 0x31) && (buf.b[num + 1] == 50)) && ((buf.b[num + 2] == 0x35) && (buf.b[num + 3] == 0x38)))
                            {
                                charset = 0;
                                num44 = 0x4e3;
                                class31.Clear();
                                class31.Add("fswiss");
                            }
                            if ((((buf.b[num] == 0x6b) || (buf.b[num] == 0x4b)) && ((buf.b[num + 1] == 0x6f) || (buf.b[num + 1] == 0x4f))) && (((buf.b[num + 2] == 0x69) || (buf.b[num + 2] == 0x49)) && (buf.b[num + 3] == 0x38)))
                            {
                                charset = 0xcc;
                                num44 = 0x4e3;
                                class31.Clear();
                                class31.Add("fnil");
                            }
                            if ((((buf.b[num] == 0x38) && (buf.b[num + 1] == 0x38)) && ((buf.b[num + 2] == 0x35) && (buf.b[num + 3] == 0x39))) && ((buf.b[num + 4] == 0x2d) && (buf.b[num + 5] == 0x35)))
                            {
                                charset = 0xcc;
                                num44 = 0x4e3;
                                class31.Clear();
                                class31.Add("fnil");
                            }
                            if (((((buf.b[num] == 0x6c) || (buf.b[num] == 0x4c)) && ((buf.b[num + 1] == 0x61) || (buf.b[num + 1] == 0x41))) && (((buf.b[num + 2] == 0x74) || (buf.b[num + 2] == 0x54)) && ((buf.b[num + 3] == 0x69) || (buf.b[num + 3] == 0x49)))) && (((buf.b[num + 4] == 110) || (buf.b[num + 4] == 0x4e)) && (buf.b[num + 5] == 0x35)))
                            {
                                charset = 0xcc;
                                num44 = 0x4e3;
                                class31.Clear();
                                class31.Add("fnil");
                            }
                            if ((((buf.b[num] == 0x38) && (buf.b[num + 1] == 0x38)) && ((buf.b[num + 2] == 0x35) && (buf.b[num + 3] == 0x39))) && ((buf.b[num + 4] == 0x2d) && (buf.b[num + 5] == 0x31)))
                            {
                                num44 = 0x4e4;
                                charset = 0;
                                class31.Clear();
                                class31.Add("fswiss");
                            }
                            if (((((buf.b[num] == 0x6c) || (buf.b[num] == 0x4c)) && ((buf.b[num + 1] == 0x61) || (buf.b[num + 1] == 0x41))) && (((buf.b[num + 2] == 0x74) || (buf.b[num + 2] == 0x54)) && ((buf.b[num + 3] == 0x69) || (buf.b[num + 3] == 0x49)))) && (((buf.b[num + 4] == 110) || (buf.b[num + 4] == 0x4e)) && (buf.b[num + 5] == 0x31)))
                            {
                                num44 = 0x4e4;
                                charset = 0;
                                class31.Clear();
                                class31.Add("fswiss");
                            }
                            if ((((((buf.b[num] == 0x73) || (buf.b[num] == 0x53)) && ((buf.b[num + 1] == 0x68) || (buf.b[num + 1] == 0x48))) && (((buf.b[num + 2] == 0x69) || (buf.b[num + 2] == 0x49)) && ((buf.b[num + 3] == 0x66) || (buf.b[num + 3] == 70)))) && ((((buf.b[num + 4] == 0x74) || (buf.b[num + 4] == 0x54)) && (buf.b[num + 5] == 0x5f)) && (((buf.b[num + 6] == 0x6a) || (buf.b[num + 6] == 0x4a)) && ((buf.b[num + 7] == 0x69) || (buf.b[num + 7] == 0x49))))) && ((buf.b[num + 8] == 0x73) || (buf.b[num + 8] == 0x53)))
                            {
                                num44 = 0x4e4;
                                class31.Clear();
                                class31.Add("fswiss");
                                lang = 0x409;
                                hieroglyph = true;
                                num45 = 0x3a4;
                                charset = 0x80;
                            }
                            if (((((buf.b[num] == 0x75) || (buf.b[num] == 0x55)) && ((buf.b[num + 1] == 0x74) || (buf.b[num + 1] == 0x54))) && (((buf.b[num + 2] == 0x66) || (buf.b[num + 2] == 70)) && (buf.b[num + 3] == 0x2d))) && ((buf.b[num + 4] == 0x38) || ((buf.b[num + 4] == 0x31) && (buf.b[num + 5] == 0x36))))
                            {
                                num44 = 0x4e4;
                                class31.Clear();
                                class31.Add("fswiss");
                            }
                            if (buf.b[num] == 0x3e)
                            {
                                break;
                            }
                            num++;
                        }
                    }
                    num++;
                }
            }
            if (class30.byteCmpi("Japanese") == 0)
            {
                charset = 0x80;
            }
            else if (class30.byteCmpi("SimplifiedChinese") == 0)
            {
                charset = 0x86;
            }
            else if (class30.byteCmpi("TraditionalChinese") == 0)
            {
                charset = 0x88;
            }
            else if (class30.byteCmpi("Korean") == 0)
            {
                charset = 0x81;
            }
            else if (class30.byteCmpi("Russian") == 0)
            {
                charset = 0xcc;
                num45 = 0x4e3;
            }
            num44 = this.get_ansicpg(class30.ByteToString());
            int num47 = 0;
            if (num47 == 0)
            {
                num47 = 80;
            }
            if (this._outputTextFormat == eOutputTextFormat.Text)
            {
                class4.Clear();
                num = 0;
                num4 = 0;
                num10 = 0;
                while (num < max)
                {
                    if ((((!flag9 && (buf.b[num] == 60)) && ((buf.b[num + 1] == 0x68) || (buf.b[num + 1] == 0x48))) && (((buf.b[num + 2] == 0x65) || (buf.b[num + 2] == 0x45)) && ((buf.b[num + 3] == 0x61) || (buf.b[num + 3] == 0x41)))) && (((buf.b[num + 4] == 100) || (buf.b[num + 4] == 0x44)) && (buf.b[num + 5] == 0x3e)))
                    {
                        while (num < max)
                        {
                            if ((((((buf.b[num] == 60) && (buf.b[num + 1] == 0x73)) && ((buf.b[num + 2] == 0x74) && (buf.b[num + 3] == 0x79))) && ((buf.b[num + 4] == 0x6c) && (buf.b[num + 5] == 0x65))) || ((((buf.b[num] == 60) && (buf.b[num + 1] == 0x53)) && ((buf.b[num + 2] == 0x74) && (buf.b[num + 3] == 0x79))) && ((buf.b[num + 4] == 0x6c) && (buf.b[num + 5] == 0x65)))) || ((((buf.b[num] == 60) && (buf.b[num + 1] == 0x53)) && ((buf.b[num + 2] == 0x54) && (buf.b[num + 3] == 0x59))) && ((buf.b[num + 4] == 0x4c) && (buf.b[num + 5] == 0x45))))
                            {
                                num4 = 0;
                                while ((num4 == 0) && (num < max))
                                {
                                    if ((((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x73) && (buf.b[num + 3] == 0x74))) && (((buf.b[num + 4] == 0x79) && (buf.b[num + 5] == 0x6c)) && ((buf.b[num + 6] == 0x65) && (buf.b[num + 7] == 0x3e)))) || ((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x53) && (buf.b[num + 3] == 0x74))) && (((buf.b[num + 4] == 0x79) && (buf.b[num + 5] == 0x6c)) && ((buf.b[num + 6] == 0x65) && (buf.b[num + 7] == 0x3e))))) || ((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x53) && (buf.b[num + 3] == 0x54))) && (((buf.b[num + 4] == 0x59) && (buf.b[num + 5] == 0x4c)) && ((buf.b[num + 6] == 0x45) && (buf.b[num + 7] == 0x3e)))))
                                    {
                                        num4 = 1;
                                    }
                                    num++;
                                }
                                num += 7;
                            }
                            if ((((buf.b[num] == 60) && ((buf.b[num + 1] == 0x62) || (buf.b[num + 1] == 0x42))) && (((buf.b[num + 2] == 0x6f) || (buf.b[num + 2] == 0x4f)) && ((buf.b[num + 3] == 100) || (buf.b[num + 3] == 0x44)))) && (((buf.b[num + 4] == 0x79) || (buf.b[num + 4] == 0x59)) && ((buf.b[num + 5] == 0x3e) || this.IS_DELIMITER(buf.b[num + 5]))))
                            {
                                if ((buf.b[num + 5] == 0x20) || this.IS_DELIMITER(buf.b[num + 5]))
                                {
                                    while ((buf.b[num + 5] != 0x3e) && (num < max))
                                    {
                                        num++;
                                    }
                                }
                                num += 5;
                                flag9 = true;
                                goto Label_27BA;
                            }
                            if (((buf.b[num] == 60) && ((buf.b[num + 1] == 0x70) || (buf.b[num + 1] == 80))) && (((buf.b[num + 2] == 0x3e) || (buf.b[num + 2] == 0x20)) || this.IS_DELIMITER(buf.b[num + 2])))
                            {
                                num--;
                                flag9 = true;
                                goto Label_27BA;
                            }
                            if ((((buf.b[num] == 60) && ((buf.b[num + 1] == 0x74) || (buf.b[num + 1] == 0x54))) && (((buf.b[num + 2] == 100) || (buf.b[num + 2] == 0x44)) || ((buf.b[num + 2] == 0x68) || (buf.b[num + 2] == 0x48)))) && ((buf.b[num + 3] == 0x3e) || this.IS_DELIMITER(buf.b[num + 3])))
                            {
                                if ((buf.b[num + 3] == 0x20) || this.IS_DELIMITER(buf.b[num + 3]))
                                {
                                    while ((buf.b[num + 3] != 0x3e) && (num < max))
                                    {
                                        num++;
                                    }
                                }
                                num += 3;
                                flag9 = true;
                                goto Label_27BA;
                            }
                            if ((((buf.b[num] == 60) && ((buf.b[num + 1] == 0x73) || (buf.b[num + 1] == 0x53))) && (((buf.b[num + 2] == 0x63) || (buf.b[num + 2] == 0x43)) && ((buf.b[num + 3] == 0x72) || (buf.b[num + 3] == 0x52)))) && ((((buf.b[num + 4] == 0x69) || (buf.b[num + 4] == 0x49)) && ((buf.b[num + 5] == 0x70) || (buf.b[num + 5] == 80))) && ((buf.b[num + 6] == 0x74) || (buf.b[num + 6] == 0x54))))
                            {
                                num4 = 0;
                                while ((num4 == 0) && (num < max))
                                {
                                    if (((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x73) || (buf.b[num + 2] == 0x53))) && (((buf.b[num + 3] == 0x63) || (buf.b[num + 3] == 0x43)) && ((buf.b[num + 4] == 0x72) || (buf.b[num + 4] == 0x52)))) && ((((buf.b[num + 5] == 0x69) || (buf.b[num + 5] == 0x49)) && ((buf.b[num + 6] == 0x70) || (buf.b[num + 6] == 80))) && (((buf.b[num + 7] == 0x74) || (buf.b[num + 7] == 0x54)) && (buf.b[num + 8] == 0x3e))))
                                    {
                                        num4 = 1;
                                    }
                                    num++;
                                }
                                num += 7;
                            }
                            if (((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x68) || (buf.b[num + 2] == 0x48))) && (((buf.b[num + 3] == 0x65) || (buf.b[num + 3] == 0x45)) && ((buf.b[num + 4] == 0x61) || (buf.b[num + 4] == 0x41)))) && (((buf.b[num + 5] == 100) || (buf.b[num + 5] == 0x44)) && (buf.b[num + 6] == 0x3e)))
                            {
                                num += 6;
                                flag9 = true;
                                goto Label_27BA;
                            }
                            num++;
                        }
                        goto Label_27BA;
                    }
                    if ((((buf.b[num] == 60) && ((buf.b[num + 1] == 0x73) || (buf.b[num + 1] == 0x53))) && (((buf.b[num + 2] == 0x63) || (buf.b[num + 2] == 0x43)) && ((buf.b[num + 3] == 0x72) || (buf.b[num + 3] == 0x52)))) && ((((buf.b[num + 4] == 0x69) || (buf.b[num + 4] == 0x49)) && ((buf.b[num + 5] == 0x70) || (buf.b[num + 5] == 80))) && ((buf.b[num + 6] == 0x74) || (buf.b[num + 6] == 0x54))))
                    {
                        num4 = 0;
                        while ((num4 == 0) && (num < max))
                        {
                            if (((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x73) || (buf.b[num + 2] == 0x53))) && (((buf.b[num + 3] == 0x63) || (buf.b[num + 3] == 0x43)) && ((buf.b[num + 4] == 0x72) || (buf.b[num + 4] == 0x52)))) && ((((buf.b[num + 5] == 0x69) || (buf.b[num + 5] == 0x49)) && ((buf.b[num + 6] == 0x70) || (buf.b[num + 6] == 80))) && (((buf.b[num + 7] == 0x74) || (buf.b[num + 7] == 0x54)) && (buf.b[num + 8] == 0x3e))))
                            {
                                num4 = 1;
                            }
                            num++;
                        }
                        num += 7;
                        goto Label_27BA;
                    }
                    if ((((buf.b[num] != 60) || ((buf.b[num + 1] != 0x6f) && (buf.b[num + 1] != 0x4f))) || (((buf.b[num + 2] != 0x70) && (buf.b[num + 2] != 80)) || ((buf.b[num + 3] != 0x74) && (buf.b[num + 3] != 0x54)))) || ((((buf.b[num + 4] != 0x69) && (buf.b[num + 4] != 0x49)) || ((buf.b[num + 5] != 0x6f) && (buf.b[num + 5] != 0x4f))) || (((buf.b[num + 6] != 110) && (buf.b[num + 6] != 0x4e)) || ((buf.b[num + 7] != 0x3e) && (buf.b[num + 7] != 0x20)))))
                    {
                        goto Label_238A;
                    }
                    num4 = 0;
                    while ((num4 == 0) && (num < max))
                    {
                        if (((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x6f) || (buf.b[num + 2] == 0x4f))) && (((buf.b[num + 3] == 0x70) || (buf.b[num + 3] == 80)) && ((buf.b[num + 4] == 0x74) || (buf.b[num + 4] == 0x54)))) && ((((buf.b[num + 5] == 0x69) || (buf.b[num + 5] == 0x49)) && ((buf.b[num + 6] == 0x6f) || (buf.b[num + 6] == 0x4f))) && (((buf.b[num + 7] == 110) || (buf.b[num + 7] == 0x4e)) && (buf.b[num + 8] == 0x3e))))
                        {
                            num4 = 1;
                            goto Label_237F;
                        }
                        num++;
                    }
                Label_237F:
                    num += 8;
                goto Label_27BA;
            Label_238A:
                if ((((((buf.b[num] == 60) && (buf.b[num + 1] == 0x73)) && ((buf.b[num + 2] == 0x74) && (buf.b[num + 3] == 0x79))) && ((buf.b[num + 4] == 0x6c) && (buf.b[num + 5] == 0x65))) || ((((buf.b[num] == 60) && (buf.b[num + 1] == 0x53)) && ((buf.b[num + 2] == 0x74) && (buf.b[num + 3] == 0x79))) && ((buf.b[num + 4] == 0x6c) && (buf.b[num + 5] == 0x65)))) || ((((buf.b[num] == 60) && (buf.b[num + 1] == 0x53)) && ((buf.b[num + 2] == 0x54) && (buf.b[num + 3] == 0x59))) && ((buf.b[num + 4] == 0x4c) && (buf.b[num + 5] == 0x45))))
                {
                    num4 = 0;
                    while ((num4 == 0) && (num < max))
                    {
                        if ((((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x73) && (buf.b[num + 3] == 0x74))) && (((buf.b[num + 4] == 0x79) && (buf.b[num + 5] == 0x6c)) && ((buf.b[num + 6] == 0x65) && (buf.b[num + 7] == 0x3e)))) || ((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x53) && (buf.b[num + 3] == 0x74))) && (((buf.b[num + 4] == 0x79) && (buf.b[num + 5] == 0x6c)) && ((buf.b[num + 6] == 0x65) && (buf.b[num + 7] == 0x3e))))) || ((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x53) && (buf.b[num + 3] == 0x54))) && (((buf.b[num + 4] == 0x59) && (buf.b[num + 5] == 0x4c)) && ((buf.b[num + 6] == 0x45) && (buf.b[num + 7] == 0x3e)))))
                        {
                            num4 = 1;
                        }
                        num++;
                    }
                    num += 7;
                }
                else if ((buf.b[num] == 60) && (buf.b[num + 1] == 0x25))
                {
                    while (num < max)
                    {
                        if ((buf.b[num - 1] == 0x25) && (buf.b[num] == 0x3e))
                        {
                            goto Label_27BA;
                        }
                        num++;
                    }
                }
                else if (((buf.b[num] == 60) && (buf.b[num + 1] == 0x21)) && ((buf.b[num + 2] == 0x2d) && (buf.b[num + 3] == 0x2d)))
                {
                    num += 3;
                    num7 = 1;
                    while ((num7 > 0) && (num < max))
                    {
                        if (((buf.b[num] == 0x2d) && (buf.b[num + 1] == 0x2d)) && (buf.b[num + 2] == 0x3e))
                        {
                            num7--;
                            num++;
                        }
                        if (((buf.b[num] == 60) && (buf.b[num + 1] == 0x21)) && ((buf.b[num + 2] == 0x2d) && (buf.b[num + 3] == 0x2d)))
                        {
                            num7++;
                            num += 3;
                        }
                        num++;
                    }
                }
                else
                {
                    class4.Add(buf.b[num]);
                    num10++;
                }
        Label_27BA:
            num++;
                }
                max = num10 = class4.len;
                buf.Clear();
                num = 0;
                num4 = 1;
                num11 = 0;
                num5 = 0;
                while (num < class4.len)
                {
                    if (buf.len > 0x1193f)
                    {
                        break;
                    }
                    if (((num == 0) && (class4.b[num] == 0xef)) && ((class4.b[num + 1] == 0xbb) && (class4.b[num + 2] == 0xbf)))
                    {
                        num += 2;
                    }
                    else if ((((!flag14 && (class4.b[num] == 60)) && ((class4.b[num + 1] == 0x68) || (class4.b[num + 1] == 0x48))) && (((class4.b[num + 2] == 0x74) || (class4.b[num + 2] == 0x54)) && ((class4.b[num + 3] == 0x6d) || (class4.b[num + 3] == 0x4d)))) && (((class4.b[num + 4] == 0x6c) || (class4.b[num + 4] == 0x4c)) && ((class4.b[num + 5] == 0x3e) || this.IS_DELIMITER(class4.b[num + 5]))))
                    {
                        num += 5;
                        while ((class4.b[num] != 0x3e) && (num < max))
                        {
                            num++;
                        }
                        num11 = 0;
                        flag14 = true;
                    }
                    else if (((class4.b[num] == 60) && (class4.b[num + 1] == 0x21)) && ((class4.b[num + 2] == 0x2d) && (class4.b[num + 3] == 0x2d)))
                    {
                        num += 3;
                        while (num < max)
                        {
                            if (((class4.b[num] == 0x2d) && (class4.b[num + 1] == 0x2d)) && (class4.b[num + 2] == 0x3e))
                            {
                                break;
                            }
                            if (((class4.b[num] == 60) && (class4.b[num + 1] == 0x21)) && ((class4.b[num + 2] == 0x2d) && (class4.b[num + 3] == 0x2d)))
                            {
                                num += 3;
                                while (num < max)
                                {
                                    if (((class4.b[num] == 0x2d) && (class4.b[num + 1] == 0x2d)) && (class4.b[num + 2] == 0x3e))
                                    {
                                        num += 2;
                                        break;
                                    }
                                    num++;
                                }
                            }
                            num++;
                        }
                        num += 2;
                    }
                    else
                    {
                        if ((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x70) || (class4.b[num + 2] == 80))) && (class4.b[num + 3] == 0x3e))
                        {
                            buf.Add(this.LF);
                            num += 4;
                        }
                        if (((class4.b[num] == 60) && ((class4.b[num + 1] == 0x70) || (class4.b[num + 1] == 80))) && (class4.b[num + 2] == 0x3e))
                        {
                            buf.Add(this.LF);
                            num += 3;
                        }
                        if ((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x68) || (class4.b[num + 2] == 0x48))) && (class4.b[num + 4] == 0x3e))
                        {
                            buf.Add(this.LF);
                            num += 5;
                        }
                        if ((((this._preserveHyperlinks != 1) || ((class4.b[num] != 0x68) && (class4.b[num] != 0x48))) || (((class4.b[num + 1] != 0x72) && (class4.b[num + 1] != 0x52)) || ((class4.b[num + 2] != 0x65) && (class4.b[num + 2] != 0x45)))) || (((class4.b[num + 3] != 0x66) && (class4.b[num + 3] != 70)) || ((class4.b[num + 4] != 0x3d) || (class4.b[num + 5] != 0x22))))
                        {
                            goto Label_2EC9;
                        }
                        flag10 = false;
                        index = num;
                        while (index > 0)
                        {
                            if ((class4.b[index] == 60) || (class4.b[index] == 0x3e))
                            {
                                break;
                            }
                            if (((class4.b[index + 1] == 0x20) && ((class4.b[index] == 0x61) || (class4.b[index] == 0x41))) && (class4.b[index - 1] == 60))
                            {
                                flag10 = true;
                            }
                            index--;
                        }
                        if (flag10)
                        {
                            num += 5;
                            num7 = 0;
                            class16.b[num7] = class4.b[num++];
                            num7++;
                            flag19 = true;
                            for (num38 = 0; (num38 < 500) && ((num + num38) < num10); num38++)
                            {
                                if ((((class4.b[num + num38] == 60) && (class4.b[(num + 1) + num38] == 0x2f)) && ((class4.b[(num + 2) + num38] == 0x61) || (class4.b[(num + 2) + num38] == 0x41))) && (class4.b[(num + 3) + num38] == 0x3e))
                                {
                                    break;
                                }
                                if ((((class4.b[num + num38] == 60) && ((class4.b[(num + 1) + num38] == 0x69) || (class4.b[(num + 1) + num38] == 0x49))) && (((class4.b[(num + 2) + num38] == 0x6d) || (class4.b[(num + 2) + num38] == 0x4d)) && ((class4.b[(num + 3) + num38] == 0x67) || (class4.b[(num + 3) + num38] == 0x47)))) && (class4.b[(num + 4) + num38] == 0x20))
                                {
                                    flag19 = false;
                                }
                            }
                            if (flag19 || (this._preserveImages != 0))
                            {
                                goto Label_2E10;
                            }
                        }
                    }
                    goto Label_3D27;
                Label_2DF9:
                    class16.Add(class4.b[num]);
                num++;
            Label_2E10:
                if ((class4.b[num] != 0x22) && (num < max))
                {
                    goto Label_2DF9;
                }
            class16.b[num7++] = class4.b[num];
            class16.b[num7] = 0;
            for (num7 = 0; class16.b[num7] != 0; num7++)
            {
                class17.b[num7] = 0;
            }
            if (class17.IndexOf("javascript") != -1)
            {
                flag10 = false;
                flag8 = false;
            }
            else
            {
                class15.Add("[");
                class15.Add(class16);
                class15.Add("]");
                flag8 = true;
            }
            while ((class4.b[num] != 0x3e) && (num < max))
            {
                num++;
            }
            goto Label_3D27;
        Label_2EC9:
            if ((((this._preserveHyperlinks == 1) && (class4.b[num] == 60)) && (class4.b[num + 1] == 0x2f)) && (((class4.b[num + 2] == 0x61) || (class4.b[num + 2] == 0x41)) && (class4.b[num + 3] == 0x3e)))
            {
                if (flag8)
                {
                    buf.Add(class15);
                }
                flag8 = false;
                num += 3;
            }
            else if ((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x74) || (class4.b[num + 1] == 0x54))) && (((class4.b[num + 2] == 0x61) || (class4.b[num + 2] == 0x41)) && ((class4.b[num + 3] == 0x62) || (class4.b[num + 3] == 0x42)))) && ((((class4.b[num + 4] == 0x6c) || (class4.b[num + 4] == 0x4c)) && ((class4.b[num + 5] == 0x65) || (class4.b[num + 5] == 0x45))) && ((class4.b[num + 6] == 0x3e) || this.IS_DELIMITER(class4.b[num + 6]))))
            {
                if (this.IS_DELIMITER(class4.b[num + 6]))
                {
                    _tablesArray[num36].table_p.percent_width = 0;
                    int num48 = -1111;
                    _tablesArray[num36].table_p.table_width = this.get_width(class4, num, max, ref _tablesArray[num36].table_p.percent_width, ref index, ref index, null, num48, ref num48, null, ref num48, ref num48);
                    while ((class4.b[num + 6] != 0x3e) && (num < max))
                    {
                        num++;
                    }
                }
                if (_tablesArray[num36].table)
                {
                    while (_tablesArray[num36].cell > 0)
                    {
                        buf.Add("\t\t");
                        num11 += 2;
                        nest_tables _tables1 = _tablesArray[num36];
                        _tables1.cell--;
                    }
                    buf.Add(this.LF);
                    num11++;
                }
                _tablesArray[num36].table = false;
                num4 = 0;
                num += 6;
            }
            else if (((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x74) || (class4.b[num + 2] == 0x54))) && (((class4.b[num + 3] == 0x61) || (class4.b[num + 3] == 0x41)) && ((class4.b[num + 4] == 0x62) || (class4.b[num + 4] == 0x42)))) && ((((class4.b[num + 5] == 0x6c) || (class4.b[num + 5] == 0x4c)) && ((class4.b[num + 6] == 0x65) || (class4.b[num + 6] == 0x45))) && (class4.b[num + 7] == 0x3e)))
            {
                _tablesArray[num36].table = false;
                if (buf.len > 1)
                {
                    while ((buf.len > 1) && this.IS_DELIMITER(buf.b[buf.len - 1]))
                    {
                        buf.len--;
                    }
                }
                buf.Add(this.LF);
                num11++;
                num += 7;
            }
            else if (((class4.b[num] == 60) && ((class4.b[num + 1] == 0x74) || (class4.b[num + 1] == 0x54))) && (((class4.b[num + 2] == 0x72) || (class4.b[num + 2] == 0x52)) && ((class4.b[num + 3] == 0x3e) || this.IS_DELIMITER(class4.b[num + 3]))))
            {
                if (this.IS_DELIMITER(class4.b[num + 3]))
                {
                    while ((class4.b[num + 3] != 0x3e) && (num < max))
                    {
                        num++;
                    }
                }
                num += 3;
                if (_tablesArray[num36].table)
                {
                    while (_tablesArray[num36].cell > 0)
                    {
                        buf.Add("\t\t");
                        num11 += 2;
                        nest_tables _tables2 = _tablesArray[num36];
                        _tables2.cell--;
                    }
                    buf.Add(this.LF);
                    num11++;
                }
                if (((buf.len > 1) && (buf.b[buf.len - 1] == 0x20)) && this.IS_DELIMITER(buf.b[buf.len - 2]))
                {
                    buf.len--;
                }
                _tablesArray[num36].table = true;
                for (num7 = 0; num7 < this.MAX_COLUMNS; num7++)
                {
                    _tablesArray[num36].td_width[num7] = 0;
                    _tablesArray[num36].td_percent_width[num7] = 0;
                }
                _tablesArray[num36].td = 0;
                for (num7 = 0; (num + num7) < max; num7++)
                {
                    if (((((class4.b[num + num7] == 60) && (class4.b[(num + num7) + 1] == 0x2f)) && ((class4.b[(num + num7) + 2] == 0x74) || (class4.b[(num + num7) + 2] == 0x54))) && (((class4.b[(num + num7) + 3] == 0x72) || (class4.b[(num + num7) + 3] == 0x52)) && (class4.b[(num + num7) + 4] == 0x3e))) || (((class4.b[num + num7] == 60) && ((class4.b[(num + num7) + 1] == 0x74) || (class4.b[(num + num7) + 1] == 0x54))) && (((class4.b[(num + num7) + 2] == 0x72) || (class4.b[(num + num7) + 2] == 0x52)) && ((class4.b[(num + num7) + 3] == 0x3e) || this.IS_DELIMITER(class4.b[(num + num7) + 3])))))
                    {
                        break;
                    }
                    if ((((class4.b[num + num7] == 60) && ((class4.b[(num + num7) + 1] == 0x74) || (class4.b[(num + num7) + 1] == 0x54))) && (((class4.b[(num + num7) + 2] == 100) || (class4.b[(num + num7) + 2] == 0x44)) || ((class4.b[(num + num7) + 2] == 0x68) || (class4.b[(num + num7) + 2] == 0x48)))) && ((class4.b[(num + num7) + 3] == 0x3e) || this.IS_DELIMITER(class4.b[(num + num7) + 3])))
                    {
                        nest_tables _tables3 = _tablesArray[num36];
                        _tables3.td++;
                        if (this.IS_DELIMITER(class4.b[(num + num7) + 3]))
                        {
                            num7 += 3;
                            int num49 = -1111;
                            _tablesArray[num36].td_width[_tablesArray[num36].td - 1] = this.get_width(class4, num + num7, max, ref _tablesArray[num36].td_percent_width[_tablesArray[num36].td - 1], ref index, ref index, null, num49, ref num49, null, ref num49, ref num49);
                        }
                    }
                    if ((((class4.b[num + num7] == 60) && ((class4.b[(num + num7) + 1] == 0x74) || (class4.b[(num + num7) + 1] == 0x54))) && (((class4.b[(num + num7) + 2] == 0x61) || (class4.b[(num + num7) + 2] == 0x41)) && ((class4.b[(num + num7) + 3] == 0x62) || (class4.b[(num + num7) + 3] == 0x42)))) && ((((class4.b[(num + num7) + 4] == 0x6c) || (class4.b[(num + num7) + 4] == 0x4c)) && ((class4.b[(num + num7) + 5] == 0x65) || (class4.b[(num + num7) + 5] == 0x45))) && (this.IS_DELIMITER(class4.b[(num + num7) + 6]) || (class4.b[(num + num7) + 6] == 0x3e))))
                    {
                        break;
                    }
                }
                _tablesArray[num36].cell = _tablesArray[num36].td;
                this.fill_columns_width(_tablesArray[num36].td_width, _tablesArray[num36].td_percent_width, _tablesArray[num36].td, _tablesArray[num36].table_p.table_width, _tablesArray[num36].table_p.percent_width, this.SCREEN_W_DEF);
            }
            else if ((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x74) || (class4.b[num + 1] == 0x54))) && (((class4.b[num + 2] == 100) || (class4.b[num + 2] == 0x44)) || ((class4.b[num + 2] == 0x68) || (class4.b[num + 2] == 0x48)))) && ((class4.b[num + 3] == 0x3e) || this.IS_DELIMITER(class4.b[num + 3])))
            {
                if (this.IS_DELIMITER(class4.b[num + 3]))
                {
                    while (!this.IS_XTHAN(class4.b[num + 3]) && (num < max))
                    {
                        num++;
                    }
                }
                num += 3;
                num4 = 0;
            }
            else if ((((_tablesArray[num36].table && (class4.b[num] == 60)) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x74) || (class4.b[num + 2] == 0x54))) && ((((class4.b[num + 3] == 100) || (class4.b[num + 3] == 0x44)) || ((class4.b[num + 3] == 0x68) || (class4.b[num + 3] == 0x48))) && (class4.b[num + 4] == 0x3e)))
            {
                buf.Add("\t\t");
                num11 += 2;
                num += 4;
                nest_tables _tables4 = _tablesArray[num36];
                _tables4.cell--;
            }
            else if ((((_tablesArray[num36].table && (class4.b[num] == 60)) && (class4.b[num + 1] == 0x2f)) && (((class4.b[num + 2] == 0x74) || (class4.b[num + 2] == 0x54)) && ((class4.b[num + 3] == 0x72) || (class4.b[num + 3] == 0x52)))) && (class4.b[num + 4] == 0x3e))
            {
                while (_tablesArray[num36].cell > 0)
                {
                    buf.Add("\t\t");
                    num11 += 2;
                    nest_tables _tables5 = _tablesArray[num36];
                    _tables5.cell--;
                }
                buf.Add(this.LF);
                num11++;
                num += 4;
                _tablesArray[num36].table = false;
            }
            else if (((class4.b[num] == 60) && ((class4.b[num + 1] == 0x62) || (class4.b[num + 1] == 0x42))) && (((class4.b[num + 2] == 0x72) || (class4.b[num + 2] == 0x52)) && (((class4.b[num + 3] == 0x3e) || (class4.b[num + 3] == 0x20)) || (class4.b[num + 3] == 0x2f))))
            {
                if ((class4.b[num + 3] == 0x20) || (class4.b[num + 3] == 0x2f))
                {
                    while ((class4.b[num + 3] != 0x3e) && (num < max))
                    {
                        num++;
                    }
                }
                buf.Add(this.LF);
                num11++;
                num += 3;
            }
            else
            {
                if (((class4.b[num] == 60) && ((class4.b[num + 1] == 0x6c) || (class4.b[num + 1] == 0x4c))) && (((class4.b[num + 2] == 0x69) || (class4.b[num + 2] == 0x49)) && ((class4.b[num + 3] == 0x3e) || (class4.b[num + 3] == 0x20))))
                {
                    if (class4.b[num + 3] == 0x20)
                    {
                        while ((class4.b[num + 3] != 0x3e) && (num < max))
                        {
                            num++;
                        }
                    }
                    buf.Add(this.LF);
                    num11++;
                    num += 4;
                }
                if (((num > 1) && (class4.b[num - 1] == 0x3e)) && (class4.b[num] != 60))
                {
                    num4 = 1;
                }
                if ((class4.b[num] == 0x26) && (num4 != 0))
                {
                    num += this.special_symbols_txt(class4, num, max, class24);
                    if ((class24.b[0] != 0x20) || flag18)
                    {
                        buf.Add(class24);
                        num11 += class24.len;
                        num5 = 0;
                    }
                }
                else
                {
                    if (num11 > 0x1139b)
                    {
                        break;
                    }
                    if (class4.b[num] == 60)
                    {
                        num4 = 0;
                    }
                    else
                    {
                        if (num4 != 0)
                        {
                            if (this.IS_DELIMITER(class4.b[num]))
                            {
                                if (((buf.len > 0) && (num5 == 0)) && !this.IS_DELIMITER(buf.b[buf.len - 1]))
                                {
                                    buf.Add((byte)0x20);
                                    num11++;
                                    num5 = 1;
                                }
                            }
                            else
                            {
                                num5 = 0;
                                buf.Add(class4.b[num]);
                                num11++;
                                flag18 = true;
                            }
                        }
                        
                    }
                }
            }
    Label_3D27:
        num++;
                }
            }
            else
            {
                object[] objArray;
                fontsize = this._fontSize;
                string[] strArray = new string[] { this.LF, @"\par\pard\sb", num25.ToString(), @"\sa", num26.ToString(), @"\sbauto1\saauto1\fs", (fontsize * 2).ToString(), @"\lang", lang.ToString(), " " };
                string str14 = string.Concat(strArray);
                strArray = new string[10];
                strArray[0] = this.LF;
                strArray[1] = @"\par\pard\intbl\sb";
                strArray[2] = num25.ToString();
                strArray[3] = @"\sa";
                strArray[4] = num26.ToString();
                strArray[5] = @"\sbauto1\saauto1\fs";
                strArray[6] = (fontsize * 2).ToString();
                strArray[7] = @"\lang";
                strArray[8] = lang.ToString();
                strArray[9] = " ";
                string str15 = string.Concat(strArray);
                strArray = new string[8];
                strArray[0] = this.LF;
                strArray[1] = @"\pard\intbl\sb";
                strArray[2] = num25.ToString();
                strArray[3] = @"\fs";
                strArray[4] = (fontsize * 2).ToString();
                strArray[5] = @"\lang";
                strArray[6] = lang.ToString();
                strArray[7] = " ";
                string str16 = string.Concat(strArray);
                string str17 = this.LF + @"\sb0\sa0\par ";
                string str18 = this.LF + @"\sb0\sa0\par\intbl\lang" + lang.ToString() + " ";
                class7.Clear();
                class7.Add((fontsize * 2).ToString());
                if ((fontsize <= 0) || (fontsize > this.FONT_SIZE_MAX))
                {
                    fontsize = 10;
                }
                string str19 = (fontsize * 2).ToString();
                string str20 = this.LF + @"{\par\b\fs" + str19 + " ";
                string str21 = this.LF + @"{\b\fs" + str19 + " ";
                int length = str20.Length;
                int num51 = str21.Length;
                int num52 = 0;
                str19 = (fontsize / 2).ToString();
                string str22 = @"{\sub\dn" + str19 + " ";
                int num53 = str22.Length;
                str19 = (fontsize / 2).ToString();
                string str23 = @"{\super\up" + str19 + " ";
                int num54 = str23.Length;
                int num55 = 0;
                int num56 = 0;
                int num57 = 1;
                int num58 = 0;
                int num59 = 0;
                int[] numArray4 = new int[this.STK_MAX];
                int num60 = 0;
                int num61 = 100;
                listStyleType[] typeArray = new listStyleType[10];
                ByteClass strOLsymbol = new ByteClass();
                strOLsymbol.Add("1.");
                bool flag21 = false;
                class4.Clear();
                num = 0;
                num4 = 0;
                num10 = 0;
                while (num < max)
                {
                    if ((((buf.b[num] != 60) || ((buf.b[num + 1] != 0x6c) && (buf.b[num + 1] != 0x4c))) || (((buf.b[num + 2] != 0x69) && (buf.b[num + 2] != 0x49)) || ((buf.b[num + 3] != 110) && (buf.b[num + 3] != 0x4e)))) || (((buf.b[num + 4] != 0x6b) && (buf.b[num + 4] != 0x4b)) || !this.IS_DELIMITER(buf.b[num + 5])))
                    {
                        goto Label_43C7;
                    }
                    num += 5;
                    num7 = 0;
                    num5 = 0;
                    while (((num + num7) < max) && (buf.b[num + num7] != 0x3e))
                    {
                        if ((((((buf.b[num + num7] == 0x73) || (buf.b[num + num7] == 0x53)) && ((buf.b[(num + num7) + 1] == 0x74) || (buf.b[(num + num7) + 1] == 0x54))) && (((buf.b[(num + num7) + 2] == 0x79) || (buf.b[(num + num7) + 2] == 0x59)) && ((buf.b[(num + num7) + 3] == 0x6c) || (buf.b[(num + num7) + 3] == 0x4c)))) && ((((buf.b[(num + num7) + 4] == 0x65) || (buf.b[(num + num7) + 4] == 0x45)) && ((buf.b[(num + num7) + 5] == 0x73) || (buf.b[(num + num7) + 5] == 0x53))) && (((buf.b[(num + num7) + 6] == 0x68) || (buf.b[(num + num7) + 6] == 0x48)) && ((buf.b[(num + num7) + 7] == 0x65) || (buf.b[(num + num7) + 7] == 0x45))))) && (((buf.b[(num + num7) + 8] == 0x65) || (buf.b[(num + num7) + 8] == 0x45)) && ((buf.b[(num + num7) + 9] == 0x74) || (buf.b[(num + num7) + 9] == 0x54))))
                        {
                            num5 = 1;
                            goto Label_4287;
                        }
                        num7++;
                    }
                Label_4287:
                    if (num5 == 1)
                    {
                        for (num7 = 0; ((num + num7) < max) && (buf.b[num + num7] != 0x3e); num7++)
                        {
                            if (((((buf.b[num + num7] == 0x68) || (buf.b[num + num7] == 0x48)) && ((buf.b[(num + num7) + 1] == 0x72) || (buf.b[(num + num7) + 1] == 0x52))) && (((buf.b[(num + num7) + 2] == 0x65) || (buf.b[(num + num7) + 2] == 0x45)) && ((buf.b[(num + num7) + 3] == 0x66) || (buf.b[(num + num7) + 3] == 70)))) && (buf.b[(num + num7) + 4] == 0x3d))
                            {
                                num += num7;
                                num += 4;
                                this.ReadValue(buf, ref num, _params.file_name);
                                this.CombinePaths(this._htmlPath, _params.file_name);
                                this.CSS_read_file(_params);
                                goto Label_43AB;
                            }
                        }
                    }
            Label_43AB:
                while ((buf.b[num] != 0x3e) && (num < max))
                {
                    num++;
                }
            goto Label_5BD8;
        Label_43C7:
            if ((((!flag9 && (buf.b[num] == 60)) && ((buf.b[num + 1] == 0x68) || (buf.b[num + 1] == 0x48))) && (((buf.b[num + 2] == 0x65) || (buf.b[num + 2] == 0x45)) && ((buf.b[num + 3] == 0x61) || (buf.b[num + 3] == 0x41)))) && (((buf.b[num + 4] == 100) || (buf.b[num + 4] == 0x44)) && (buf.b[num + 5] == 0x3e)))
            {
                while (num < max)
                {
                    if ((((buf.b[num] != 60) || ((buf.b[num + 1] != 0x6c) && (buf.b[num + 1] != 0x4c))) || (((buf.b[num + 2] != 0x69) && (buf.b[num + 2] != 0x49)) || ((buf.b[num + 3] != 110) && (buf.b[num + 3] != 0x4e)))) || (((buf.b[num + 4] != 0x6b) && (buf.b[num + 4] != 0x4b)) || !this.IS_DELIMITER(buf.b[num + 5])))
                    {
                        goto Label_4834;
                    }
                    num += 5;
                    num7 = 0;
                    num5 = 0;
                    while (((num + num7) < max) && (buf.b[num + num7] != 0x3e))
                    {
                        if ((((((buf.b[num + num7] == 0x73) || (buf.b[num + num7] == 0x53)) && ((buf.b[(num + num7) + 1] == 0x74) || (buf.b[(num + num7) + 1] == 0x54))) && (((buf.b[(num + num7) + 2] == 0x79) || (buf.b[(num + num7) + 2] == 0x59)) && ((buf.b[(num + num7) + 3] == 0x6c) || (buf.b[(num + num7) + 3] == 0x4c)))) && ((((buf.b[(num + num7) + 4] == 0x65) || (buf.b[(num + num7) + 4] == 0x45)) && ((buf.b[(num + num7) + 5] == 0x73) || (buf.b[(num + num7) + 5] == 0x53))) && (((buf.b[(num + num7) + 6] == 0x68) || (buf.b[(num + num7) + 6] == 0x48)) && ((buf.b[(num + num7) + 7] == 0x65) || (buf.b[(num + num7) + 7] == 0x45))))) && (((buf.b[(num + num7) + 8] == 0x65) || (buf.b[(num + num7) + 8] == 0x45)) && ((buf.b[(num + num7) + 9] == 0x74) || (buf.b[(num + num7) + 9] == 0x54))))
                        {
                            num5 = 1;
                            goto Label_46FC;
                        }
                        num7++;
                    }
                Label_46FC:
                    if (num5 == 1)
                    {
                        for (num7 = 0; ((num + num7) < max) && (buf.b[num + num7] != 0x3e); num7++)
                        {
                            if (((((buf.b[num + num7] == 0x68) || (buf.b[num + num7] == 0x48)) && ((buf.b[(num + num7) + 1] == 0x72) || (buf.b[(num + num7) + 1] == 0x52))) && (((buf.b[(num + num7) + 2] == 0x65) || (buf.b[(num + num7) + 2] == 0x45)) && ((buf.b[(num + num7) + 3] == 0x66) || (buf.b[(num + num7) + 3] == 70)))) && (buf.b[(num + num7) + 4] == 0x3d))
                            {
                                num += num7;
                                num += 4;
                                this.ReadValue(buf, ref num, _params.file_name);
                                this.CombinePaths(this._htmlPath, _params.file_name);
                                this.CSS_read_file(_params);
                                goto Label_4820;
                            }
                        }
                    }
            Label_4820:
                while ((buf.b[num] != 0x3e) && (num < max))
                {
                    num++;
                }
        Label_4834:
            if (((((((buf.b[num] == 60) && (buf.b[num + 1] == 0x73)) && ((buf.b[num + 2] == 0x74) && (buf.b[num + 3] == 0x79))) && ((buf.b[num + 4] == 0x6c) && (buf.b[num + 5] == 0x65))) || ((((buf.b[num] == 60) && (buf.b[num + 1] == 0x53)) && ((buf.b[num + 2] == 0x74) && (buf.b[num + 3] == 0x79))) && ((buf.b[num + 4] == 0x6c) && (buf.b[num + 5] == 0x65)))) || ((((buf.b[num] == 60) && (buf.b[num + 1] == 0x53)) && ((buf.b[num + 2] == 0x54) && (buf.b[num + 3] == 0x59))) && ((buf.b[num + 4] == 0x4c) && (buf.b[num + 5] == 0x45)))) && !this.CSS_read_from_tags(_params, max, buf, ref num))
            {
                num4 = 0;
                while ((num4 == 0) && (num < max))
                {
                    if ((((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x73) && (buf.b[num + 3] == 0x74))) && (((buf.b[num + 4] == 0x79) && (buf.b[num + 5] == 0x6c)) && ((buf.b[num + 6] == 0x65) && (buf.b[num + 7] == 0x3e)))) || ((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x53) && (buf.b[num + 3] == 0x74))) && (((buf.b[num + 4] == 0x79) && (buf.b[num + 5] == 0x6c)) && ((buf.b[num + 6] == 0x65) && (buf.b[num + 7] == 0x3e))))) || ((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x53) && (buf.b[num + 3] == 0x54))) && (((buf.b[num + 4] == 0x59) && (buf.b[num + 5] == 0x4c)) && ((buf.b[num + 6] == 0x45) && (buf.b[num + 7] == 0x3e)))))
                    {
                        num4 = 1;
                    }
                    num++;
                }
                num += 7;
            }
        if ((((buf.b[num] == 60) && ((buf.b[num + 1] == 0x62) || (buf.b[num + 1] == 0x42))) && (((buf.b[num + 2] == 0x6f) || (buf.b[num + 2] == 0x4f)) && ((buf.b[num + 3] == 100) || (buf.b[num + 3] == 0x44)))) && (((buf.b[num + 4] == 0x79) || (buf.b[num + 4] == 0x59)) && ((buf.b[num + 5] == 0x3e) || this.IS_DELIMITER(buf.b[num + 5]))))
        {
            if (this.IS_DELIMITER(buf.b[num + 5]))
            {
                while ((buf.b[num + 5] != 0x3e) && (num < max))
                {
                    num++;
                }
            }
            num += 5;
            flag9 = true;
            goto Label_5BD8;
        }
        if (((buf.b[num] == 60) && ((buf.b[num + 1] == 0x70) || (buf.b[num + 1] == 80))) && ((buf.b[num + 2] == 0x3e) || this.IS_DELIMITER(buf.b[num + 2])))
        {
            num--;
            flag9 = true;
            goto Label_5BD8;
        }
        if ((((buf.b[num] == 60) && ((buf.b[num + 1] == 0x74) || (buf.b[num + 1] == 0x54))) && (((buf.b[num + 2] == 100) || (buf.b[num + 2] == 0x44)) || ((buf.b[num + 2] == 0x68) || (buf.b[num + 2] == 0x48)))) && ((buf.b[num + 3] == 0x3e) || this.IS_DELIMITER(buf.b[num + 3])))
        {
            if (this.IS_DELIMITER(buf.b[num + 3]))
            {
                while (!this.IS_XTHAN(buf.b[num + 3]) && (num < max))
                {
                    num++;
                }
            }
            num += 3;
            flag9 = true;
            goto Label_5BD8;
        }
        if ((((buf.b[num] == 60) && ((buf.b[num + 1] == 0x73) || (buf.b[num + 1] == 0x53))) && (((buf.b[num + 2] == 0x63) || (buf.b[num + 2] == 0x43)) && ((buf.b[num + 3] == 0x72) || (buf.b[num + 3] == 0x52)))) && ((((buf.b[num + 4] == 0x69) || (buf.b[num + 4] == 0x49)) && ((buf.b[num + 5] == 0x70) || (buf.b[num + 5] == 80))) && ((buf.b[num + 6] == 0x74) || (buf.b[num + 6] == 0x54))))
        {
            num4 = 0;
            while ((num4 == 0) && (num < max))
            {
                if (((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x73) || (buf.b[num + 2] == 0x53))) && (((buf.b[num + 3] == 0x63) || (buf.b[num + 3] == 0x43)) && ((buf.b[num + 4] == 0x72) || (buf.b[num + 4] == 0x52)))) && ((((buf.b[num + 5] == 0x69) || (buf.b[num + 5] == 0x49)) && ((buf.b[num + 6] == 0x70) || (buf.b[num + 6] == 80))) && (((buf.b[num + 7] == 0x74) || (buf.b[num + 7] == 0x54)) && (buf.b[num + 8] == 0x3e))))
                {
                    num4 = 1;
                }
                num++;
            }
            num += 7;
        }
        if (((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x68) || (buf.b[num + 2] == 0x48))) && (((buf.b[num + 3] == 0x65) || (buf.b[num + 3] == 0x45)) && ((buf.b[num + 4] == 0x61) || (buf.b[num + 4] == 0x41)))) && (((buf.b[num + 5] == 100) || (buf.b[num + 5] == 0x44)) && (buf.b[num + 6] == 0x3e)))
        {
            num += 6;
            flag9 = true;
            goto Label_5BD8;
        }
        num++;
                }
            }
            else if ((((buf.b[num] == 60) && ((buf.b[num + 1] == 0x73) || (buf.b[num + 1] == 0x53))) && (((buf.b[num + 2] == 0x63) || (buf.b[num + 2] == 0x43)) && ((buf.b[num + 3] == 0x72) || (buf.b[num + 3] == 0x52)))) && ((((buf.b[num + 4] == 0x69) || (buf.b[num + 4] == 0x49)) && ((buf.b[num + 5] == 0x70) || (buf.b[num + 5] == 80))) && ((buf.b[num + 6] == 0x74) || (buf.b[num + 6] == 0x54))))
            {
                num4 = 0;
                while ((num4 == 0) && (num < max))
                {
                    if (((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x73) || (buf.b[num + 2] == 0x53))) && (((buf.b[num + 3] == 0x63) || (buf.b[num + 3] == 0x43)) && ((buf.b[num + 4] == 0x72) || (buf.b[num + 4] == 0x52)))) && ((((buf.b[num + 5] == 0x69) || (buf.b[num + 5] == 0x49)) && ((buf.b[num + 6] == 0x70) || (buf.b[num + 6] == 80))) && (((buf.b[num + 7] == 0x74) || (buf.b[num + 7] == 0x54)) && (buf.b[num + 8] == 0x3e))))
                    {
                        num4 = 1;
                    }
                    num++;
                }
                num += 7;
            }
            else if ((((((buf.b[num] == 60) && (buf.b[num + 1] == 0x73)) && ((buf.b[num + 2] == 0x74) && (buf.b[num + 3] == 0x79))) && ((buf.b[num + 4] == 0x6c) && (buf.b[num + 5] == 0x65))) || ((((buf.b[num] == 60) && (buf.b[num + 1] == 0x53)) && ((buf.b[num + 2] == 0x74) && (buf.b[num + 3] == 0x79))) && ((buf.b[num + 4] == 0x6c) && (buf.b[num + 5] == 0x65)))) || ((((buf.b[num] == 60) && (buf.b[num + 1] == 0x53)) && ((buf.b[num + 2] == 0x54) && (buf.b[num + 3] == 0x59))) && ((buf.b[num + 4] == 0x4c) && (buf.b[num + 5] == 0x45))))
            {
                if (!this.CSS_read_from_tags(_params, max, buf, ref num))
                {
                    num4 = 0;
                    while ((num4 == 0) && (num < max))
                    {
                        if ((((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x73) && (buf.b[num + 3] == 0x74))) && (((buf.b[num + 4] == 0x79) && (buf.b[num + 5] == 0x6c)) && ((buf.b[num + 6] == 0x65) && (buf.b[num + 7] == 0x3e)))) || ((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x53) && (buf.b[num + 3] == 0x74))) && (((buf.b[num + 4] == 0x79) && (buf.b[num + 5] == 0x6c)) && ((buf.b[num + 6] == 0x65) && (buf.b[num + 7] == 0x3e))))) || ((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x53) && (buf.b[num + 3] == 0x54))) && (((buf.b[num + 4] == 0x59) && (buf.b[num + 5] == 0x4c)) && ((buf.b[num + 6] == 0x45) && (buf.b[num + 7] == 0x3e)))))
                        {
                            num4 = 1;
                        }
                        num++;
                    }
                    num += 7;
                }
            }
            else if ((((buf.b[num] == 60) && ((buf.b[num + 1] == 0x66) || (buf.b[num + 1] == 70))) && (((buf.b[num + 2] == 0x6f) || (buf.b[num + 2] == 0x4f)) && ((buf.b[num + 3] == 0x72) || (buf.b[num + 3] == 0x52)))) && (((buf.b[num + 4] == 0x6d) || (buf.b[num + 4] == 0x4d)) && ((buf.b[num + 5] == 0x3e) || this.IS_DELIMITER(buf.b[num + 5]))))
            {
                num += 5;
                while ((buf.b[num] != 0x3e) && (num < max))
                {
                    num++;
                }
            }
            else if (((((buf.b[num] == 60) && ((buf.b[num + 1] == 0x6f) || (buf.b[num + 1] == 0x4f))) && (((buf.b[num + 2] == 0x70) || (buf.b[num + 2] == 80)) && ((buf.b[num + 3] == 0x74) || (buf.b[num + 3] == 0x54)))) && ((((buf.b[num + 4] == 0x69) || (buf.b[num + 4] == 0x49)) && ((buf.b[num + 5] == 0x6f) || (buf.b[num + 5] == 0x4f))) && ((buf.b[num + 6] == 110) || (buf.b[num + 6] == 0x4e)))) && ((buf.b[num + 7] == 0x3e) || (buf.b[num + 7] == 0x20)))
            {
                while (num < max)
                {
                    if (((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x6f) || (buf.b[num + 2] == 0x4f))) && (((buf.b[num + 3] == 0x70) || (buf.b[num + 3] == 80)) && ((buf.b[num + 4] == 0x74) || (buf.b[num + 4] == 0x54)))) && ((((buf.b[num + 5] == 0x69) || (buf.b[num + 5] == 0x49)) && ((buf.b[num + 6] == 0x6f) || (buf.b[num + 6] == 0x4f))) && (((buf.b[num + 7] == 110) || (buf.b[num + 7] == 0x4e)) && (buf.b[num + 8] == 0x3e))))
                    {
                        num += 8;
                        goto Label_5BD8;
                    }
                    num++;
                }
            }
            else if ((((buf.b[num] == 60) && ((buf.b[num + 1] == 0x73) || (buf.b[num + 1] == 0x53))) && (((buf.b[num + 2] == 0x65) || (buf.b[num + 2] == 0x45)) && ((buf.b[num + 3] == 0x6c) || (buf.b[num + 3] == 0x4c)))) && ((((buf.b[num + 4] == 0x65) || (buf.b[num + 4] == 0x45)) && ((buf.b[num + 5] == 0x63) || (buf.b[num + 5] == 0x43))) && (((buf.b[num + 6] == 0x74) || (buf.b[num + 6] == 0x54)) && ((buf.b[num + 7] == 0x3e) || this.IS_DELIMITER(buf.b[num + 7])))))
            {
                num += 7;
                while (num < max)
                {
                    if (((((buf.b[num] == 60) && (buf.b[num + 1] == 0x2f)) && ((buf.b[num + 2] == 0x73) || (buf.b[num + 2] == 0x53))) && (((buf.b[num + 3] == 0x65) || (buf.b[num + 3] == 0x45)) && ((buf.b[num + 4] == 0x6c) || (buf.b[num + 4] == 0x4c)))) && ((((buf.b[num + 5] == 0x65) || (buf.b[num + 5] == 0x45)) && ((buf.b[num + 6] == 0x63) || (buf.b[num + 6] == 0x43))) && (((buf.b[num + 7] == 0x74) || (buf.b[num + 7] == 0x54)) && (buf.b[num + 8] == 0x3e))))
                    {
                        num += 8;
                        goto Label_5BD8;
                    }
                    num++;
                }
            }
            else if ((buf.b[num] == 60) && (buf.b[num + 1] == 0x25))
            {
                while (num < max)
                {
                    if ((buf.b[num - 1] == 0x25) && (buf.b[num] == 0x3e))
                    {
                        goto Label_5BD8;
                    }
                    num++;
                }
            }
            else if (((buf.b[num] == 60) && (buf.b[num + 1] == 0x21)) && ((buf.b[num + 2] == 0x2d) && (buf.b[num + 3] == 0x2d)))
            {
                num += 3;
                num7 = 1;
                while ((num7 > 0) && (num < max))
                {
                    if (((buf.b[num] == 0x2d) && (buf.b[num + 1] == 0x2d)) && (buf.b[num + 2] == 0x3e))
                    {
                        num7--;
                        num++;
                    }
                    if (((buf.b[num] == 60) && (buf.b[num + 1] == 0x21)) && ((buf.b[num + 2] == 0x2d) && (buf.b[num + 3] == 0x2d)))
                    {
                        num7++;
                        num += 3;
                    }
                    num++;
                }
            }
            else if (((class4.len <= 1) || (buf.b[num] != 13)) || (class4.b[class4.len - 1] != 13))
            {
                class4.Add(buf.b[num]);
                num10++;
            }
    Label_5BD8:
        num++;
                }
                max = num10;
                for (num = 0; num < num10; num++)
                {
                    if (((((this._preserveFontFace == 1) && ((class4.b[num] == 0x66) || (class4.b[num] == 70))) && (((class4.b[num + 1] == 0x6f) || (class4.b[num + 1] == 0x4f)) && ((class4.b[num + 2] == 110) || (class4.b[num + 2] == 0x4e)))) && ((((class4.b[num + 3] == 0x74) || (class4.b[num + 3] == 0x54)) && (class4.b[num + 4] == 0x2d)) && (((class4.b[num + 5] == 0x66) || (class4.b[num + 5] == 70)) && ((class4.b[num + 6] == 0x61) || (class4.b[num + 6] == 0x41))))) && (((((class4.b[num + 7] == 0x6d) || (class4.b[num + 7] == 0x4d)) && ((class4.b[num + 8] == 0x69) || (class4.b[num + 8] == 0x49))) && (((class4.b[num + 9] == 0x6c) || (class4.b[num + 9] == 0x4c)) && ((class4.b[num + 10] == 0x79) || (class4.b[num + 10] == 0x59)))) && (class4.b[num + 11] == 0x3a)))
                    {
                        num += 12;
                        class8.Clear();
                        this.read_value_CSS(class4, ref num, num10, class8, -1111, true);
                        if (class8.len != 0)
                        {
                            num7 = 0;
                            flag = false;
                            while ((num7 < num13) && (num7 < this.MAX_FONTS))
                            {
                                if (class8.byteCmpi(list[num7].ToString()) == 0)
                                {
                                    flag = true;
                                }
                                num7++;
                            }
                            if (!flag)
                            {
                                list.Add(class8.ByteToString());
                                num13++;
                            }
                        }
                    }
                    else
                    {
                        if (((((this._preserveFontColor == 1) || (this._preserveBackgroundColor == 1)) && ((class4.b[num] == 0x63) || (class4.b[num] == 0x43))) && (((class4.b[num + 1] == 0x6f) || (class4.b[num + 1] == 0x4f)) && ((class4.b[num + 2] == 0x6c) || (class4.b[num + 2] == 0x4c)))) && ((((class4.b[num + 3] == 0x6f) || (class4.b[num + 3] == 0x4f)) && ((class4.b[num + 4] == 0x72) || (class4.b[num + 4] == 0x52))) && (class4.b[num + 5] == 0x3a)))
                        {
                            num += 6;
                            this.read_color(class4, ref num, max, class10);
                            num7 = 0;
                            flag2 = false;
                            while ((num7 < num14) && (num7 < this.MAX_COLORS))
                            {
                                if (class10.byteCmpi(list2[num7].ToString()) == 0)
                                {
                                    flag2 = true;
                                }
                                num7++;
                            }
                            if (!flag2)
                            {
                                list2.Add(class10.ByteToString());
                                num14++;
                                class10.Clear();
                            }
                        }
                        if ((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x66) || (class4.b[num + 1] == 70))) && (((class4.b[num + 2] == 0x6f) || (class4.b[num + 2] == 0x4f)) && ((class4.b[num + 3] == 110) || (class4.b[num + 3] == 0x4e)))) && (((class4.b[num + 4] == 0x74) || (class4.b[num + 4] == 0x54)) && this.IS_DELIMITER(class4.b[num + 5])))
                        {
                            while ((class4.b[num + 5] != 0x3e) && (num < num10))
                            {
                                if ((((this._preserveFontColor != 1) || ((class4.b[num] != 0x66) && (class4.b[num] != 70))) || (((class4.b[num + 1] != 0x61) && (class4.b[num + 1] != 0x41)) || ((class4.b[num + 2] != 0x63) && (class4.b[num + 2] != 0x43)))) || (((class4.b[num + 3] != 0x65) && (class4.b[num + 3] != 0x45)) || (class4.b[num + 4] != 0x3d)))
                                {
                                    goto Label_61CA;
                                }
                                num7 = 0;
                                class8.Clear();
                                if ((class4.b[num + 5] != 0x22) && (class4.b[num + 5] != 0x27))
                                {
                                    goto Label_6145;
                                }
                                while ((((class4.b[num + 6] != 0x3e) && (class4.b[num + 6] != 0x22)) && (class4.b[num + 6] != 0x27)) && (class4.b[num + 6] != 0x2c))
                                {
                                    class8.Add(class4.b[num + 6]);
                                    num++;
                                }
                                goto Label_6179;
                            Label_612C:
                                class8.Add(class4.b[num + 5]);
                            num++;
                        Label_6145:
                            if (((class4.b[num + 5] != 0x3e) && !this.IS_DELIMITER(class4.b[num + 5])) && (class4.b[num + 6] != 0x2c))
                            {
                                goto Label_612C;
                            }
                    Label_6179:
                        num7 = 0;
                    flag = false;
                    while ((num7 < num13) && (num7 < this.MAX_FONTS))
                    {
                        if (class8.byteCmpi(list[num7].ToString()) == 0)
                        {
                            flag = true;
                        }
                        num7++;
                    }
                    if (!flag)
                    {
                        list.Add(class8.ByteToString());
                        num13++;
                    }
                Label_61CA:
                    if (((((this._preserveFontColor == 1) || (this._preserveBackgroundColor == 1)) && ((class4.b[num] == 0x63) || (class4.b[num] == 0x43))) && (((class4.b[num + 1] == 0x6f) || (class4.b[num + 1] == 0x4f)) && ((class4.b[num + 2] == 0x6c) || (class4.b[num + 2] == 0x4c)))) && ((((class4.b[num + 3] == 0x6f) || (class4.b[num + 3] == 0x4f)) && ((class4.b[num + 4] == 0x72) || (class4.b[num + 4] == 0x52))) && ((class4.b[num + 5] == 0x3d) || (class4.b[num + 5] == 0x3a))))
                    {
                        num += 6;
                        this.read_color(class4, ref num, max, class10);
                        num7 = 0;
                        flag2 = false;
                        while ((num7 < num14) && (num7 < this.MAX_COLORS))
                        {
                            if (class10.byteCmpi(list2[num7].ToString()) == 0)
                            {
                                flag2 = true;
                            }
                            num7++;
                        }
                        if (!flag2)
                        {
                            list2.Add(class10.ByteToString());
                            num14++;
                            class10.Clear();
                        }
                    }
                num++;
                            }
                        }
                        else if (((((this._preserveBackgroundColor == 1) && ((class4.b[num] == 0x62) || (class4.b[num] == 0x42))) && (((class4.b[num + 1] == 0x67) || (class4.b[num + 1] == 0x47)) && ((class4.b[num + 2] == 0x63) || (class4.b[num + 2] == 0x43)))) && ((((class4.b[num + 3] == 0x6f) || (class4.b[num + 3] == 0x4f)) && ((class4.b[num + 4] == 0x6c) || (class4.b[num + 4] == 0x4c))) && (((class4.b[num + 5] == 0x6f) || (class4.b[num + 5] == 0x4f)) && ((class4.b[num + 6] == 0x72) || (class4.b[num + 6] == 0x52))))) && ((class4.b[num + 7] == 0x3d) || (class4.b[num + 7] == 0x3a)))
                        {
                            num += 8;
                            this.read_color(class4, ref num, max, class10);
                            num7 = 0;
                            flag2 = false;
                            while ((num7 < num14) && (num7 < this.MAX_COLORS))
                            {
                                if (class10.byteCmpi(list2[num7].ToString()) == 0)
                                {
                                    flag2 = true;
                                }
                                num7++;
                            }
                            if (!flag2)
                            {
                                list2.Add(class10.ByteToString());
                                num14++;
                                class10.Clear();
                            }
                        }
                    }
                }
                if (_params.use)
                {
                    _params.font_list_num = num13;
                    _params.color_list_num = num14;
                    this.CSS_analyse(_params, _params.buf, list, list2);
                    num13 = _params.font_list_num;
                    num14 = _params.color_list_num;
                }
                else
                {
                    _params.font_list_num = num13;
                    _params.color_list_num = num14;
                }
                if ((_params.body_tag && (((CSS_styles)_params.CSS_style[_params.body_tag_index]).ablaze.b[0] == 1)) && (this._preserveFontFace == 1))
                {
                    class6.Clear();
                    class6.Add((string)list[((CSS_styles)_params.CSS_style[_params.body_tag_index]).font_family]);
                }
                buf.Clear();
                num11 = 0;
                if (this._rtfParts == eRtfParts.RtfCompletely)
                {
                    if (!hieroglyph)
                    {
                        class16.Clear();
                        objArray = new object[] { @"{\rtf1\ansi\ansicpg", num44, @"\deff0\deflang", lang, @"\fs", (fontsize * 2).ToString(), @"{\fonttbl{\f0\", class31.ByteToString(), @"\fprq2\fcharset", charset, " ", class6.ByteToString(), ";}", this.LF };
                        class16.Add(string.Concat(objArray));
                    }
                    else
                    {
                        class16.Clear();
                        objArray = new object[] { @"{\rtf1\ansi\ansicpg", num44, @"\deff0\deflang", lang, @"\fs", (fontsize * 2).ToString(), @"{\fonttbl{\f0\", class31.ByteToString(), @"\fprq2\fcharset", charset, " ", class6.ByteToString(), " Unicode MS;}", this.LF };
                        class16.Add(string.Concat(objArray));
                    }
                    buf.Add(class16);
                    num11 += class16.len;
                }
                else
                {
                    buf.Add("{");
                    num11++;
                }
                if (this._rtfParts == eRtfParts.RtfCompletely)
                {
                    for (num7 = 0; num7 < num13; num7++)
                    {
                        class16.Clear();
                        class16.Add(string.Concat(new object[] { @"{\f", num7 + 2, @"\fnil\fcharset", charset, " ", list[num7].ToString(), ";}", this.LF }));
                        buf.Add(class16);
                        num11 += class16.len;
                    }
                    class16.Clear();
                    class16.Add(@"{\f99\froman\fcharset0\fprq2{\*\panose 02020603050405020304}" + class6.ByteToString() + ";}");
                    class16.Add(@"{\f100\fnil\fcharset2 Symbol;}{\f101\fnil\fcharset2 Wingdings;}{\f102\fcharset204{\*\fname Courier New;}Courier New CYR;}{\f103\fcharset0 " + class6.ByteToString() + ";}}");
                    class16.Add(this.LF + @"{\colortbl ;\red0\green0\blue0;\red51\green102\blue255;");
                    buf.Add(class16);
                    num11 += class16.len;
                    for (num7 = 0; num7 < list2.Count; num7++)
                    {
                        class10.Clear();
                        str8 = list2[num7].ToString();
                        class10.Add((byte)str8[0]);
                        class10.Add((byte)str8[1]);
                        numArray[0] = this.hex_to_dec(class10);
                        class10.Clear();
                        class10.Add((byte)str8[2]);
                        class10.Add((byte)str8[3]);
                        numArray[1] = this.hex_to_dec(class10);
                        class10.Clear();
                        class10.Add((byte)str8[4]);
                        class10.Add((byte)str8[5]);
                        numArray[2] = this.hex_to_dec(class10);
                        class10.Clear();
                        class16.Clear();
                        class16.Add(@"\red" + numArray[0].ToString() + @"\green" + numArray[1].ToString() + @"\blue" + numArray[2].ToString() + ";");
                        buf.Add(class16);
                        num11 += class16.len;
                    }
                    buf.Add("}" + this.LF);
                    num11 += 2;
                }
                if (this._pageOrientation == ePageOrientation.Portrait)
                {
                    class16.Clear();
                    class16.Add(string.Concat(new object[] { @"\paperw", this.page_width, @"\paperh", this.page_height, @"\margl", this.margl, @"\margr", this.margr, @"\margt", this.margt, @"\margb", this.margb, "" }));
                    this.TBLEN = this.TBLEN = (this.page_width - this.margl) - this.margr;
                    if (this.TBLEN < 0x3e8)
                    {
                        this.TBLEN = 0x251c;
                    }
                }
                else
                {
                    class16.Clear();
                    class16.Add(string.Concat(new object[] { @"\paperh", this.page_width, @"\paperw", this.page_height, @"\landscape\margl", this.margl, @"\margr", this.margr, @"\margt", this.margt, @"\margb", this.margb }));
                    this.TBLEN = (this.page_height - this.margl) - this.margr;
                    if (this.TBLEN < 0x3e8)
                    {
                        this.TBLEN = 0x251c;
                    }
                }
                if (this._rtfParts == eRtfParts.RtfCompletely)
                {
                    buf.Add(class16);
                    num11 += class16.len;
                }
                if (_params.body_tag)
                {
                    if ((((CSS_styles)_params.CSS_style[_params.body_tag_index]).ablaze.b[0] == 1) && (this._preserveFontFace == 1))
                    {
                        class16.Clear();
                        class16.Add(this.LF + @"\f" + ((((CSS_styles)_params.CSS_style[_params.body_tag_index]).font_family + 2)).ToString() + " ");
                        buf.Add(class16);
                        num11 += class16.len;
                    }
                    if ((((CSS_styles)_params.CSS_style[_params.body_tag_index]).ablaze.b[1] == 1) && (this._preserveFontColor == 1))
                    {
                        class16.Clear();
                        class16.Add(this.LF + @"\cf" + ((((CSS_styles)_params.CSS_style[_params.body_tag_index]).color + 3)).ToString() + " ");
                        buf.Add(class16);
                        num11 += class16.len;
                    }
                    if ((((CSS_styles)_params.CSS_style[_params.body_tag_index]).ablaze.b[3] == 1) && (this._preserveFontSize == 1))
                    {
                        fontsize = ((CSS_styles)_params.CSS_style[_params.body_tag_index]).font_size / 2;
                        if ((fontsize <= 0) || (fontsize > this.FONT_SIZE_MAX))
                        {
                            fontsize = 12;
                        }
                        else
                        {
                            str19 = (fontsize * 2).ToString();
                            strArray = new string[] { this.LF, @"\par\pard\sb", num25.ToString(), @"\sa", num26.ToString(), @"\sbauto1\saauto1\fs", (fontsize * 2).ToString(), @"\lang", lang.ToString(), " " };
                            str14 = string.Concat(strArray);
                            strArray = new string[10];
                            strArray[0] = this.LF;
                            strArray[1] = @"\par\pard\intbl\sb";
                            strArray[2] = num25.ToString();
                            strArray[3] = @"\sa";
                            strArray[4] = num26.ToString();
                            strArray[5] = @"\sbauto1\saauto1\fs";
                            strArray[6] = (fontsize * 2).ToString();
                            strArray[7] = @"\lang";
                            strArray[8] = lang.ToString();
                            strArray[9] = " ";
                            str15 = string.Concat(strArray);
                            strArray = new string[8];
                            strArray[0] = this.LF;
                            strArray[1] = @"\pard\intbl\sb";
                            strArray[2] = num25.ToString();
                            strArray[3] = @"\fs";
                            strArray[4] = (fontsize * 2).ToString();
                            strArray[5] = @"\lang";
                            strArray[6] = lang.ToString();
                            strArray[7] = " ";
                            str16 = string.Concat(strArray);
                            str17 = this.LF + @"\sb0\sa0\par ";
                            str18 = this.LF + @"\sb0\sa0\par\intbl\lang" + lang.ToString() + " ";
                            str20 = this.LF + @"{\par\b\fs" + str19 + " ";
                            str21 = this.LF + @"{\b\fs" + str19 + " ";
                            length = str20.Length;
                            num51 = str21.Length;
                            str19 = (fontsize / 2).ToString();
                            str22 = @"{\sub\dn" + str19 + " ";
                            num53 = str22.Length;
                            str19 = (fontsize / 2).ToString();
                            str23 = @"{\super\up" + str19 + " ";
                            num54 = str23.Length;
                        }
                    }
                }
                if (this._rtfParts == eRtfParts.RtfCompletely)
                {
                    if (this._pageNumbers == ePageNumbers.PageNumSecond)
                    {
                        class16.Clear();
                        class16.Add(this.LF + @"\titlepg ");
                        buf.Add(class16);
                        num11 += class16.len;
                    }
                    if (this._pageHeader.Length > 0)
                    {
                        class16.Clear();
                        class16.Add(this.LF + @"{\header\pard\plain " + this._pageHeader + @" \par}");
                        buf.Add(class16);
                        num11 += class16.len;
                    }
                    if (((this._pageFooter.Length > 0) || (this._pageNumbers == ePageNumbers.PageNumFirst)) || (this._pageNumbers == ePageNumbers.PageNumSecond))
                    {
                        class16.Clear();
                        if ((this._pageNumbers == ePageNumbers.PageNumFirst) || (this._pageNumbers == ePageNumbers.PageNumSecond))
                        {
                            if (this._pageOrientation == ePageOrientation.Landscape)
                            {
                                num39 = this.page_height;
                                num40 = this.page_width;
                            }
                            else
                            {
                                num39 = this.page_width;
                                num40 = this.page_height;
                            }
                            if (this._pageNumbersAlignH == ePageAlignment.AlignCenter)
                            {
                                num8 = num39 / 2;
                            }
                            else if (this._pageNumbersAlignH == ePageAlignment.AlignRight)
                            {
                                num8 = num39 - this.margr;
                            }
                            else
                            {
                                num8 = 0;
                            }
                            if (num8 > num39)
                            {
                                num8 = 0;
                            }
                            if (this._pageNumbersAlignV == ePageAlignment.AlignTop)
                            {
                                num9 = -(this.margt / 2);
                            }
                            else
                            {
                                num9 = num40 - 950;
                            }
                            if (num9 > num40)
                            {
                                num9 = 0;
                            }
                            class16.Clear();
                            str19 = (fontsize * 2).ToString();
                            class17.Add(string.Concat(new object[] { @" \pvpg\phpg\posx", num8, @"\posy", num9, @"{\field{\*\fldinst {\fs", str19, @" PAGE}}}\par", this.LF }));
                        }
                        class16.Clear();
                        class16.Add(this.LF + @"{\footer" + class17.ByteToString() + @"\pard\plain " + this._pageFooter + @" \par}");
                        buf.Add(class16);
                        num11 += class16.len;
                    }
                    class16.Clear();
                    str19 = (fontsize * 2).ToString();
                    objArray = new object[] { this.LF, @"\pard\sb", num25, @"\sa", num26, @"\sbauto1\saauto1\fs", (fontsize * 2).ToString(), @"\lang", lang, this.LF };
                    class16.Add(string.Concat(objArray));
                    buf.Add(class16);
                    num11 += class16.len;
                }
                numArray3[0] = fontsize;
                num = 0;
                num4 = 1;
                num12 = buf.len;
                num5 = 1;
                while (num < num10)
                {
                    string str11;
                    if ((((class4.len > 0) && (num > 0)) && ((class4.b[num - 1] == 0x3e) && (class4.b[num] != 60))) && (class4.b[num] != 10))
                    {
                        num4 = 1;
                    }
                    if ((((!flag14 && (class4.b[num] == 60)) && ((class4.b[num + 1] == 0x68) || (class4.b[num + 1] == 0x48))) && (((class4.b[num + 2] == 0x74) || (class4.b[num + 2] == 0x54)) && ((class4.b[num + 3] == 0x6d) || (class4.b[num + 3] == 0x4d)))) && (((class4.b[num + 4] == 0x6c) || (class4.b[num + 4] == 0x4c)) && ((class4.b[num + 5] == 0x3e) || this.IS_DELIMITER(class4.b[num + 5]))))
                    {
                        num += 5;
                        while ((class4.b[num] != 0x3e) && (num < max))
                        {
                            num++;
                        }
                        buf.len = num12;
                        flag14 = true;
                        goto Label_134B7;
                    }
                    if ((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x62) || (class4.b[num + 1] == 0x42))) && (((class4.b[num + 2] == 0x6f) || (class4.b[num + 2] == 0x4f)) && ((class4.b[num + 3] == 100) || (class4.b[num + 3] == 0x44)))) && (((class4.b[num + 4] == 0x79) || (class4.b[num + 4] == 0x59)) && ((class4.b[num + 5] == 0x3e) || this.IS_DELIMITER(class4.b[num + 5]))))
                    {
                        if (this.IS_DELIMITER(class4.b[num + 5]))
                        {
                            while ((class4.b[num + 5] != 0x3e) && (num < max))
                            {
                                num++;
                            }
                        }
                        num += 5;
                        buf.len = num12;
                        goto Label_134B7;
                    }
                    if (((num == 0) && (class4.b[num] == 0xef)) && ((class4.b[num + 1] == 0xbb) && (class4.b[num + 2] == 0xbf)))
                    {
                        num += 2;
                        goto Label_134B7;
                    }
                    if ((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x70) || (class4.b[num + 2] == 80))) && (class4.b[num + 3] == 0x3e))
                    {
                        if (flag12)
                        {
                            if (num34 < 2)
                            {
                                num34++;
                            }
                            else
                            {
                                num34 = 1;
                                num5 = 0;
                            }
                        }
                        if (_tablesArray[num36].table)
                        {
                            buf.Add(str15);
                            num5 = 1;
                            if ((num36 > 0) && (this._preserveNestedTables == 1))
                            {
                                str11 = @"\itap" + _tablesArray[num36].table_level + " ";
                                buf.Add(str11);
                                num11 += str11.Length;
                            }
                        }
                        else
                        {
                            buf.Add(str14);
                            num5 = 1;
                        }
                        num += 3;
                        if (!flag3)
                        {
                            buf.Add(class8);
                            num11 += class8.len;
                        }
                        if (!flag5)
                        {
                            buf.Add(newb);
                            num11 += newb.len;
                        }
                        this.CSS_close(class22, class18, align, buf, ref num11, _params, ref flag4, class10, class14, ref num21, ref flag16, ref flag5, newb, fontsize, CSS_tag_type.P_CSS);
                        goto Label_134B7;
                    }
                    if (((class4.b[num] == 60) && ((class4.b[num + 1] == 0x70) || (class4.b[num + 1] == 80))) && ((class4.b[num + 2] == 0x3e) || (class4.b[num + 2] == 0x20)))
                    {
                        if (flag12)
                        {
                            if (num34 < 2)
                            {
                                num34++;
                                num5 = 1;
                            }
                            else
                            {
                                num34 = 1;
                                num5 = 0;
                            }
                        }
                        if (buf.len < (num12 + 2))
                        {
                            num5 = 1;
                        }
                        if (num5 == 0)
                        {
                            if (_tablesArray[num36].table)
                            {
                                if (flag21)
                                {
                                    buf.Add(str15);
                                }
                                else
                                {
                                    buf.Add(str16);
                                }
                                if ((num36 > 0) && (this._preserveNestedTables == 1))
                                {
                                    str11 = @"\itap" + _tablesArray[num36].table_level + " ";
                                    buf.Add(str11);
                                    num11 += str11.Length;
                                }
                            }
                            else
                            {
                                buf.Add(str14);
                            }
                            num5 = 1;
                        }
                        if (!flag3)
                        {
                            buf.Add(class8);
                            num11 += class8.len;
                        }
                        if (!flag5)
                        {
                            buf.Add(newb);
                            num11 += newb.len;
                        }
                        this.CSS_insert(class22, class18, class19, class20, class21, align, class4, ref num, buf, ref num11, max, _params, ref flag4, class10, class14, ref num21, ref flag16, ref flag5, newb, list, list2, CSS_tag_type.P_CSS);
                        goto Label_134B7;
                    }
                    if (((class4.b[num] == 60) && (class4.b[num + 1] == 0x21)) && ((class4.b[num + 2] == 0x2d) && (class4.b[num + 3] == 0x2d)))
                    {
                        num += 3;
                        while (num < max)
                        {
                            if (((class4.b[num] == 0x2d) && (class4.b[num + 1] == 0x2d)) && (class4.b[num + 2] == 0x3e))
                            {
                                break;
                            }
                            if (((class4.b[num] == 60) && (class4.b[num + 1] == 0x21)) && ((class4.b[num + 2] == 0x2d) && (class4.b[num + 3] == 0x2d)))
                            {
                                num += 3;
                                while (num < max)
                                {
                                    if (((class4.b[num] == 0x2d) && (class4.b[num + 1] == 0x2d)) && (class4.b[num + 2] == 0x3e))
                                    {
                                        num += 2;
                                        break;
                                    }
                                    num++;
                                }
                            }
                            num++;
                        }
                        num += 2;
                        goto Label_134B7;
                    }
                    if ((((((num5 == 0) && (class4.b[num] == 60)) && ((class4.b[num + 1] == 0x61) || (class4.b[num + 1] == 0x41))) && (((class4.b[num + 2] == 100) || (class4.b[num + 2] == 0x44)) && ((class4.b[num + 3] == 100) || (class4.b[num + 3] == 0x44)))) && ((((class4.b[num + 4] == 0x72) || (class4.b[num + 4] == 0x52)) && ((class4.b[num + 5] == 0x65) || (class4.b[num + 5] == 0x45))) && (((class4.b[num + 6] == 0x73) || (class4.b[num + 6] == 0x53)) && ((class4.b[num + 7] == 0x73) || (class4.b[num + 7] == 0x53))))) && (class4.b[num + 8] == 0x3e))
                    {
                        if (_tablesArray[num36].table)
                        {
                            buf.Add(str15);
                            if ((num36 > 0) && (this._preserveNestedTables == 1))
                            {
                                str11 = @"\itap" + _tablesArray[num36].table_level + " ";
                                buf.Add(str11);
                                num11 += str11.Length;
                            }
                        }
                        else
                        {
                            buf.Add(str14);
                        }
                        num5 = 1;
                        num += 8;
                        if (!flag3)
                        {
                            buf.Add(class8);
                            num11 += class8.len;
                        }
                        if (!flag5)
                        {
                            buf.Add(newb);
                            num11 += newb.len;
                        }
                        goto Label_134B7;
                    }
                    if ((((((num5 == 0) && (class4.b[num] == 60)) && (class4.b[num + 1] == 0x2f)) && (((class4.b[num + 2] == 0x61) || (class4.b[num + 2] == 0x41)) && ((class4.b[num + 3] == 100) || (class4.b[num + 3] == 0x44)))) && ((((class4.b[num + 4] == 100) || (class4.b[num + 4] == 0x44)) && ((class4.b[num + 5] == 0x72) || (class4.b[num + 5] == 0x52))) && (((class4.b[num + 6] == 0x65) || (class4.b[num + 6] == 0x45)) && ((class4.b[num + 7] == 0x73) || (class4.b[num + 7] == 0x53))))) && (((class4.b[num + 8] == 0x73) || (class4.b[num + 8] == 0x53)) && (class4.b[num + 9] == 0x3e)))
                    {
                        if (_tablesArray[num36].table)
                        {
                            buf.Add(str15);
                            if ((num36 > 0) && (this._preserveNestedTables == 1))
                            {
                                str11 = @"\itap" + _tablesArray[num36].table_level + " ";
                                buf.Add(str11);
                                num11 += str11.Length;
                            }
                        }
                        else
                        {
                            buf.Add(str14);
                        }
                        num5 = 1;
                        num += 9;
                        if (!flag3)
                        {
                            buf.Add(class8);
                            num11 += class8.len;
                        }
                        if (!flag5)
                        {
                            buf.Add(newb);
                            num11 += newb.len;
                        }
                        goto Label_134B7;
                    }
                    if ((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x66) || (class4.b[num + 1] == 70))) && (((class4.b[num + 2] == 0x6f) || (class4.b[num + 2] == 0x4f)) && ((class4.b[num + 3] == 110) || (class4.b[num + 3] == 0x4e)))) && (((class4.b[num + 4] == 0x74) || (class4.b[num + 4] == 0x54)) && ((class4.b[num + 5] == 0x3e) || this.IS_DELIMITER(class4.b[num + 5]))))
                    {
                        index = num + 5;
                        flag6 = false;
                        flag7 = false;
                        if (this.IS_DELIMITER(class4.b[num + 5]))
                        {
                            while ((class4.b[num] != 0x3e) && (num < max))
                            {
                                if ((((this._preserveFontFace == 1) && ((class4.b[num] == 0x66) || (class4.b[num] == 70))) && (((class4.b[num + 1] == 0x61) || (class4.b[num + 1] == 0x41)) && ((class4.b[num + 2] == 0x63) || (class4.b[num + 2] == 0x43)))) && (((class4.b[num + 3] == 0x65) || (class4.b[num + 3] == 0x45)) && (((class4.b[num + 4] == 0x3d) || (class4.b[num + 4] == 0x3a)) || (class4.b[num + 4] == 0x20))))
                                {
                                    num7 = 0;
                                    class8.Clear();
                                    if (!flag3 && (num20 < this.STK_MAX))
                                    {
                                        class13.Add((byte)this.ToInt(class8));
                                        num20++;
                                    }
                                    num += 5;
                                    this.ReadValue(class4, ref num, class8);
                                    for (num7 = 0; num7 < num13; num7++)
                                    {
                                        if (class8.byteCmpi(list[num7].ToString()) == 0)
                                        {
                                            flag3 = false;
                                            class8.Clear();
                                            class8.Add(@"\f" + ((num7 + 2)).ToString() + " ");
                                            flag16 = true;
                                        }
                                    }
                                }
                                if ((((this._preserveFontSize == 1) && ((class4.b[num] == 0x73) || (class4.b[num] == 0x53))) && (((class4.b[num + 1] == 0x69) || (class4.b[num + 1] == 0x49)) && ((class4.b[num + 2] == 0x7a) || (class4.b[num + 2] == 90)))) && (((class4.b[num + 3] == 0x65) || (class4.b[num + 3] == 0x45)) && (((class4.b[num + 4] == 0x3d) || (class4.b[num + 4] == 0x3a)) || (class4.b[num + 4] == 0x20))))
                                {
                                    num += 5;
                                    this.read_value_CSS_tolower(class4, ref num, max, newb, this.MAX_STYLE_NAME_LENGTH);
                                    num18 = newb.ByteToInt();
                                    num15 = num18;
                                    if (newb.IndexOf("px") != -1)
                                    {
                                        num18 = (int)(num18 * 0.75);
                                    }
                                    else if (newb.IndexOf("em") != -1)
                                    {
                                        num18 *= 12;
                                    }
                                    else if (newb.IndexOf("pt") != -1)
                                    {
                                        num18 = num18;
                                    }
                                    else if (newb.IndexOf("xx-small") != -1)
                                    {
                                        num18 = 8;
                                    }
                                    else if (newb.IndexOf("x-small") != -1)
                                    {
                                        num18 = 10;
                                    }
                                    else if (newb.IndexOf("small") != -1)
                                    {
                                        num18 = 12;
                                    }
                                    else if (newb.IndexOf("medium") != -1)
                                    {
                                        num18 = 14;
                                    }
                                    else if (newb.IndexOf("large") != -1)
                                    {
                                        num18 = 0x12;
                                    }
                                    else if (newb.IndexOf("x-large") != -1)
                                    {
                                        num18 = 0x18;
                                    }
                                    else if (newb.IndexOf("xx-large") != -1)
                                    {
                                        num18 = 0x24;
                                    }
                                    else if (newb.IndexOf("%") != -1)
                                    {
                                        num18 = (num15 * 12) / 100;
                                    }
                                    else
                                    {
                                        if (newb.b[0] == 0x2b)
                                        {
                                            num15 += num16;
                                            if (num15 < 0)
                                            {
                                                num15 = 0;
                                            }
                                            if (num15 > 7)
                                            {
                                                num15 = 7;
                                            }
                                        }
                                        if (newb.b[0] == 0x2d)
                                        {
                                            num15 = num16 - Math.Abs(num15);
                                            if (num15 < 0)
                                            {
                                                num15 = 0;
                                            }
                                            if (num15 > 7)
                                            {
                                                num15 = 7;
                                            }
                                        }
                                        if ((num15 >= 0) && (num15 <= 7))
                                        {
                                            num18 = numArray2[num15];
                                        }
                                    }
                                    flag5 = false;
                                    newb.Clear();
                                    newb.Add(@"\fs" + ((2 * num18)).ToString() + " ");
                                    if (num22 < this.STK_MAX)
                                    {
                                        numArray3[num22] = num18;
                                    }
                                    flag16 = true;
                                    flag7 = true;
                                    num--;
                                }
                                if ((((((this._preserveBackgroundColor == 1) && ((class4.b[num] == 0x62) || (class4.b[num] == 0x42))) && (((class4.b[num + 1] == 0x61) || (class4.b[num + 1] == 0x41)) && ((class4.b[num + 2] == 0x63) || (class4.b[num + 2] == 0x43)))) && ((((class4.b[num + 3] == 0x6b) || (class4.b[num + 3] == 0x4b)) && ((class4.b[num + 4] == 0x67) || (class4.b[num + 4] == 0x47))) && (((class4.b[num + 5] == 0x72) || (class4.b[num + 5] == 0x52)) && ((class4.b[num + 6] == 0x6f) || (class4.b[num + 6] == 0x4f))))) && (((((class4.b[num + 7] == 0x75) || (class4.b[num + 7] == 0x55)) && ((class4.b[num + 8] == 110) || (class4.b[num + 8] == 0x4e))) && (((class4.b[num + 9] == 100) || (class4.b[num + 9] == 0x44)) && (class4.b[num + 10] == 0x2d))) && ((((class4.b[num + 11] == 0x63) || (class4.b[num + 11] == 0x43)) && ((class4.b[num + 12] == 0x6f) || (class4.b[num + 12] == 0x4f))) && (((class4.b[num + 13] == 0x6c) || (class4.b[num + 13] == 0x4c)) && ((class4.b[num + 14] == 0x6f) || (class4.b[num + 14] == 0x4f)))))) && (((class4.b[num + 15] == 0x72) || (class4.b[num + 15] == 0x52)) && (class4.b[num + 0x10] == 0x3a)))
                                {
                                    num += 0x11;
                                    this.read_color(class4, ref num, max, class12);
                                    for (num7 = 0; num7 < num14; num7++)
                                    {
                                        if (class12.byteCmpi(list2[num7].ToString()) == 0)
                                        {
                                            class12.Clear();
                                            class12.Add(@"\chcbpat" + ((num7 + 3)).ToString() + " ");
                                            buf.Add(class12);
                                            num11 += class12.len;
                                            num19 = 1;
                                        }
                                    }
                                }
                                if ((((this._preserveFontColor == 1) && ((class4.b[num] == 0x63) || (class4.b[num] == 0x43))) && (((class4.b[num + 1] == 0x6f) || (class4.b[num + 1] == 0x4f)) && ((class4.b[num + 2] == 0x6c) || (class4.b[num + 2] == 0x4c)))) && ((((class4.b[num + 3] == 0x6f) || (class4.b[num + 3] == 0x4f)) && ((class4.b[num + 4] == 0x72) || (class4.b[num + 4] == 0x52))) && (class4.b[num + 5] == 0x3d)))
                                {
                                    num += 6;
                                    this.ToInt(class10);
                                    this.read_color(class4, ref num, max, class10);
                                    for (num7 = 0; num7 < num14; num7++)
                                    {
                                        if (class10.byteCmpi(list2[num7].ToString()) == 0)
                                        {
                                            class10.Clear();
                                            class10.Add(@"\cf" + ((num7 + 3)).ToString() + " ");
                                            flag16 = true;
                                            if (num21 < this.STK_MAX)
                                            {
                                                class14.b[num21] = (byte)(num7 + 3);
                                            }
                                            flag4 = false;
                                            flag6 = true;
                                            break;
                                        }
                                    }
                                }
                                num++;
                            }
                        }
                        else
                        {
                            num += 5;
                        }
                        if (!flag3)
                        {
                            buf.Add(class8);
                            num11 += class8.len;
                        }
                        if (!flag4)
                        {
                            buf.Add(class10);
                            num11 += class10.len;
                            if (!flag6 && (num21 < this.STK_MAX))
                            {
                                class14.b[num21] = class14.b[num21 - 1];
                            }
                            num21++;
                        }
                        else
                        {
                            class14.Add((byte)1);
                            num21++;
                            flag4 = false;
                        }
                        if (!flag5)
                        {
                            buf.Add(newb);
                            num11 += newb.len;
                            if (!flag7 && (num22 < this.STK_MAX))
                            {
                                numArray3[num22] = numArray3[num22 - 1];
                            }
                            num22++;
                        }
                        num = index;
                        this.CSS_insert(class22, class18, class19, class20, class21, align, class4, ref num, buf, ref num11, max, _params, ref flag4, class10, class14, ref num21, ref flag16, ref flag5, newb, list, list2, CSS_tag_type.FONT_CSS);
                        goto Label_134B7;
                    }
                    if (((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x66) || (class4.b[num + 2] == 70))) && (((class4.b[num + 3] == 0x6f) || (class4.b[num + 3] == 0x4f)) && ((class4.b[num + 4] == 110) || (class4.b[num + 4] == 0x4e)))) && (((class4.b[num + 5] == 0x74) || (class4.b[num + 5] == 0x54)) && (class4.b[num + 6] == 0x3e)))
                    {
                        if ((this._preserveBackgroundColor == 1) && (num19 == 1))
                        {
                            buf.Add(@"\chcbpat0 ");
                            num11 += 10;
                            num19 = 0;
                        }
                        if (num20 > 0)
                        {
                            class8.Clear();
                            class8.Add(@"\f" + class13.b[num20 - 1] + " ");
                            flag16 = true;
                            num20--;
                        }
                        else
                        {
                            class8.Clear();
                            class8.Add(@"\f0 ");
                            flag16 = true;
                            flag3 = true;
                        }
                        if (num21 > 0)
                        {
                            num21--;
                            if (num21 == 0)
                            {
                                class10.Clear();
                                class10.Add(@"\cf1 ");
                                flag16 = true;
                                flag4 = true;
                            }
                            else if (num21 > 0)
                            {
                                class10.Clear();
                                class10.Add(@"\cf" + class14.b[num21 - 1] + " ");
                            }
                            flag16 = true;
                        }
                        else
                        {
                            class10.Clear();
                            class10.Add(@"\cf1 ");
                            flag16 = true;
                            flag4 = true;
                        }
                        if (num22 > 0)
                        {
                            num22--;
                            newb.Clear();
                            if (num22 > 0)
                            {
                                newb.Add(@"\fs" + ((numArray3[num22 - 1] * 2)).ToString() + " ");
                                flag16 = true;
                            }
                        }
                        else
                        {
                            newb.Clear();
                            newb.Add(@"\fs" + (fontsize * 2) + " ");
                            flag16 = true;
                            flag5 = true;
                        }
                        flag5 = true;
                        num += 6;
                        buf.Add(class10);
                        num11 += class10.len;
                        buf.Add(class8);
                        num11 += class8.len;
                        buf.Add(newb);
                        num11 += newb.len;
                        this.CSS_close(class22, class18, align, buf, ref num11, _params, ref flag4, class10, class14, ref num21, ref flag16, ref flag5, newb, fontsize, CSS_tag_type.FONT_CSS);
                        goto Label_134B7;
                    }
                    if ((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x73) || (class4.b[num + 1] == 0x53))) && (((class4.b[num + 2] == 0x70) || (class4.b[num + 2] == 80)) && ((class4.b[num + 3] == 0x61) || (class4.b[num + 3] == 0x41)))) && (((class4.b[num + 4] == 110) || (class4.b[num + 4] == 0x4e)) && this.IS_DELIMITER(class4.b[num + 5])))
                    {
                        num += 5;
                        this.CSS_insert(class22, class18, class19, class20, class21, align, class4, ref num, buf, ref num11, max, _params, ref flag4, class10, class14, ref num21, ref flag16, ref flag5, newb, list, list2, CSS_tag_type.SPAN_CSS);
                        goto Label_134B7;
                    }
                    if (((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x73) || (class4.b[num + 2] == 0x53))) && (((class4.b[num + 3] == 0x70) || (class4.b[num + 3] == 80)) && ((class4.b[num + 4] == 0x61) || (class4.b[num + 4] == 0x41)))) && (((class4.b[num + 5] == 110) || (class4.b[num + 5] == 0x4e)) && (class4.b[num + 6] == 0x3e)))
                    {
                        num += 6;
                        this.CSS_close(class22, class18, align, buf, ref num11, _params, ref flag4, class10, class14, ref num21, ref flag16, ref flag5, newb, fontsize, CSS_tag_type.SPAN_CSS);
                        goto Label_134B7;
                    }
                    if ((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x69) || (class4.b[num + 1] == 0x49))) && (((class4.b[num + 2] == 110) || (class4.b[num + 2] == 0x4e)) && ((class4.b[num + 3] == 0x70) || (class4.b[num + 3] == 80)))) && ((((class4.b[num + 4] == 0x75) || (class4.b[num + 4] == 0x55)) && ((class4.b[num + 5] == 0x74) || (class4.b[num + 5] == 0x54))) && this.IS_DELIMITER(class4.b[num + 6])))
                    {
                        num += 6;
                        bool flag22 = false;
                        int num62 = 0;
                        while ((class4.b[num] != 0x3e) && (num < class4.len))
                        {
                            if (((((class4.b[num] == 0x74) || (class4.b[num] == 0x54)) && ((class4.b[num + 1] == 0x79) || (class4.b[num + 1] == 0x59))) && (((class4.b[num + 2] == 0x70) || (class4.b[num + 2] == 80)) && ((class4.b[num + 3] == 0x65) || (class4.b[num + 3] == 0x45)))) && (this.IS_DELIMITER(class4.b[num + 4]) || (class4.b[num + 4] == 0x3d)))
                            {
                                valueStr.Clear();
                                num += 4;
                                this.ReadValue(class4, ref num, valueStr);
                                if (valueStr.byteCmpi("checkbox") == 0)
                                {
                                    num62 = 1;
                                }
                                else if (valueStr.byteCmpi("radio") == 0)
                                {
                                    num62 = 2;
                                }
                            }
                            if (((this.IS_DELIMITER(class4.b[num]) && ((class4.b[num + 1] == 0x63) || (class4.b[num + 1] == 0x43))) && (((class4.b[num + 2] == 0x68) || (class4.b[num + 2] == 0x48)) && ((class4.b[num + 3] == 0x65) || (class4.b[num + 3] == 0x45)))) && ((((class4.b[num + 4] == 0x63) || (class4.b[num + 4] == 0x43)) && ((class4.b[num + 5] == 0x6b) || (class4.b[num + 5] == 0x4b))) && (((class4.b[num + 6] == 0x65) || (class4.b[num + 6] == 0x45)) && ((class4.b[num + 7] == 100) || (class4.b[num + 7] == 0x44)))))
                            {
                                flag22 = true;
                            }
                            num++;
                        }
                        if (num62 != 0)
                        {
                            if (num62 == 1)
                            {
                                if (flag22)
                                {
                                    buf.Add(str3);
                                }
                                else
                                {
                                    buf.Add(str4);
                                }
                            }
                            else if (num62 == 2)
                            {
                                if (flag22)
                                {
                                    buf.Add(str5);
                                }
                                else
                                {
                                    buf.Add(str6);
                                }
                            }
                        }
                        goto Label_134B7;
                    }
                    if (((class4.b[num] == 60) && ((class4.b[num + 1] == 0x62) || (class4.b[num + 1] == 0x42))) && (((class4.b[num + 2] == 0x72) || (class4.b[num + 2] == 0x52)) && (((class4.b[num + 3] == 0x3e) || (class4.b[num + 3] == 0x20)) || (class4.b[num + 3] == 0x2f))))
                    {
                        if ((class4.b[num + 3] == 0x20) || (class4.b[num + 3] == 0x2f))
                        {
                            while ((class4.b[num + 3] != 0x3e) && (num < max))
                            {
                                num++;
                            }
                        }
                        num5 = 1;
                        if ((num55 > 0) || (num56 > 0))
                        {
                            buf.Add(this.BR_STR_BULLETS);
                            num11 += this.BR_STR_BULLETS.Length;
                            num5 = 0;
                        }
                        else if (_tablesArray[num36].table)
                        {
                            if (_tablesArray[num36].cell > 0)
                            {
                                buf.Add(str18);
                                if ((num36 > 0) && (this._preserveNestedTables == 1))
                                {
                                    if (!_tablesArray[num36].tr_open && (_tablesArray[num36].table_level > 1))
                                    {
                                        str11 = @"\itap" + ((_tablesArray[num36].table_level - 1)).ToString() + " ";
                                    }
                                    else
                                    {
                                        str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
                                    }
                                    buf.Add(str11);
                                    num11 += str11.Length;
                                }
                            }
                        }
                        else
                        {
                            buf.Add(str17);
                        }
                        num += 3;
                        if (!flag3)
                        {
                            buf.Add(class8);
                            num11 += class8.len;
                        }
                        if (!flag5)
                        {
                            buf.Add(newb);
                            num11 += newb.len;
                        }
                        buf.Add(align);
                        num11 += len;
                        goto Label_134B7;
                    }
                    if (((class4.b[num] == 60) && ((class4.b[num + 1] == 0x75) || (class4.b[num + 1] == 0x55))) && (((class4.b[num + 2] == 0x6c) || (class4.b[num + 2] == 0x4c)) && ((class4.b[num + 3] == 0x3e) || (class4.b[num + 3] == 0x20))))
                    {
                        num += 3;
                        if (class4.b[num] == 0x20)
                        {
                            while ((class4.b[num] != 0x3e) && (num < max))
                            {
                                if (((((class4.b[num] == 0x63) || (class4.b[num] == 0x43)) && ((class4.b[num + 1] == 0x6c) || (class4.b[num + 1] == 0x4c))) && (((class4.b[num + 2] == 0x61) || (class4.b[num + 2] == 0x41)) && ((class4.b[num + 3] == 0x73) || (class4.b[num + 3] == 0x53)))) && (((class4.b[num + 4] == 0x73) || (class4.b[num + 4] == 0x53)) && (class4.b[num + 5] == 0x3d)))
                                {
                                    num += 5;
                                    _params.found = false;
                                    this.read_value_exact(class4, ref num, max, _params.style_name);
                                    if (_params.style_name.len > 0)
                                    {
                                        _params.found = true;
                                    }
                                    if (_params.found)
                                    {
                                        _params.found = false;
                                        for (num7 = 0; num7 < _params.styles; num7++)
                                        {
                                            if ((((CSS_styles)_params.CSS_style[num7]).name.byteCmp(_params.style_name.ByteToString()) == 0) && ((((CSS_styles)_params.CSS_style[num7]).css_tag_type == CSS_tag_type.UL_CSS) || (((CSS_styles)_params.CSS_style[num7]).css_tag_type == CSS_tag_type.UNKNOWN_CSS)))
                                            {
                                                _params.found = true;
                                                if (((CSS_styles)_params.CSS_style[num7]).list_style_type == 1)
                                                {
                                                    typeArray[num55] = listStyleType.LIST_NONE;
                                                }
                                                else if (((CSS_styles)_params.CSS_style[num7]).list_style_type == 2)
                                                {
                                                    typeArray[num55] = listStyleType.LIST_UL_DISC;
                                                }
                                                else if (((CSS_styles)_params.CSS_style[num7]).list_style_type == 3)
                                                {
                                                    typeArray[num55] = listStyleType.LIST_UL_CIRCLE;
                                                }
                                                else if (((CSS_styles)_params.CSS_style[num7]).list_style_type == 4)
                                                {
                                                    typeArray[num55] = listStyleType.LIST_UL_SQUARE;
                                                }
                                                break;
                                            }
                                        }
                                    }
                                }
                                if ((((((class4.b[num] == 0x6c) || (class4.b[num] == 0x4c)) && ((class4.b[num + 1] == 0x69) || (class4.b[num + 1] == 0x49))) && (((class4.b[num + 2] == 0x73) || (class4.b[num + 2] == 0x53)) && ((class4.b[num + 3] == 0x74) || (class4.b[num + 3] == 0x54)))) && (((class4.b[num + 4] == 0x2d) && ((class4.b[num + 5] == 0x73) || (class4.b[num + 5] == 0x53))) && (((class4.b[num + 6] == 0x74) || (class4.b[num + 6] == 0x54)) && ((class4.b[num + 7] == 0x79) || (class4.b[num + 7] == 0x59))))) && ((((class4.b[num + 8] == 0x6c) || (class4.b[num + 8] == 0x4c)) && ((class4.b[num + 9] == 0x65) || (class4.b[num + 9] == 0x45))) && (class4.b[num + 10] == 0x3a)))
                                {
                                    num += 11;
                                    this.read_value_CSS(class4, ref num, max, class16, -1111, false);
                                    if (class16.byteCmpi("none") == 0)
                                    {
                                        typeArray[num55] = listStyleType.LIST_NONE;
                                    }
                                    else
                                    {
                                        if (class16.byteCmpi("disc") == 0)
                                        {
                                            typeArray[num55] = listStyleType.LIST_UL_DISC;
                                            continue;
                                        }
                                        if (class16.byteCmpi("circle") == 0)
                                        {
                                            typeArray[num55] = listStyleType.LIST_UL_CIRCLE;
                                        }
                                        else if (class16.byteCmpi("square") == 0)
                                        {
                                            typeArray[num55] = listStyleType.LIST_UL_SQUARE;
                                        }
                                    }
                                }
                                else
                                {
                                    if ((((((class4.b[num] == 0x6c) || (class4.b[num] == 0x4c)) && ((class4.b[num + 1] == 0x69) || (class4.b[num + 1] == 0x49))) && (((class4.b[num + 2] == 0x73) || (class4.b[num + 2] == 0x53)) && ((class4.b[num + 3] == 0x74) || (class4.b[num + 3] == 0x54)))) && (((class4.b[num + 4] == 0x2d) && ((class4.b[num + 5] == 0x73) || (class4.b[num + 5] == 0x53))) && (((class4.b[num + 6] == 0x74) || (class4.b[num + 6] == 0x54)) && ((class4.b[num + 7] == 0x79) || (class4.b[num + 7] == 0x59))))) && (((((class4.b[num + 8] == 0x6c) || (class4.b[num + 8] == 0x4c)) && ((class4.b[num + 9] == 0x65) || (class4.b[num + 9] == 0x45))) && ((class4.b[num + 10] == 0x2d) && ((class4.b[num + 11] == 0x74) || (class4.b[num + 11] == 0x54)))) && ((((class4.b[num + 12] == 0x79) || (class4.b[num + 12] == 0x59)) && ((class4.b[num + 13] == 0x70) || (class4.b[num + 13] == 80))) && (((class4.b[num + 14] == 0x65) || (class4.b[num + 14] == 0x45)) && (class4.b[num + 15] == 0x3a)))))
                                    {
                                        num += 0x10;
                                        this.read_value_CSS(class4, ref num, max, class16, -1111, false);
                                        if (class16.byteCmpi("none") == 0)
                                        {
                                            typeArray[num55] = listStyleType.LIST_NONE;
                                        }
                                        else if (class16.byteCmpi("disc") == 0)
                                        {
                                            typeArray[num55] = listStyleType.LIST_UL_DISC;
                                        }
                                        else if (class16.byteCmpi("circle") == 0)
                                        {
                                            typeArray[num55] = listStyleType.LIST_UL_CIRCLE;
                                        }
                                        else if (class16.byteCmpi("square") == 0)
                                        {
                                            typeArray[num55] = listStyleType.LIST_UL_SQUARE;
                                        }
                                        continue;
                                    }
                                    if ((((class4.b[num] == 0x74) || (class4.b[num] == 0x54)) && ((class4.b[num + 1] == 0x79) || (class4.b[num + 1] == 0x59))) && (((class4.b[num + 2] == 0x70) || (class4.b[num + 2] == 80)) && ((class4.b[num + 3] == 0x65) || (class4.b[num + 3] == 0x45))))
                                    {
                                        num += 4;
                                        this.read_value_CSS(class4, ref num, max, class16, -1111, false);
                                        if (class16.byteCmpi("none") == 0)
                                        {
                                            typeArray[num55] = listStyleType.LIST_NONE;
                                        }
                                        else if (class16.byteCmpi("disc") == 0)
                                        {
                                            typeArray[num55] = listStyleType.LIST_UL_DISC;
                                        }
                                        else if (class16.byteCmpi("circle") == 0)
                                        {
                                            typeArray[num55] = listStyleType.LIST_UL_CIRCLE;
                                        }
                                        else if (class16.byteCmpi("square") == 0)
                                        {
                                            typeArray[num55] = listStyleType.LIST_UL_SQUARE;
                                        }
                                        continue;
                                    }
                                    num++;
                                }
                            }
                        }
                        num55++;
                        numArray4[num60] = 0;
                        if (num60 < (this.STK_MAX - 1))
                        {
                            num60++;
                        }
                        if (num5 == 0)
                        {
                            if (_tablesArray[num36].table)
                            {
                                buf.Add(str15);
                                if ((num36 > 0) && (this._preserveNestedTables == 1))
                                {
                                    str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
                                    buf.Add(str11);
                                    num11 += str11.Length;
                                }
                            }
                            else
                            {
                                buf.Add(str14);
                                num5 = 1;
                            }
                        }
                        num59 = 0;
                        goto Label_134B7;
                    }
                    if ((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x75) || (class4.b[num + 2] == 0x55))) && (((class4.b[num + 3] == 0x6c) || (class4.b[num + 3] == 0x4c)) && (class4.b[num + 4] == 0x3e)))
                    {
                        num55--;
                        if (num55 < 0)
                        {
                            num55 = 0;
                        }
                        if (num60 >= 1)
                        {
                            num60--;
                        }
                        if (num60 == 0)
                        {
                            num59 = 0;
                        }
                        else
                        {
                            num59 = numArray4[num60 - 1];
                        }
                        typeArray[num55] = listStyleType.LIST_STANDARD;
                        num += 4;
                        if (_tablesArray[num36].table)
                        {
                            buf.Add(str15);
                            if ((num36 > 0) && (this._preserveNestedTables == 1))
                            {
                                str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
                                buf.Add(str11);
                                num11 += str11.Length;
                            }
                        }
                        else if (num5 == 0)
                        {
                            buf.Add(str14);
                            num5 = 1;
                        }
                        goto Label_134B7;
                    }
                    if (((class4.b[num] == 60) && ((class4.b[num + 1] == 0x6f) || (class4.b[num + 1] == 0x4f))) && (((class4.b[num + 2] == 0x6c) || (class4.b[num + 2] == 0x4c)) && ((class4.b[num + 3] == 0x3e) || (class4.b[num + 3] == 0x20))))
                    {
                        num58 = 0;
                        num += 3;
                        if (class4.b[num] == 0x20)
                        {
                            while ((class4.b[num] != 0x3e) && (num < max))
                            {
                                if (((((class4.b[num] == 0x74) || (class4.b[num] == 0x54)) && ((class4.b[num + 1] == 0x79) || (class4.b[num + 1] == 0x59))) && (((class4.b[num + 2] == 0x70) || (class4.b[num + 2] == 80)) && ((class4.b[num + 3] == 0x65) || (class4.b[num + 3] == 0x45)))) && (class4.b[num + 4] == 0x3d))
                                {
                                    num += 4;
                                    this.read_value_exact(class4, ref num, max, class17);
                                    if (class17.byteCmp("i") == 0)
                                    {
                                        typeArray[num56] = listStyleType.LIST_OL_LOWER_ROMAN;
                                    }
                                    else if (class17.byteCmp("I") == 0)
                                    {
                                        typeArray[num56] = listStyleType.LIST_OL_UPPER_ROMAN;
                                    }
                                    else if (class17.byteCmp("a") == 0)
                                    {
                                        typeArray[num56] = listStyleType.LIST_OL_LOWER_ALPHA;
                                    }
                                    else if (class17.byteCmp("A") == 0)
                                    {
                                        typeArray[num56] = listStyleType.LIST_OL_UPPER_ALPHA;
                                    }
                                    else if (class17.byteCmp("1") == 0)
                                    {
                                        typeArray[num56] = listStyleType.LIST_STANDARD;
                                    }
                                }
                                if (((((class4.b[num] == 0x63) || (class4.b[num] == 0x43)) && ((class4.b[num + 1] == 0x6c) || (class4.b[num + 1] == 0x4c))) && (((class4.b[num + 2] == 0x61) || (class4.b[num + 2] == 0x41)) && ((class4.b[num + 3] == 0x73) || (class4.b[num + 3] == 0x53)))) && (((class4.b[num + 4] == 0x73) || (class4.b[num + 4] == 0x53)) && (class4.b[num + 5] == 0x3d)))
                                {
                                    num += 5;
                                    _params.found = false;
                                    this.read_value_exact(class4, ref num, max, _params.style_name);
                                    if (_params.style_name.len > 0)
                                    {
                                        _params.found = true;
                                    }
                                    if (_params.found)
                                    {
                                        _params.found = false;
                                        for (num7 = 0; num7 < _params.styles; num7++)
                                        {
                                            if ((((CSS_styles)_params.CSS_style[num7]).name.byteCmp(_params.style_name) == 0) && ((((CSS_styles)_params.CSS_style[num7]).css_tag_type == CSS_tag_type.OL_CSS) || (((CSS_styles)_params.CSS_style[num7]).css_tag_type == CSS_tag_type.UNKNOWN_CSS)))
                                            {
                                                _params.found = true;
                                                if (((CSS_styles)_params.CSS_style[num7]).list_style_type == 1)
                                                {
                                                    typeArray[num56] = listStyleType.LIST_NONE;
                                                }
                                                else if (((CSS_styles)_params.CSS_style[num7]).list_style_type == 5)
                                                {
                                                    typeArray[num56] = listStyleType.LIST_OL_LOWER_ROMAN;
                                                }
                                                else if (((CSS_styles)_params.CSS_style[num7]).list_style_type == 6)
                                                {
                                                    typeArray[num56] = listStyleType.LIST_OL_UPPER_ROMAN;
                                                }
                                                else if (((CSS_styles)_params.CSS_style[num7]).list_style_type == 7)
                                                {
                                                    typeArray[num56] = listStyleType.LIST_OL_LOWER_ALPHA;
                                                }
                                                else if (((CSS_styles)_params.CSS_style[num7]).list_style_type == 8)
                                                {
                                                    typeArray[num56] = listStyleType.LIST_OL_UPPER_ALPHA;
                                                }
                                                else if (((CSS_styles)_params.CSS_style[num7]).list_style_type == 9)
                                                {
                                                    typeArray[num56] = listStyleType.LIST_STANDARD;
                                                }
                                                break;
                                            }
                                        }
                                    }
                                }
                                if ((((((class4.b[num] == 0x6c) || (class4.b[num] == 0x4c)) && ((class4.b[num + 1] == 0x69) || (class4.b[num + 1] == 0x49))) && (((class4.b[num + 2] == 0x73) || (class4.b[num + 2] == 0x53)) && ((class4.b[num + 3] == 0x74) || (class4.b[num + 3] == 0x54)))) && (((class4.b[num + 4] == 0x2d) && ((class4.b[num + 5] == 0x73) || (class4.b[num + 5] == 0x53))) && (((class4.b[num + 6] == 0x74) || (class4.b[num + 6] == 0x54)) && ((class4.b[num + 7] == 0x79) || (class4.b[num + 7] == 0x59))))) && ((((class4.b[num + 8] == 0x6c) || (class4.b[num + 8] == 0x4c)) && ((class4.b[num + 9] == 0x65) || (class4.b[num + 9] == 0x45))) && (class4.b[num + 10] == 0x3a)))
                                {
                                    num += 11;
                                    this.read_value_CSS(class4, ref num, max, class16, -1111, false);
                                    if (class16.byteCmpi("none") == 0)
                                    {
                                        typeArray[num56] = listStyleType.LIST_NONE;
                                    }
                                }
                                else
                                {
                                    num++;
                                }
                            }
                        }
                        num56++;
                        num57 = 1;
                        numArray4[num60] = 1;
                        if (num60 < (this.STK_MAX - 1))
                        {
                            num60++;
                        }
                        if (num5 == 0)
                        {
                            if (_tablesArray[num36].table)
                            {
                                buf.Add(str15);
                                if ((num36 > 0) && (this._preserveNestedTables == 1))
                                {
                                    str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
                                    buf.Add(str11);
                                    num11 += str11.Length;
                                }
                            }
                            else
                            {
                                buf.Add(str14);
                                num5 = 1;
                            }
                        }
                        num59 = 1;
                        goto Label_134B7;
                    }
                    if ((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x6f) || (class4.b[num + 2] == 0x4f))) && (((class4.b[num + 3] == 0x6c) || (class4.b[num + 3] == 0x4c)) && (class4.b[num + 4] == 0x3e)))
                    {
                        num58 = 0;
                        if (num60 >= 1)
                        {
                            num60--;
                        }
                        if (num60 == 0)
                        {
                            num59 = 0;
                        }
                        else
                        {
                            num59 = numArray4[num60 - 1];
                        }
                        num56--;
                        if (num56 < 0)
                        {
                            num56 = 0;
                        }
                        typeArray[num56] = listStyleType.LIST_STANDARD;
                        num += 4;
                        if (_tablesArray[num36].table)
                        {
                            buf.Add(str15);
                            if ((num36 > 0) && (this._preserveNestedTables == 1))
                            {
                                str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
                                buf.Add(str11);
                                num11 += str11.Length;
                            }
                        }
                        else if (num5 == 0)
                        {
                            buf.Add(str14);
                            num5 = 1;
                        }
                        goto Label_134B7;
                    }
                    if (((class4.b[num] == 60) && ((class4.b[num + 1] == 0x6c) || (class4.b[num + 1] == 0x4c))) && (((class4.b[num + 2] == 0x69) || (class4.b[num + 2] == 0x49)) && ((class4.b[num + 3] == 0x3e) || (class4.b[num + 3] == 0x20))))
                    {
                        num58++;
                        if (class4.b[num + 3] == 0x20)
                        {
                            while ((class4.b[num + 3] != 0x3e) && (num < max))
                            {
                                num++;
                            }
                        }
                        if (num5 == 0)
                        {
                            if (_tablesArray[num36].table)
                            {
                                buf.Add(str18);
                                if ((num36 > 0) && (this._preserveNestedTables == 1))
                                {
                                    str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
                                    buf.Add(str11);
                                    num11 += str11.Length;
                                }
                            }
                            else
                            {
                                buf.Add(str17);
                            }
                        }
                        if ((num55 > 0) && (num59 == 0))
                        {
                            if (typeArray[num55 - 1] == listStyleType.LIST_UL_DISC)
                            {
                                num61 = 100;
                            }
                            else if (typeArray[num55 - 1] == listStyleType.LIST_UL_SQUARE)
                            {
                                num61 = 0x65;
                            }
                            else if (typeArray[num55 - 1] == listStyleType.LIST_UL_CIRCLE)
                            {
                                num61 = 0x66;
                            }
                            string str24 = _tablesArray[num36].table ? @"\pard\intbl" : string.Concat(strArray = new string[9]);
                            buf.Add(str24);
                            num11 += str24.Length;
                            if ((_tablesArray[num36].table && (num36 > 0)) && (this._preserveNestedTables == 1))
                            {
                                str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
                                buf.Add(str11);
                                num11 += str11.Length;
                            }
                        }
                        else if ((num56 > 0) && (num59 == 1))
                        {
                            this.MakeOLsymbol(num58, strOLsymbol, (int)typeArray[num56 - 1]);
                            strArray = new string[] { _tablesArray[num36].table ? @"\pard\intbl" : "", @"{\*\pn\pnlvlbody\pnf0\pnindent0\pnstart1", (typeArray[num56 - 1] == listStyleType.LIST_STANDARD) ? @"\pndec" : "", @"{\pntxta ", strOLsymbol.ByteToString(), @".}}\fi-240\li", ((400 * num56) * ((num55 > 0) ? (num55 + 1) : 1)).ToString(), @"{\pntext}" };
                            string str26 = string.Concat(strArray);
                            buf.Add(str26);
                            num11 += str26.Length;
                            if ((_tablesArray[num36].table && (num36 > 0)) && (this._preserveNestedTables == 1))
                            {
                                str11 = @"\itap" + _tablesArray[num36].table_level + " ";
                                buf.Add(str11);
                                num11 += str11.Length;
                            }
                            num57++;
                        }
                        num += 3;
                        num5 = 1;
                        if (!flag3)
                        {
                            buf.Add(class8);
                            num11 += class8.len;
                        }
                        if (!flag5)
                        {
                            buf.Add(newb);
                            num11 += newb.len;
                        }
                        goto Label_134B7;
                    }
                    if (((class4.b[num] == 60) && ((class4.b[num + 1] == 0x68) || (class4.b[num + 1] == 0x48))) && (((class4.b[num + 2] >= 0x30) && (class4.b[num + 2] <= 0x39)) && ((class4.b[num + 3] == 0x3e) || (class4.b[num + 3] == 0x20))))
                    {
                        if (flag12)
                        {
                            if (num34 < 2)
                            {
                                num34++;
                                num5 = 1;
                            }
                            else
                            {
                                num34 = 1;
                                num5 = 0;
                                buf.Add(str21);
                                num11 += num51;
                            }
                        }
                        if (num5 == 0)
                        {
                            buf.Add(str20);
                            num11 += length;
                            num5 = 1;
                        }
                        else
                        {
                            buf.Add(str21);
                            num11 += num51;
                        }
                        if ((class4.b[num + 2] > 0x30) && (class4.b[num + 2] < 0x37))
                        {
                            switch (((char)class4.b[num + 2]))
                            {
                                case '1':
                                    num7 = 0x24;
                                    break;

                                case '2':
                                    num7 = 0x20;
                                    break;

                                case '3':
                                    num7 = 0x1c;
                                    break;

                                case '4':
                                    num7 = 0x18;
                                    break;

                                case '5':
                                    num7 = 20;
                                    break;

                                case '6':
                                    num7 = 0x10;
                                    break;

                                default:
                                    num7 = 0x18;
                                    break;
                            }
                            if (this._preserveFontSize == 1)
                            {
                                newb.Clear();
                                newb.Add(@"\fs" + num7.ToString() + " ");
                                flag16 = true;
                                flag5 = false;
                            }
                        }
                        switch (class4.b[num + 2])
                        {
                            case 0x31:
                                _params.hNumber = CSS_tag_type.H1_CSS;
                                break;

                            case 50:
                                _params.hNumber = CSS_tag_type.H2_CSS;
                                break;

                            case 0x33:
                                _params.hNumber = CSS_tag_type.H3_CSS;
                                break;

                            case 0x34:
                                _params.hNumber = CSS_tag_type.H4_CSS;
                                break;

                            case 0x35:
                                _params.hNumber = CSS_tag_type.H5_CSS;
                                break;

                            case 0x36:
                                _params.hNumber = CSS_tag_type.H6_CSS;
                                break;

                            default:
                                _params.hNumber = CSS_tag_type.H_CSS;
                                break;
                        }
                        num7 = num;
                        if (class4.b[num + 3] == 0x20)
                        {
                            while ((class4.b[num + 3] != 0x3e) && (num < max))
                            {
                                num++;
                            }
                        }
                        num5 = 1;
                        if (!flag3)
                        {
                            buf.Add(class8);
                            num11 += class8.len;
                        }
                        if (!flag5)
                        {
                            buf.Add(newb);
                            num11 += newb.len;
                        }
                        num = num7;
                        num += 3;
                        this.CSS_insert(class22, class18, class19, class20, class21, align, class4, ref num, buf, ref num11, max, _params, ref flag4, class10, class14, ref num21, ref flag16, ref flag5, newb, list, list2, _params.hNumber);
                        goto Label_134B7;
                    }
                    if ((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x68) || (class4.b[num + 2] == 0x48))) && (class4.b[num + 4] == 0x3e))
                    {
                        flag5 = true;
                        if (flag12)
                        {
                            if (num34 < 2)
                            {
                                num34++;
                                buf.Add((byte)0x7d);
                            }
                            else
                            {
                                num34 = 1;
                                num11++;
                                buf.Add((byte)0x5c);
                                num11++;
                                buf.Add((byte)0x70);
                                num11++;
                                buf.Add((byte)0x61);
                                num11++;
                                buf.Add((byte)0x72);
                                num11++;
                                buf.Add((byte)0x7d);
                            }
                        }
                        else
                        {
                            num11++;
                            buf.Add((byte)0x5c);
                            num11++;
                            buf.Add((byte)0x70);
                            num11++;
                            buf.Add((byte)0x61);
                            num11++;
                            buf.Add((byte)0x72);
                            num11++;
                            buf.Add((byte)0x7d);
                        }
                        num += 4;
                        switch (_params.hNumber)
                        {
                            case CSS_tag_type.H1_CSS:
                                _params.hNumber = CSS_tag_type.H1_CSS;
                                break;

                            case CSS_tag_type.H2_CSS:
                                _params.hNumber = CSS_tag_type.H2_CSS;
                                break;

                            case CSS_tag_type.H3_CSS:
                                _params.hNumber = CSS_tag_type.H3_CSS;
                                break;

                            case CSS_tag_type.H4_CSS:
                                _params.hNumber = CSS_tag_type.H4_CSS;
                                break;

                            case CSS_tag_type.H5_CSS:
                                _params.hNumber = CSS_tag_type.H5_CSS;
                                break;

                            case CSS_tag_type.H6_CSS:
                                _params.hNumber = CSS_tag_type.H6_CSS;
                                break;

                            default:
                                _params.hNumber = CSS_tag_type.H_CSS;
                                break;
                        }
                        this.CSS_close(class22, class18, align, buf, ref num11, _params, ref flag4, class10, class14, ref num21, ref flag16, ref flag5, newb, fontsize, _params.hNumber);
                        goto Label_134B7;
                    }
                    if ((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x73) || (class4.b[num + 1] == 0x53))) && (((class4.b[num + 2] == 0x74) || (class4.b[num + 2] == 0x54)) && ((class4.b[num + 3] == 0x72) || (class4.b[num + 3] == 0x52)))) && ((((class4.b[num + 4] == 0x6f) || (class4.b[num + 4] == 0x4f)) && ((class4.b[num + 5] == 110) || (class4.b[num + 5] == 0x4e))) && (((class4.b[num + 6] == 0x67) || (class4.b[num + 6] == 0x47)) && ((class4.b[num + 7] == 0x3e) || (class4.b[num + 7] == 0x20)))))
                    {
                        num11++;
                        buf.Add((byte)0x7b);
                        num11++;
                        buf.Add((byte)0x5c);
                        num11++;
                        buf.Add((byte)0x62);
                        num11++;
                        buf.Add((byte)0x20);
                        flag16 = true;
                        if (class4.b[num + 7] == 0x20)
                        {
                            while ((class4.b[num + 7] != 0x3e) && (num < max))
                            {
                                num++;
                            }
                        }
                        num += 7;
                        num29++;
                        if (num29 <= 0)
                        {
                            num29 = 1;
                        }
                        goto Label_134B7;
                    }
                    if (((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x73) || (class4.b[num + 2] == 0x53))) && (((class4.b[num + 3] == 0x74) || (class4.b[num + 3] == 0x54)) && ((class4.b[num + 4] == 0x72) || (class4.b[num + 4] == 0x52)))) && ((((class4.b[num + 5] == 0x6f) || (class4.b[num + 5] == 0x4f)) && ((class4.b[num + 6] == 110) || (class4.b[num + 6] == 0x4e))) && (((class4.b[num + 7] == 0x67) || (class4.b[num + 7] == 0x47)) && (class4.b[num + 8] == 0x3e))))
                    {
                        if (num29 > 0)
                        {
                            buf.Add((byte)0x7d);
                            num11++;
                            flag16 = false;
                        }
                        num29--;
                        num += 8;
                        goto Label_134B7;
                    }
                    if (((class4.b[num] == 60) && ((class4.b[num + 1] == 0x62) || (class4.b[num + 1] == 0x42))) && ((class4.b[num + 2] == 0x3e) || (class4.b[num + 2] == 0x20)))
                    {
                        num11++;
                        buf.Add((byte)0x7b);
                        num11++;
                        buf.Add((byte)0x5c);
                        num11++;
                        buf.Add((byte)0x62);
                        num11++;
                        buf.Add((byte)0x20);
                        flag16 = true;
                        if (class4.b[num + 2] == 0x20)
                        {
                            while ((class4.b[num + 2] != 0x3e) && (num < max))
                            {
                                num++;
                            }
                        }
                        num += 2;
                        num28++;
                        if (num28 <= 0)
                        {
                            num28 = 1;
                        }
                        goto Label_134B7;
                    }
                    if ((((class4.b[num] != 60) || (class4.b[num + 1] != 0x2f)) || ((class4.b[num + 2] != 0x62) && (class4.b[num + 2] != 0x42))) || (class4.b[num + 3] != 0x3e))
                    {
                        goto Label_AFB9;
                    }
                    if (num28 > 0)
                    {
                        buf.Add((byte)0x7d);
                        num11++;
                        flag16 = false;
                    }
                    num28--;
                    num += 3;
                    if (num11 <= 0x1116f)
                    {
                        goto Label_134B7;
                    }
                    if (!_tablesArray[num36].table)
                    {
                        break;
                    }
                    if (this._preserveNestedTables != 1)
                    {
                        goto Label_AF9B;
                    }
                    goto Label_AF73;
                Label_AE98:
                    buf.Add("\n\\pard \\intbl");
                str11 = @"\itap" + _tablesArray[num36].table_level + " ";
                buf.Add(str11);
                num11 += str11.Length;
                buf.Add("\n\\nestcell");
                nest_tables _tables6 = _tablesArray[num36];
                _tables6.cell--;
            Label_AEF7:
                if (_tablesArray[num36].cell > 0)
                {
                    goto Label_AE98;
                }
            buf.Add("\n\\pard \\intbl");
            str11 = @"\itap" + _tablesArray[num36].table_level + " ";
            buf.Add(str11);
            num11 += str11.Length;
            buf.Add(_tablesArray[num36].nestTblDescription);
            buf.Add(@"\nestrow}{\nonesttables\par}" + this.LF);
            num36--;
        Label_AF73:
            if (num36 > 0)
            {
                goto Label_AEF7;
            }
    Label_AF9B:
        while (_tablesArray[num36].cell > 0)
        {
            buf.Add("\n\\pard \\intbl\\cell");
            nest_tables _tables7 = _tablesArray[num36];
            _tables7.cell--;
        }
    buf.Add("\n\\pard \\intbl \\row \\pard");
    break;
Label_AFB9:
    if (((class4.b[num] == 60) && ((class4.b[num + 1] == 0x69) || (class4.b[num + 1] == 0x49))) && ((class4.b[num + 2] == 0x3e) || (class4.b[num + 2] == 0x20)))
    {
        num11++;
        buf.Add((byte)0x7b);
        num11++;
        buf.Add((byte)0x5c);
        num11++;
        buf.Add((byte)0x69);
        num11++;
        buf.Add((byte)0x20);
        flag16 = true;
        if (class4.b[num + 2] == 0x20)
        {
            while ((class4.b[num + 2] != 0x3e) && (num < max))
            {
                num++;
            }
        }
        num += 2;
        num31++;
        if (num31 <= 0)
        {
            num31 = 1;
        }
        goto Label_134B7;
    }
if ((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x69) || (class4.b[num + 2] == 0x49))) && (class4.b[num + 3] == 0x3e))
{
    if (num31 > 0)
    {
        buf.Add((byte)0x7d);
        num11++;
        flag16 = false;
    }
    num31--;
    num += 3;
    goto Label_134B7;
}
if (((class4.b[num] == 60) && ((class4.b[num + 1] == 0x65) || (class4.b[num + 1] == 0x45))) && (((class4.b[num + 2] == 0x6d) || (class4.b[num + 2] == 0x4d)) && ((class4.b[num + 3] == 0x3e) || (class4.b[num + 3] == 0x20))))
{
    num11++;
    buf.Add((byte)0x7b);
    this.CSS_insert(class22, class18, class19, class20, class21, align, class4, ref num, buf, ref num11, max, _params, ref flag4, class10, class14, ref num21, ref flag16, ref flag5, newb, list, list2, CSS_tag_type.EM_CSS);
    num11++;
    buf.Add((byte)0x5c);
    num11++;
    buf.Add((byte)0x69);
    num11++;
    buf.Add((byte)0x20);
    flag16 = true;
    num33++;
    if (num33 <= 0)
    {
        num33 = 1;
    }
    goto Label_134B7;
}
if ((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x65) || (class4.b[num + 2] == 0x45))) && (((class4.b[num + 3] == 0x6d) || (class4.b[num + 3] == 0x4d)) && (class4.b[num + 4] == 0x3e)))
{
    this.CSS_close(class22, class18, align, buf, ref num11, _params, ref flag4, class10, class14, ref num21, ref flag16, ref flag5, newb, fontsize, CSS_tag_type.EM_CSS);
    if (num33 > 0)
    {
        buf.Add((byte)0x7d);
        num11++;
        flag16 = false;
    }
    num33--;
    num += 4;
    goto Label_134B7;
}
if (((class4.b[num] == 60) && ((class4.b[num + 1] == 0x75) || (class4.b[num + 1] == 0x55))) && ((class4.b[num + 2] == 0x3e) || (class4.b[num + 2] == 0x20)))
{
    num11++;
    buf.Add((byte)0x7b);
    num11++;
    buf.Add((byte)0x5c);
    num11++;
    buf.Add((byte)0x75);
    num11++;
    buf.Add((byte)0x6c);
    num11++;
    buf.Add((byte)0x20);
    flag16 = true;
    if (class4.b[num + 2] == 0x20)
    {
        while ((class4.b[num + 2] != 0x3e) && (num < max))
        {
            num++;
        }
    }
    num += 2;
    num32++;
    if (num32 <= 0)
    {
        num32 = 1;
    }
    goto Label_134B7;
}
if ((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x75) || (class4.b[num + 2] == 0x55))) && (class4.b[num + 3] == 0x3e))
{
    if (num32 > 0)
    {
        buf.Add((byte)0x7d);
        num11++;
        flag16 = false;
    }
    num32--;
    num += 3;
    goto Label_134B7;
}
if ((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x73) || (class4.b[num + 1] == 0x53))) && (((class4.b[num + 2] == 0x74) || (class4.b[num + 2] == 0x54)) && ((class4.b[num + 3] == 0x72) || (class4.b[num + 3] == 0x52)))) && ((((class4.b[num + 4] == 0x69) || (class4.b[num + 4] == 0x49)) && ((class4.b[num + 5] == 0x6b) || (class4.b[num + 5] == 0x4b))) && (((class4.b[num + 6] == 0x65) || (class4.b[num + 6] == 0x45)) && ((class4.b[num + 7] == 0x3e) || (class4.b[num + 7] == 0x20)))))
{
    num11++;
    buf.Add((byte)0x7b);
    num11++;
    buf.Add((byte)0x5c);
    num11++;
    buf.Add((byte)0x73);
    num11++;
    buf.Add((byte)0x74);
    num11++;
    buf.Add((byte)0x72);
    num11++;
    buf.Add((byte)0x69);
    num11++;
    buf.Add((byte)0x6b);
    num11++;
    buf.Add((byte)0x65);
    num11++;
    buf.Add((byte)0x20);
    flag16 = true;
    if (class4.b[num + 7] == 0x20)
    {
        while ((class4.b[num + 7] != 0x3e) && (num < max))
        {
            num++;
        }
    }
    num += 7;
    num30++;
    if (num30 <= 0)
    {
        num30 = 1;
    }
    goto Label_134B7;
}
if (((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x73) || (class4.b[num + 2] == 0x53))) && (((class4.b[num + 3] == 0x74) || (class4.b[num + 3] == 0x54)) && ((class4.b[num + 4] == 0x72) || (class4.b[num + 4] == 0x52)))) && ((((class4.b[num + 5] == 0x69) || (class4.b[num + 5] == 0x49)) && ((class4.b[num + 6] == 0x6b) || (class4.b[num + 6] == 0x4b))) && (((class4.b[num + 7] == 0x65) || (class4.b[num + 7] == 0x45)) && (class4.b[num + 8] == 0x3e))))
{
    if (num30 > 0)
    {
        buf.Add((byte)0x7d);
        num11++;
        flag16 = false;
    }
    num30--;
    num += 8;
    goto Label_134B7;
}
if (((class4.b[num] == 60) && ((class4.b[num + 1] == 0x73) || (class4.b[num + 1] == 0x53))) && ((class4.b[num + 2] == 0x3e) || (class4.b[num + 2] == 0x20)))
{
    num11++;
    buf.Add((byte)0x7b);
    num11++;
    buf.Add((byte)0x5c);
    num11++;
    buf.Add((byte)0x73);
    num11++;
    buf.Add((byte)0x74);
    num11++;
    buf.Add((byte)0x72);
    num11++;
    buf.Add((byte)0x69);
    num11++;
    buf.Add((byte)0x6b);
    num11++;
    buf.Add((byte)0x65);
    num11++;
    buf.Add((byte)0x20);
    flag16 = true;
    if (class4.b[num + 2] == 0x20)
    {
        while ((class4.b[num + 2] != 0x3e) && (num < max))
        {
            num++;
        }
    }
    num += 2;
    num30++;
    if (num30 <= 0)
    {
        num30 = 1;
    }
    goto Label_134B7;
}
if ((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x73) || (class4.b[num + 2] == 0x53))) && (class4.b[num + 3] == 0x3e))
{
    if (num30 > 0)
    {
        buf.Add((byte)0x7d);
        num11++;
        flag16 = false;
    }
    num30--;
    num += 3;
    goto Label_134B7;
}
if ((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x73) || (class4.b[num + 1] == 0x53))) && (((class4.b[num + 2] == 0x75) || (class4.b[num + 2] == 0x55)) && ((class4.b[num + 3] == 0x62) || (class4.b[num + 3] == 0x42)))) && ((class4.b[num + 4] == 0x3e) || (class4.b[num + 4] == 0x20)))
{
    if (class4.b[num + 4] == 0x20)
    {
        while ((class4.b[num + 4] != 0x3e) && (num < max))
        {
            num++;
        }
    }
    buf.Add(str22);
    num11 += num53;
    num += 4;
    if (!flag3)
    {
        buf.Add(class8);
        num11 += class8.len;
    }
    if (!flag5)
    {
        buf.Add(newb);
        num11 += newb.len;
    }
    goto Label_134B7;
}
if (((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x73) || (class4.b[num + 2] == 0x53))) && (((class4.b[num + 3] == 0x75) || (class4.b[num + 3] == 0x55)) && ((class4.b[num + 4] == 0x62) || (class4.b[num + 4] == 0x42)))) && (class4.b[num + 5] == 0x3e))
{
    buf.Add("}");
    num11++;
    flag16 = false;
    num += 5;
    goto Label_134B7;
}
if ((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x73) || (class4.b[num + 1] == 0x53))) && (((class4.b[num + 2] == 0x75) || (class4.b[num + 2] == 0x55)) && ((class4.b[num + 3] == 0x70) || (class4.b[num + 3] == 80)))) && ((class4.b[num + 4] == 0x3e) || (class4.b[num + 4] == 0x20)))
{
    if (class4.b[num + 4] == 0x20)
    {
        while ((class4.b[num + 4] != 0x3e) && (num < max))
        {
            num++;
        }
    }
    buf.Add(str23);
    num11 += num54;
    num += 4;
    if (!flag3)
    {
        buf.Add(class8);
        num11 += class8.len;
    }
    if (!flag5)
    {
        buf.Add(newb);
        num11 += newb.len;
    }
    goto Label_134B7;
}
if (((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x73) || (class4.b[num + 2] == 0x53))) && (((class4.b[num + 3] == 0x75) || (class4.b[num + 3] == 0x55)) && ((class4.b[num + 4] == 0x70) || (class4.b[num + 4] == 80)))) && (class4.b[num + 5] == 0x3e))
{
    buf.Add("}");
    num11++;
    flag16 = false;
    num += 5;
    goto Label_134B7;
}
if ((((class4.b[num] == 60) && ((class4.b[num + 1] == 100) || (class4.b[num + 1] == 0x44))) && (((class4.b[num + 2] == 0x69) || (class4.b[num + 2] == 0x49)) && ((class4.b[num + 3] == 0x76) || (class4.b[num + 3] == 0x56)))) && ((class4.b[num + 4] == 0x3e) || (class4.b[num + 4] == 0x20)))
{
    num += 4;
    if (flag12)
    {
        if (num34 < 2)
        {
            num34++;
            num5 = 1;
        }
        else
        {
            num34 = 1;
            num5 = 0;
        }
    }
    if (buf.len < (num12 + 2))
    {
        num5 = 1;
    }
    if (num5 == 0)
    {
        if (_tablesArray[num36].table)
        {
            buf.Add(this.DIV_TBL_STR);
            num11 += this.DIV_TBL_STR.Length;
            if ((num36 > 0) && (this._preserveNestedTables == 1))
            {
                str11 = @"\itap" + _tablesArray[num36].table_level + " ";
                buf.Add(str11);
                num11 += str11.Length;
            }
        }
        else
        {
            buf.Add(this.DIV_STR);
            num11 += this.DIV_STR.Length;
        }
        num5 = 1;
    }
    if (!flag3)
    {
        buf.Add(class8);
        num11 += class8.len;
    }
    if (!flag5)
    {
        buf.Add(newb);
        num11 += newb.len;
    }
    this.CSS_insert(class22, class18, class19, class20, class21, align, class4, ref num, buf, ref num11, max, _params, ref flag4, class10, class14, ref num21, ref flag16, ref flag5, newb, list, list2, CSS_tag_type.DIV_CSS);
    goto Label_134B7;
}
if (((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 100) || (class4.b[num + 2] == 0x44))) && (((class4.b[num + 3] == 0x69) || (class4.b[num + 3] == 0x49)) && ((class4.b[num + 4] == 0x76) || (class4.b[num + 4] == 0x56)))) && (class4.b[num + 5] == 0x3e))
{
    if (flag12)
    {
        if (num34 < 2)
        {
            num34++;
            num5 = 1;
        }
        else
        {
            num34 = 1;
            num5 = 0;
        }
    }
    if (num5 == 0)
    {
        if (_tablesArray[num36].table)
        {
            buf.Add(this.DIV_TBL_STR);
            num11 += this.DIV_TBL_STR.Length;
            if ((num36 > 0) && (this._preserveNestedTables == 1))
            {
                str11 = @"\itap" + _tablesArray[num36].table_level + " ";
                buf.Add(str11);
                num11 += str11.Length;
            }
        }
        else
        {
            buf.Add(this.DIV_STR);
            num11 += this.DIV_STR.Length;
        }
        if (!flag3)
        {
            buf.Add(class8);
            num11 += class8.len;
        }
        if (!flag5)
        {
            buf.Add(newb);
            num11 += newb.len;
        }
        num5 = 1;
    }
    num += 5;
    this.CSS_close(class22, class18, align, buf, ref num11, _params, ref flag4, class10, class14, ref num21, ref flag16, ref flag5, newb, fontsize, CSS_tag_type.DIV_CSS);
    goto Label_134B7;
}
if ((((num5 == 0) && (class4.b[num] == 60)) && ((class4.b[num + 1] == 100) || (class4.b[num + 1] == 0x44))) && (((class4.b[num + 2] == 0x6c) || (class4.b[num + 2] == 0x4c)) && (class4.b[num + 3] == 0x3e)))
{
    if (_tablesArray[num36].table)
    {
        buf.Add(str15);
        if ((num36 > 0) && (this._preserveNestedTables == 1))
        {
            str11 = @"\itap" + _tablesArray[num36].table_level + " ";
            buf.Add(str11);
            num11 += str11.Length;
        }
    }
    else
    {
        buf.Add(str14);
    }
    num += 3;
    num5 = 1;
    if (!flag3)
    {
        buf.Add(class8);
        num11 += class8.len;
    }
    if (!flag5)
    {
        buf.Add(newb);
        num11 += newb.len;
    }
    goto Label_134B7;
}
if (((((num5 == 0) && (class4.b[num] == 60)) && (class4.b[num + 1] == 0x2f)) && (((class4.b[num + 2] == 100) || (class4.b[num + 2] == 0x44)) && ((class4.b[num + 3] == 100) || (class4.b[num + 3] == 0x44)))) && (class4.b[num + 4] == 0x3e))
{
    if (_tablesArray[num36].table)
    {
        buf.Add(str15);
        if ((num36 > 0) && (this._preserveNestedTables == 1))
        {
            str11 = @"\itap" + _tablesArray[num36].table_level + " ";
            buf.Add(str11);
            num11 += str11.Length;
        }
    }
    else
    {
        buf.Add(str14);
    }
    num += 4;
    if (!flag3)
    {
        buf.Add(class8);
        num11 += class8.len;
    }
    if (!flag5)
    {
        buf.Add(newb);
        num11 += newb.len;
    }
    goto Label_134B7;
}
if (((((this._preserveAlignment == 1) && (class4.b[num] == 60)) && ((class4.b[num + 1] == 0x63) || (class4.b[num + 1] == 0x43))) && (((class4.b[num + 2] == 0x65) || (class4.b[num + 2] == 0x45)) && ((class4.b[num + 3] == 110) || (class4.b[num + 3] == 0x4e)))) && ((((class4.b[num + 4] == 0x74) || (class4.b[num + 4] == 0x54)) && ((class4.b[num + 5] == 0x65) || (class4.b[num + 5] == 0x45))) && (((class4.b[num + 6] == 0x72) || (class4.b[num + 6] == 0x52)) && ((class4.b[num + 7] == 0x3e) || (class4.b[num + 7] == 0x20)))))
{
    if (num5 == 0)
    {
        if (_tablesArray[num36].table)
        {
            buf.Add(str15);
            if ((num36 > 0) && (this._preserveNestedTables == 1))
            {
                str11 = @"\itap" + _tablesArray[num36].table_level + " ";
                buf.Add(str11);
                num11 += str11.Length;
            }
        }
        else
        {
            buf.Add(str14);
        }
        num5 = 1;
    }
    num11++;
    buf.Add((byte)0x5c);
    num11++;
    buf.Add((byte)0x71);
    num11++;
    buf.Add((byte)0x63);
    num11++;
    buf.Add((byte)0x20);
    if (class4.b[num + 7] == 0x20)
    {
        while ((class4.b[num + 7] != 0x3e) && (num < max))
        {
            num++;
        }
    }
    num += 7;
    num52 = 1;
    goto Label_134B7;
}
if ((((((this._preserveAlignment == 1) && (class4.b[num] == 60)) && (class4.b[num + 1] == 0x2f)) && (((class4.b[num + 2] == 0x63) || (class4.b[num + 2] == 0x43)) && ((class4.b[num + 3] == 0x65) || (class4.b[num + 3] == 0x45)))) && ((((class4.b[num + 4] == 110) || (class4.b[num + 4] == 0x4e)) && ((class4.b[num + 5] == 0x74) || (class4.b[num + 5] == 0x54))) && (((class4.b[num + 6] == 0x65) || (class4.b[num + 6] == 0x45)) && ((class4.b[num + 7] == 0x72) || (class4.b[num + 7] == 0x52))))) && (class4.b[num + 8] == 0x3e))
{
    if (num5 == 0)
    {
        if (_tablesArray[num36].table)
        {
            buf.Add(str15);
            if ((num36 > 0) && (this._preserveNestedTables == 1))
            {
                str11 = @"\itap" + _tablesArray[num36].table_level + " ";
                buf.Add(str11);
                num11 += str11.Length;
            }
        }
        else
        {
            buf.Add(str14);
        }
        num5 = 1;
    }
    num11++;
    buf.Add((byte)0x5c);
    num11++;
    buf.Add((byte)0x71);
    num11++;
    buf.Add(num23);
    num11++;
    buf.Add((byte)0x20);
    num += 8;
    num52 = 0;
    goto Label_134B7;
}
if ((((this._preserveHyperlinks == 1) && (class4.b[num] == 60)) && ((class4.b[num + 1] == 0x61) || (class4.b[num + 1] == 0x41))) && this.IS_DELIMITER(class4.b[num + 2]))
{
    if (flag8)
    {
        buf.Add("}}}");
    }
    flag8 = false;
    num += 2;
    flag10 = false;
    while ((class4.b[num] != 0x3e) && (num < max))
    {
        if (((!this.IS_DELIMITER(class4.b[num]) || ((class4.b[num + 1] != 0x68) && (class4.b[num + 1] != 0x48))) || (((class4.b[num + 2] != 0x72) && (class4.b[num + 2] != 0x52)) || ((class4.b[num + 3] != 0x65) && (class4.b[num + 3] != 0x45)))) || ((((class4.b[num + 4] != 0x66) && (class4.b[num + 4] != 70)) || (class4.b[num + 5] != 0x3d)) || ((class4.b[num + 6] != 0x22) && (class4.b[num + 6] != 0x27))))
        {
            goto Label_CAA6;
        }
        if (class4.b[num + 6] == 0x27)
        {
            flag10 = true;
        }
        num += 6;
        num7 = 0;
        class16.Clear();
        class16.Add(class4.b[num++]);
        num7++;
        flag19 = true;
        for (num38 = 0; (num38 < 500) && ((num + num38) < num10); num38++)
        {
            if ((((class4.b[num + num38] == 60) && (class4.b[(num + 1) + num38] == 0x2f)) && ((class4.b[(num + 2) + num38] == 0x61) || (class4.b[(num + 2) + num38] == 0x41))) && (class4.b[(num + 3) + num38] == 0x3e))
            {
                break;
            }
            if ((((class4.b[num + num38] == 60) && ((class4.b[(num + 1) + num38] == 0x69) || (class4.b[(num + 1) + num38] == 0x49))) && (((class4.b[(num + 2) + num38] == 0x6d) || (class4.b[(num + 2) + num38] == 0x4d)) && ((class4.b[(num + 3) + num38] == 0x67) || (class4.b[(num + 3) + num38] == 0x47)))) && (class4.b[(num + 4) + num38] == 0x20))
            {
                flag19 = false;
            }
        }
        if (flag19 || (this._preserveImages != 0))
        {
            goto Label_C8DF;
        }
        continue;
    Label_C8A4:
        if ((class4.b[num] == 0x27) && flag10)
        {
            goto Label_C901;
        }
    class16.Add(class4.b[num]);
    num++;
    if (num7 < (this.HYPERLINK_SIZE - 5))
    {
        num7++;
    }
Label_C8DF:
    if (((class4.b[num] != 0x22) && (num < max)) && (class4.b[num] != 0x3e))
    {
        goto Label_C8A4;
    }
Label_C901:
class16.Add(class4.b[num]);
class17.Clear();
for (num7 = 0; num7 < class16.len; num7++)
{
    if (flag10 && (class16.b[num7] == 0x27))
    {
        class17.Add("\"");
    }
    else
    {
        class17.Add(class16.b[num7]);
    }
}
class15.Clear();
if (class17.len > 1)
{
    if (class17.b[1] == 0x23)
    {
        num7 = 1;
        while (class17.b[num7] == 0)
        {
            class17.b[num7] = class17.b[num7++ + 1];
        }
        if (class17.b[1] != 0x22)
        {
            class15.Clear();
            class15.Add(@"{\field\fldedit{\*\fldinst { HYPERLINK \\l " + class17.ByteToString() + @" }}{\fldrslt {" + (!flag19 ? "" : @"\ul\cf2") + " ");
        }
    }
    else
    {
        if (class17.b[1] != 0x22)
        {
            class15.Clear();
        }
        class15.Add(@"{\field\fldedit{\*\fldinst { HYPERLINK " + class17.ByteToString() + @" }}{\fldrslt {" + (!flag19 ? "" : @"\ul\cf2") + " ");
    }
}
if (class15.len != 0)
{
    class15.ByteToString();
    buf.Add(class15);
    num11 += class15.len;
    flag8 = true;
}
Label_CAA6:
if (((((class4.b[num] != 110) && (class4.b[num] != 0x4e)) || ((class4.b[num + 1] != 0x61) && (class4.b[num + 1] != 0x41))) || (((class4.b[num + 2] != 0x6d) && (class4.b[num + 2] != 0x4d)) || ((class4.b[num + 3] != 0x65) && (class4.b[num + 3] != 0x45)))) || ((class4.b[num + 4] != 0x3d) || ((class4.b[num + 5] != 0x22) && (class4.b[num + 5] != 0x27))))
{
    goto Label_CDEA;
}
if (class4.b[num + 5] == 0x27)
{
    flag10 = true;
}
num += 5;
num7 = 0;
class16.Clear();
class16.Add(class4.b[num++]);
num7++;
flag19 = true;
for (num38 = 0; (num38 < 500) && ((num + num38) < num10); num38++)
{
    if ((((class4.b[num + num38] == 60) && (class4.b[(num + 1) + num38] == 0x2f)) && ((class4.b[(num + 2) + num38] == 0x61) || (class4.b[(num + 2) + num38] == 0x41))) && (class4.b[(num + 3) + num38] == 0x3e))
    {
        break;
    }
    if ((((class4.b[num + num38] == 60) && ((class4.b[(num + 1) + num38] == 0x69) || (class4.b[(num + 1) + num38] == 0x49))) && (((class4.b[(num + 2) + num38] == 0x6d) || (class4.b[(num + 2) + num38] == 0x4d)) && ((class4.b[(num + 3) + num38] == 0x67) || (class4.b[(num + 3) + num38] == 0x47)))) && (class4.b[(num + 4) + num38] == 0x20))
    {
        flag19 = false;
    }
}
if (flag19 || (this._preserveImages != 0))
{
    goto Label_CD11;
}
continue;
Label_CCD6:
if ((class4.b[num] == 0x27) && flag10)
{
    goto Label_CD33;
}
class16.Add(class4.b[num]);
num++;
if (num7 < (this.HYPERLINK_SIZE - 5))
{
    num7++;
}
Label_CD11:
if (((class4.b[num] != 0x22) && (num < max)) && (class4.b[num] != 0x3e))
{
    goto Label_CCD6;
}
Label_CD33:
class16.Add(class4.b[num]);
num7++;
class17.Clear();
for (num7 = 0; class16.b[num7] != 0; num7++)
{
    if ((!flag10 && (class16.b[num7] != 0x22)) || (flag10 && (class16.b[num7] != 0x27)))
    {
        class17.Add(class16.b[num7]);
    }
}
class15.Clear();
class15.Add(string.Concat(new object[] { @"{\*\bkmkstart ", class17, @"}{\*\bkmkend ", class17, "}" }));
buf.Add(class15);
Label_CDEA:
if (((((class4.b[num] == 0x74) || (class4.b[num] == 0x54)) && ((class4.b[num + 1] == 0x69) || (class4.b[num + 1] == 0x49))) && (((class4.b[num + 2] == 0x74) || (class4.b[num + 2] == 0x54)) && ((class4.b[num + 3] == 0x6c) || (class4.b[num + 3] == 0x4c)))) && (((class4.b[num + 4] == 0x65) || (class4.b[num + 4] == 0x45)) && ((class4.b[num + 5] == 0x3d) || this.IS_DELIMITER(class4.b[num + 5]))))
{
    num += 5;
    this.ReadValue(class4, ref num, class17);
}
num++;
    }
    goto Label_134B7;
}
if ((((this._preserveHyperlinks == 1) && (class4.b[num] == 60)) && (class4.b[num + 1] == 0x2f)) && (((class4.b[num + 2] == 0x61) || (class4.b[num + 2] == 0x41)) && (class4.b[num + 3] == 0x3e)))
{
    if (flag8)
    {
        buf.Add("}}}");
        num11 += 3;
    }
    flag8 = false;
    num += 3;
    goto Label_134B7;
}
if (((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x62) || (class4.b[num + 1] == 0x42))) && (((class4.b[num + 2] == 0x6c) || (class4.b[num + 2] == 0x4c)) && ((class4.b[num + 3] == 0x6f) || (class4.b[num + 3] == 0x4f)))) && ((((class4.b[num + 4] == 0x63) || (class4.b[num + 4] == 0x43)) && ((class4.b[num + 5] == 0x6b) || (class4.b[num + 5] == 0x4b))) && (((class4.b[num + 6] == 0x71) || (class4.b[num + 6] == 0x51)) && ((class4.b[num + 7] == 0x75) || (class4.b[num + 7] == 0x55))))) && ((((class4.b[num + 8] == 0x6f) || (class4.b[num + 8] == 0x4f)) && ((class4.b[num + 9] == 0x74) || (class4.b[num + 9] == 0x54))) && (((class4.b[num + 10] == 0x65) || (class4.b[num + 10] == 0x45)) && ((class4.b[num + 11] == 0x3e) || (class4.b[num + 11] == 0x20)))))
{
    if (class4.b[num + 11] == 0x20)
    {
        while ((class4.b[num + 11] != 0x3e) && (num < max))
        {
            num++;
        }
    }
    num += 11;
    num27 = (byte)(num27 + 1);
    if (num5 != 0)
    {
        buf.Add(str9);
        num11 += str9.Length;
    }
    str14 = str14 + str9;
    str15 = str15 + str9;
    if (_tablesArray[num36].table)
    {
        buf.Add(str15);
        if ((num36 > 0) && (this._preserveNestedTables == 1))
        {
            str11 = @"\itap" + _tablesArray[num36].table_level + " ";
            buf.Add(str11);
            num11 += str11.Length;
        }
    }
    else
    {
        buf.Add(str14);
    }
    num5 = 1;
    goto Label_134B7;
}
if ((((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x62) || (class4.b[num + 2] == 0x42))) && (((class4.b[num + 3] == 0x6c) || (class4.b[num + 3] == 0x4c)) && ((class4.b[num + 4] == 0x6f) || (class4.b[num + 4] == 0x4f)))) && ((((class4.b[num + 5] == 0x63) || (class4.b[num + 5] == 0x43)) && ((class4.b[num + 6] == 0x6b) || (class4.b[num + 6] == 0x4b))) && (((class4.b[num + 7] == 0x71) || (class4.b[num + 7] == 0x51)) && ((class4.b[num + 8] == 0x75) || (class4.b[num + 8] == 0x55))))) && ((((class4.b[num + 9] == 0x6f) || (class4.b[num + 9] == 0x4f)) && ((class4.b[num + 10] == 0x74) || (class4.b[num + 10] == 0x54))) && (((class4.b[num + 11] == 0x65) || (class4.b[num + 11] == 0x45)) && (class4.b[num + 12] == 0x3e))))
{
    num += 12;
    if ((num5 != 0) && (buf.ToByteCStartPos(buf.len - str9.Length).byteCmp(str9) == 0))
    {
        buf.len -= str9.Length;
    }
    if (num27 > 0)
    {
        str15 = str15.Substring(0, str15.Length - str9.Length);
    }
    num27 = (byte)(num27 - 1);
    if (num27 < 0)
    {
        num27 = 0;
    }
    if (_tablesArray[num36].table)
    {
        buf.Add(str15);
        if ((num36 > 0) && (this._preserveNestedTables == 1))
        {
            str11 = @"\itap" + _tablesArray[num36].table_level + " ";
            buf.Add(str11);
            num11 += str11.Length;
        }
    }
    else
    {
        buf.Add(str14);
    }
    num5 = 1;
    goto Label_134B7;
}
if ((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x70) || (class4.b[num + 1] == 80))) && (((class4.b[num + 2] == 0x72) || (class4.b[num + 2] == 0x52)) && ((class4.b[num + 3] == 0x65) || (class4.b[num + 3] == 0x45)))) && (class4.b[num + 4] == 0x3e))
{
    num += 4;
    flag11 = true;
    num4 = 1;
    goto Label_134B7;
}
if (((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x70) || (class4.b[num + 2] == 80))) && (((class4.b[num + 3] == 0x72) || (class4.b[num + 3] == 0x52)) && ((class4.b[num + 4] == 0x65) || (class4.b[num + 4] == 0x45)))) && (class4.b[num + 5] == 0x3e))
{
    num += 5;
    flag11 = false;
    goto Label_134B7;
}
if ((class4.b[num] == 0x26) && (num4 != 0))
{
    num += this.special_symbols_rtf(class4, num, max, class24, charset != 0);
    buf.Add(class24);
    num11 += class24.len;
    num5 = 0;
    goto Label_134B7;
}
if (((class4.b[num] == 0x7b) || (class4.b[num] == 0x7d)) && !hieroglyph)
{
    if (num4 != 0)
    {
        num11++;
        buf.Add((byte)0x5c);
        num11++;
        buf.Add(class4.b[num]);
    }
    goto Label_134B7;
}
if (((class4.b[num] == 0x5c) && (num4 != 0)) && !hieroglyph)
{
    buf.Add(@"\\");
    num11 += 2;
    goto Label_134B7;
}
if (this._preserveTables != 1)
{
    goto Label_1143D;
}
if ((this._preserveNestedTables == 0) && (this._preserveTableWidth == 0))
{
    if (((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x74) || (class4.b[num + 1] == 0x54))) && ((class4.b[num + 2] == 0x61) || (class4.b[num + 2] == 0x41))) && (((class4.b[num + 3] == 0x62) || (class4.b[num + 3] == 0x42)) && ((class4.b[num + 4] == 0x6c) || (class4.b[num + 4] == 0x4c)))) && (((class4.b[num + 5] == 0x65) || (class4.b[num + 5] == 0x45)) && ((class4.b[num + 6] == 0x20) || (class4.b[num + 6] == 0x3e))))
    {
        _tablesArray[num36].table_border_visible = flag17;
        if (class4.b[num + 6] == 0x20)
        {
            if (this._borderVisibility == eBorderVisibility.SameAsOriginalHtml)
            {
                _tablesArray[num36].table_border_visible = false;
                _tablesArray[num36].table_border_visible = this.get_border(class4, num, max);
            }
            _tablesArray[num36].table_p.percent_width = 0;
            int num63 = -1111;
            _tablesArray[num36].table_p.table_width = this.get_width(class4, num, max, ref _tablesArray[num36].table_p.percent_width, ref index, ref index, null, num63, ref num63, null, ref num63, ref num63);
            while ((class4.b[num + 6] != 0x3e) && (num < max))
            {
                num++;
            }
        }
        if (_tablesArray[num36].table)
        {
            while (_tablesArray[num36].cell > 0)
            {
                buf.Add(this.LF + @"\pard \intbl\cell");
                num11 += 0x12;
                nest_tables _tables8 = _tablesArray[num36];
                _tables8.cell--;
            }
            buf.Add(this.LF + @"\pard \intbl \row");
            num11 += 0x12;
        }
        _tablesArray[num36].table = false;
        num4 = 0;
        if (flag21 && (num5 == 0))
        {
            buf.Add(this.LF + @"\pard\par" + this.LF);
            num11 += 11;
        }
        num += 6;
        goto Label_134B7;
    }
    if ((((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x74) || (class4.b[num + 2] == 0x54))) && ((class4.b[num + 3] == 0x61) || (class4.b[num + 3] == 0x41))) && (((class4.b[num + 4] == 0x62) || (class4.b[num + 4] == 0x42)) && ((class4.b[num + 5] == 0x6c) || (class4.b[num + 5] == 0x4c)))) && (((class4.b[num + 6] == 0x65) || (class4.b[num + 6] == 0x45)) && (class4.b[num + 7] == 0x3e)))
    {
        _tablesArray[num36].table = false;
        if (class4.len > 1)
        {
            while ((class4.len > 1) && this.IS_DELIMITER(class4.b[buf.len - 1]))
            {
                class4.len--;
            }
        }
        buf.Add(@"\pard" + this.LF);
        num11 += 6;
        num += 7;
        flag21 = false;
        goto Label_134B7;
    }
    if ((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x74) || (class4.b[num + 1] == 0x54))) && ((class4.b[num + 2] == 0x72) || (class4.b[num + 2] == 0x52))) && ((class4.b[num + 3] == 0x3e) || (class4.b[num + 3] == 0x20)))
    {
        if (class4.b[num + 3] == 0x20)
        {
            while ((class4.b[num + 3] != 0x3e) && (num < max))
            {
                num++;
            }
        }
        num += 3;
        if (_tablesArray[num36].table)
        {
            while (_tablesArray[num36].cell > 0)
            {
                buf.Add(this.LF + @"\pard \intbl\cell");
                num11 += 0x12;
                nest_tables _tables9 = _tablesArray[num36];
                _tables9.cell--;
            }
            buf.Add(@"\pard \intbl \row" + this.LF);
            num11 += 0x12;
        }
        if (((buf.len > 1) && (buf.b[buf.len - 1] == 0x20)) && this.IS_DELIMITER(buf.b[buf.len - 2]))
        {
            buf.len--;
        }
        buf.Add(s);
        num11 += s.Length;
        if (_tablesArray[num36].table_p.tableAlign != 0)
        {
            if (_tablesArray[num36].table_p.tableAlign == this.ALIGN_CENTER)
            {
                buf.Add(@"\trqc ");
                num11 += 6;
            }
            else if (_tablesArray[num36].table_p.tableAlign == this.ALIGN_RIGHT)
            {
                buf.Add(@"\trqr ");
                num11 += 6;
            }
        }
        _tablesArray[num36].table = true;
        for (num7 = 0; num7 < this.MAX_COLUMNS; num7++)
        {
            _tablesArray[num36].td_width[num7] = 0;
            _tablesArray[num36].td_percent_width[num7] = 0;
        }
        _tablesArray[num36].td = 0;
        for (num7 = 0; (num + num7) < max; num7++)
        {
            if ((((((class4.b[num + num7] == 60) && (class4.b[(num + num7) + 1] == 0x2f)) && ((class4.b[(num + num7) + 2] == 0x74) || (class4.b[(num + num7) + 2] == 0x54))) && ((class4.b[(num + num7) + 3] == 0x72) || (class4.b[(num + num7) + 3] == 0x52))) && (class4.b[(num + num7) + 4] == 0x3e)) || ((((class4.b[num + num7] == 60) && ((class4.b[(num + num7) + 1] == 0x74) || (class4.b[(num + num7) + 1] == 0x54))) && ((class4.b[(num + num7) + 2] == 0x72) || (class4.b[(num + num7) + 2] == 0x52))) && ((class4.b[(num + num7) + 3] == 0x3e) || (class4.b[(num + num7) + 3] == 0x20))))
            {
                break;
            }
            if ((((class4.b[num + num7] == 60) && ((class4.b[(num + num7) + 1] == 0x74) || (class4.b[(num + num7) + 1] == 0x54))) && (((class4.b[(num + num7) + 2] == 100) || (class4.b[(num + num7) + 2] == 0x44)) || ((class4.b[(num + num7) + 2] == 0x68) || (class4.b[(num + num7) + 2] == 0x48)))) && ((class4.b[(num + num7) + 3] == 0x3e) || (class4.b[(num + num7) + 3] == 0x20)))
            {
                nest_tables _tables10 = _tablesArray[num36];
                _tables10.td++;
                if (class4.b[(num + num7) + 3] == 0x20)
                {
                    num7 += 3;
                    int bgcolor = -1111;
                    _tablesArray[num36].td_width[_tablesArray[num36].td - 1] = this.get_width(class4, num + num7, max, ref _tablesArray[num36].td_percent_width[_tablesArray[num36].td - 1], ref index, ref index, null, -1111, ref bgcolor, null, ref bgcolor, ref bgcolor);
                }
            }
            if (((((class4.b[num + num7] == 60) && ((class4.b[(num + num7) + 1] == 0x74) || (class4.b[(num + num7) + 1] == 0x54))) && ((class4.b[(num + num7) + 2] == 0x61) || (class4.b[(num + num7) + 2] == 0x41))) && (((class4.b[(num + num7) + 3] == 0x62) || (class4.b[(num + num7) + 3] == 0x42)) && ((class4.b[(num + num7) + 4] == 0x6c) || (class4.b[(num + num7) + 4] == 0x4c)))) && (((class4.b[(num + num7) + 5] == 0x65) || (class4.b[(num + num7) + 5] == 0x45)) && ((class4.b[(num + num7) + 6] == 0x20) || (class4.b[(num + num7) + 6] == 0x3e))))
            {
                break;
            }
        }
        _tablesArray[num36].cell = _tablesArray[num36].td;
        this.fill_columns_width(_tablesArray[num36].td_width, _tablesArray[num36].td_percent_width, _tablesArray[num36].td, _tablesArray[num36].table_p.table_width, _tablesArray[num36].table_p.percent_width, this.SCREEN_W_DEF);
        if (_tablesArray[num36].td != 0)
        {
            for (num7 = 0; num7 < _tablesArray[num36].td; num7++)
            {
                if (_tablesArray[num36].table_border_visible)
                {
                    buf.Add(this.LF + @"\clbrdrl\brdrs\clbrdrt\brdrs\clbrdrr\brdrs\clbrdrb\brdrs\cellx");
                }
                else
                {
                    buf.Add(this.LF + @"\cellx");
                    num11 += 7;
                }
                str12 = _tablesArray[num36].td_width[num7].ToString();
                buf.Add(str12);
                num11 += str12.Length;
            }
        }
        goto Label_134B7;
    }
    if ((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x74) || (class4.b[num + 1] == 0x54))) && (((class4.b[num + 2] == 100) || (class4.b[num + 2] == 0x44)) || ((class4.b[num + 2] == 0x68) || (class4.b[num + 2] == 0x48)))) && ((class4.b[num + 3] == 0x3e) || this.IS_DELIMITER(class4.b[num + 3])))
    {
        buf.Add(this.LF + @"\pard \intbl ");
        num11 += 14;
        if (this.IS_DELIMITER(class4.b[num + 3]))
        {
            while (!this.IS_XTHAN(class4.b[num + 3]) && (num < max))
            {
                if (this._preserveAlignment == 1)
                {
                    if (((((class4.b[num] == 0x63) || (class4.b[num] == 0x43)) && ((class4.b[num + 1] == 0x65) || (class4.b[num + 1] == 0x45))) && (((class4.b[num + 2] == 110) || (class4.b[num + 2] == 0x4e)) && ((class4.b[num + 3] == 0x74) || (class4.b[num + 3] == 0x54)))) && (((class4.b[num + 4] == 0x65) || (class4.b[num + 4] == 0x45)) && ((class4.b[num + 5] == 0x72) || (class4.b[num + 5] == 0x52))))
                    {
                        align = class19;
                    }
                    if (((((class4.b[num] == 0x6d) || (class4.b[num] == 0x4d)) && ((class4.b[num + 1] == 0x69) || (class4.b[num + 1] == 0x49))) && (((class4.b[num + 2] == 100) || (class4.b[num + 2] == 0x44)) && ((class4.b[num + 3] == 100) || (class4.b[num + 3] == 0x44)))) && (((class4.b[num + 4] == 0x6c) || (class4.b[num + 4] == 0x4c)) && ((class4.b[num + 5] == 0x65) || (class4.b[num + 5] == 0x45))))
                    {
                        align = class19;
                    }
                    if ((((class4.b[num] == 0x6c) || (class4.b[num] == 0x4c)) && ((class4.b[num + 1] == 0x65) || (class4.b[num + 1] == 0x45))) && (((class4.b[num + 2] == 0x66) || (class4.b[num + 2] == 70)) && ((class4.b[num + 3] == 0x74) || (class4.b[num + 3] == 0x54))))
                    {
                        align = class20;
                    }
                    if (((((class4.b[num] == 0x72) || (class4.b[num] == 0x52)) && ((class4.b[num + 1] == 0x69) || (class4.b[num + 1] == 0x49))) && (((class4.b[num + 2] == 0x67) || (class4.b[num + 2] == 0x47)) && ((class4.b[num + 3] == 0x68) || (class4.b[num + 3] == 0x48)))) && ((class4.b[num + 4] == 0x74) || (class4.b[num + 4] == 0x54)))
                    {
                        align = class21;
                    }
                }
                if (((((this._preserveBackgroundColor == 1) && ((class4.b[num] == 0x62) || (class4.b[num] == 0x42))) && ((class4.b[num + 1] == 0x67) || (class4.b[num + 1] == 0x47))) && (((class4.b[num + 2] == 0x63) || (class4.b[num + 2] == 0x43)) && ((class4.b[num + 3] == 0x6f) || (class4.b[num + 3] == 0x4f)))) && ((((class4.b[num + 4] == 0x6c) || (class4.b[num + 4] == 0x4c)) && ((class4.b[num + 5] == 0x6f) || (class4.b[num + 5] == 0x4f))) && (((class4.b[num + 6] == 0x72) || (class4.b[num + 6] == 0x52)) && (class4.b[num + 7] == 0x3d))))
                {
                    num += 8;
                    this.read_color(class4, ref num, max, class10);
                    for (num7 = 0; num7 < num14; num7++)
                    {
                        if (class10.byteCmpi((string)list2[num7]) == 0)
                        {
                            _tablesArray[num36].td_bg = num7 + 3;
                        }
                    }
                }
                num++;
            }
        }
        if (this._preserveAlignment == 1)
        {
            buf.Add(align);
            num11 += len;
        }
        num += 3;
        num4 = 0;
        goto Label_134B7;
    }
    if (((((_tablesArray[num36].table && (class4.b[num] == 60)) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x74) || (class4.b[num + 2] == 0x54))) && (((class4.b[num + 3] == 100) || (class4.b[num + 3] == 0x44)) || ((class4.b[num + 3] == 0x68) || (class4.b[num + 3] == 0x48)))) && (class4.b[num + 4] == 0x3e))
    {
        buf.Add(@"\cell");
        num11 += 5;
        num += 4;
        nest_tables _tables11 = _tablesArray[num36];
        _tables11.cell--;
        if (this._preserveBackgroundColor == 1)
        {
            _tablesArray[num36].td_bg = 0;
        }
        if (this._preserveAlignment == 1)
        {
            align.Clear();
            align.Add(class22);
            buf.Add(align);
            num11 += align.len;
        }
        goto Label_134B7;
    }
    if (((((_tablesArray[num36].table && (class4.b[num] == 60)) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x74) || (class4.b[num + 2] == 0x54))) && ((class4.b[num + 3] == 0x72) || (class4.b[num + 3] == 0x52))) && (class4.b[num + 4] == 0x3e))
    {
        while (_tablesArray[num36].cell > 0)
        {
            buf.Add(this.LF + @"\pard \intbl\cell");
            num11 += 0x12;
            nest_tables _tables12 = _tablesArray[num36];
            _tables12.cell--;
        }
        buf.Add(@"\pard \intbl \row" + this.LF);
        num11 += 0x12;
        num += 4;
        _tablesArray[num36].table = false;
        goto Label_134B7;
    }
}
if (this._preserveNestedTables != 1)
{
    goto Label_1143D;
}
if (((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x74) || (class4.b[num + 1] == 0x54))) && ((class4.b[num + 2] == 0x61) || (class4.b[num + 2] == 0x41))) && (((class4.b[num + 3] == 0x62) || (class4.b[num + 3] == 0x42)) && ((class4.b[num + 4] == 0x6c) || (class4.b[num + 4] == 0x4c)))) && (((class4.b[num + 5] == 0x65) || (class4.b[num + 5] == 0x45)) && ((class4.b[num + 6] == 0x3e) || this.IS_DELIMITER(class4.b[num + 6]))))
{
    if ((_tablesArray[num36].table && (_tablesArray[num36].cell == 0)) && _tablesArray[num36].tr_open)
    {
        if (_tablesArray[num36].table_level > 1)
        {
            buf.Add(this.LF + @"\pard \intbl");
            str11 = @"\itap" + _tablesArray[num36].table_level + " ";
            buf.Add(str11);
            buf.Add(_tablesArray[num36].nestTblDescription);
            buf.Add(@"\nestrow}{\nonesttables\par}" + this.LF);
            if (_tablesArray[num36].tr_cur == _tablesArray[num36].table_p.rows)
            {
                nest_tables _tables13 = _tablesArray[num36];
                _tables13.table_level--;
            }
        }
        else
        {
            buf.Add(@"\pard\intbl\row" + this.LF);
            _tablesArray[num36].table = false;
        }
        this.table_clear_carts(_tablesArray[num36]);
        this.nested_table_clear(_tablesArray[num36]);
        if (num36 > 0)
        {
            num36--;
        }
    }
    if (this._preserveNestedTables == 1)
    {
        if (_tablesArray[num36].table_level < 1)
        {
            nest_tables _tables14 = _tablesArray[num36];
            _tables14.table_level++;
        }
        else
        {
            num36++;
            _tablesArray[num36].table_level = num36 + 1;
        }
        if (align.b[2] == 0x72)
        {
            _tablesArray[num36].table_p.tableAlign = 2;
        }
        else if ((align.b[2] == 0x63) || (num52 == 1))
        {
            _tablesArray[num36].table_p.tableAlign = 1;
        }
        else
        {
            _tablesArray[num36].table_p.tableAlign = 0;
        }
        if ((this.table_getsize(class4, num, max, _tablesArray[num36].table_p) == table_types.TABLE_UNCLOSED) || (_tablesArray[num36].table_p.cols > (this.MAX_COLUMNS - 1)))
        {
            this.table_skip_table2(class4, ref num, max);
            if (_tablesArray[num36].table_level == 1)
            {
                nest_tables _tables15 = _tablesArray[num36];
                _tables15.table_level--;
            }
            else
            {
                _tablesArray[num36].table_level = num36 - 1;
                num36--;
            }
            goto Label_134B7;
        }
        if ((_tablesArray[num36].table_p.cols == 0) || (_tablesArray[num36].table_p.rows == 0))
        {
            this.table_skip_table2(class4, ref num, max);
            if (_tablesArray[num36].table_level == 1)
            {
                nest_tables _tables16 = _tablesArray[num36];
                _tables16.table_level--;
            }
            else
            {
                _tablesArray[num36].table_level = num36 - 1;
                num36--;
            }
            goto Label_134B7;
        }
        this.table_clear_carts(_tablesArray[num36]);
        this.table_alloc_carts(_tablesArray[num36]);
        if (_tablesArray[num36].table_level > 1)
        {
            tBLEN = this.get_max_tblen_width(_tablesArray[num36 - 1]);
        }
        else
        {
            tBLEN = this.TBLEN;
        }
        this.table_analyse(class4, num, max, _tablesArray[num36].table_array, _tablesArray[num36].table_symbols, _tablesArray[num36].table_map, _tablesArray[num36].table_colspan, _tablesArray[num36].table_rowspan, _tablesArray[num36].table_images, _tablesArray[num36].table_width, _tablesArray[num36].table_colbg, _tablesArray[num36].table_valign, _params, _tablesArray[num36].table_p, list2, num14, class25, tBLEN, hieroglyph, _tablesArray[num36].tdAlignColgroup);
        this.table_free_carts(_tablesArray[num36]);
    }
    _tablesArray[num36].table_border_visible = flag17;
    if (this.IS_DELIMITER(class4.b[num + 6]))
    {
        if (this._borderVisibility == eBorderVisibility.SameAsOriginalHtml)
        {
            _tablesArray[num36].table_border_visible = false;
            _tablesArray[num36].table_border_visible = this.get_border(class4, num, max);
        }
        while ((class4.b[num + 6] != 0x3e) && (num < max))
        {
            num++;
        }
    }
    if (_tablesArray[num36].table_level > 1)
    {
        if (flag21)
        {
            buf.Add(str15);
            if (num36 > 0)
            {
                buf.Add(@"\intbl");
                str11 = @"\itap" + ((_tablesArray[num36].table_level - 1)).ToString() + " ";
                buf.Add(str11);
                num11 += str11.Length;
            }
        }
    }
    else
    {
        if (_tablesArray[num36].table)
        {
            while (_tablesArray[num36].cell > 0)
            {
                buf.Add(@"\pard \intbl" + this.LF + @"\cell");
                nest_tables _tables17 = _tablesArray[num36];
                _tables17.cell--;
            }
            _tablesArray[num36].td_open = false;
            buf.Add(this.LF + @"\pard \intbl \row\pard" + this.LF);
        }
        if (flag21 && (num5 == 0))
        {
            buf.Add(this.LF + @"\pard\par" + this.LF);
            num11 += 11;
        }
    }
    num += 6;
    if (!this.check_tr_tag(class4, num, max))
    {
        this.check_tr_close(class4, num, max);
        if ((_tablesArray[num36].table_level <= 1) && _tablesArray[num36].table)
        {
            while (_tablesArray[num36].cell > 0)
            {
                buf.Add(this.LF + @"\pard\intbl\cell");
                nest_tables _tables18 = _tablesArray[num36];
                _tables18.cell--;
            }
            buf.Add(@"\pard\intbl\row" + this.LF);
        }
        if (((buf.len > 1) && (buf.b[buf.len - 1] == 0x20)) && this.IS_DELIMITER(buf.b[buf.len - 2]))
        {
            buf.len--;
        }
        if (_tablesArray[num36].table_level > 1)
        {
            _tablesArray[num36].nestTblDescription = "";
            _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + str2;
            _tablesArray[num36].td = _tablesArray[num36].table_map[_tablesArray[num36].tr_cur, 0];
            _tablesArray[num36].tblen = this.get_table_width(_tablesArray[num36], _tablesArray[num36 - 1]);
        }
        else
        {
            buf.Add(s);
            _tablesArray[num36].td = _tablesArray[num36].table_map[_tablesArray[num36].tr_cur, 0];
            _tablesArray[num36].tblen = this.TBLEN;
            _tablesArray[num36].td_up_columns = _tablesArray[num36].td;
            _tablesArray[num36].cell = _tablesArray[num36].td;
            _tablesArray[num36].td_up_curcol = 0;
        }
        _tablesArray[num36].table = true;
        if (_tablesArray[num36].td != 0)
        {
            for (num7 = 0; num7 < _tablesArray[num36].td; num7++)
            {
                if (_tablesArray[num36].table_border_visible)
                {
                    if (_tablesArray[num36].table_level > 1)
                    {
                        _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + this.LF + @"\clbrdrl\brdrs\clbrdrt\brdrs\clbrdrr\brdrs\clbrdrb\brdrs";
                    }
                    else
                    {
                        buf.Add(this.LF + @"\clbrdrl\brdrs\clbrdrt\brdrs\clbrdrr\brdrs\clbrdrb\brdrs");
                    }
                }
                if (_tablesArray[num36].table_rowspan[_tablesArray[num36].tr_cur, num7 + 1] > 0)
                {
                    if ((_tablesArray[num36].table_rowspan[_tablesArray[num36].tr_cur, num7 + 1] == this.CLVMGF) || (_tablesArray[num36].table_rowspan[_tablesArray[num36].tr_cur, num7 + 1] == this.CLVMRG2))
                    {
                        if (_tablesArray[num36].table_level > 1)
                        {
                            str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
                            _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + str11;
                        }
                        if (_tablesArray[num36].table_level > 1)
                        {
                            _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + @"\clvmgf";
                        }
                        else
                        {
                            buf.Add(@"\clvmgf");
                        }
                    }
                    else if (_tablesArray[num36].table_rowspan[_tablesArray[num36].tr_cur, num7 + 1] == this.CLVMRG)
                    {
                        if (_tablesArray[num36].table_level > 1)
                        {
                            str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
                            _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + str11;
                        }
                        if (_tablesArray[num36].table_level > 1)
                        {
                            _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + @"\clvmrg";
                        }
                        else
                        {
                            buf.Add(@"\clvmrg");
                        }
                    }
                }
                if (_tablesArray[num36].table_level > 1)
                {
                    _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + this.LF + @"\cellx";
                }
                else
                {
                    buf.Add(this.LF + @"\cellx");
                }
                str12 = this.table_make_cellx(_tablesArray[num36].table_map, _tablesArray[num36].tr_cur, num7);
                if (_tablesArray[num36].table_level > 1)
                {
                    _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + str12;
                }
                else
                {
                    buf.Add(str12);
                }
            }
        }
    }
    goto Label_134B7;
}
if ((((((class4.b[num] != 60) || (class4.b[num + 1] != 0x2f)) || ((class4.b[num + 2] != 0x74) && (class4.b[num + 2] != 0x54))) || ((class4.b[num + 3] != 0x61) && (class4.b[num + 3] != 0x41))) || (((class4.b[num + 4] != 0x62) && (class4.b[num + 4] != 0x42)) || ((class4.b[num + 5] != 0x6c) && (class4.b[num + 5] != 0x4c)))) || (((class4.b[num + 6] != 0x65) && (class4.b[num + 6] != 0x45)) || (class4.b[num + 7] != 0x3e)))
{
    goto Label_F56E;
}
if (_tablesArray[num36].tr_open && _tablesArray[num36].table)
{
    if (_tablesArray[num36].table_level <= 1)
    {
        goto Label_F435;
    }
    while (_tablesArray[num36].cell > 0)
    {
        buf.Add(this.LF + @"\pard\intbl");
        str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
        buf.Add(str11);
        buf.Add(this.LF + @"\nestcell");
        nest_tables _tables19 = _tablesArray[num36];
        _tables19.cell--;
    }
    buf.Add(this.LF + @"\pard\intbl");
    str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
    buf.Add(str11);
    buf.Add(_tablesArray[num36].nestTblDescription);
    buf.Add(@"\nestrow}{\nonesttables\par}" + this.LF);
}
goto Label_F464;
Label_F40C:
buf.Add(this.LF + @"\pard\intbl\cell");
nest_tables _tables20 = _tablesArray[num36];
_tables20.cell--;
Label_F435:
if (_tablesArray[num36].cell > 0)
{
    goto Label_F40C;
}
buf.Add(@"\pard\intbl\row" + this.LF);
_tablesArray[num36].table = false;
Label_F464:
if ((_tablesArray[num36].table_level > 1) || (num36 > 0))
{
    _tablesArray[num36].table = false;
    if (buf.len > 0)
    {
        while ((buf.b[buf.len - 1] != 10) && (buf.len > 1))
        {
            buf.len--;
        }
    }
}
else
{
    if (buf.len > 1)
    {
        while ((buf.len > 1) && this.IS_DELIMITER(buf.b[buf.len - 1]))
        {
            buf.len--;
        }
    }
    buf.Add(@"\pard" + this.LF);
}
num += 7;
if (this._preserveNestedTables == 1)
{
    this.table_clear_carts(_tablesArray[num36]);
    this.nested_table_clear(_tablesArray[num36]);
    if (num36 > 0)
    {
        num36--;
        if (num36 == 0)
        {
            buf.Add(@"\itap1" + this.LF);
        }
    }
}
flag21 = false;
num34 = 0;
flag12 = false;
goto Label_134B7;
Label_F56E:
if ((((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x63) || (class4.b[num + 2] == 0x43))) && ((class4.b[num + 3] == 0x61) || (class4.b[num + 3] == 0x41))) && (((class4.b[num + 4] == 0x70) || (class4.b[num + 4] == 80)) && ((class4.b[num + 5] == 0x74) || (class4.b[num + 5] == 0x54)))) && ((((class4.b[num + 6] == 0x69) || (class4.b[num + 6] == 0x49)) && ((class4.b[num + 7] == 0x6f) || (class4.b[num + 7] == 0x4f))) && (((class4.b[num + 8] == 110) || (class4.b[num + 8] == 0x4e)) && (class4.b[num + 9] == 0x3e))))
{
    if (_tablesArray[num36].table)
    {
        buf.Add(str15);
        num5 = 1;
        if ((num36 > 0) && (this._preserveNestedTables == 1))
        {
            str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
            buf.Add(str11);
        }
    }
    else
    {
        buf.Add(str14);
        num5 = 1;
    }
    num += 9;
    goto Label_134B7;
}
if ((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x74) || (class4.b[num + 1] == 0x54))) && ((class4.b[num + 2] == 0x72) || (class4.b[num + 2] == 0x52))) && ((class4.b[num + 3] == 0x3e) || this.IS_DELIMITER(class4.b[num + 3])))
{
    num += 3;
    if (this.IS_DELIMITER(class4.b[num]))
    {
        while (!this.IS_XTHAN(class4.b[num]) && (num < class4.len))
        {
            if ((((((this._preserveAlignment == 1) && (class4.b[num] == 0x20)) && ((class4.b[num + 1] == 0x61) || (class4.b[num + 1] == 0x41))) && ((class4.b[num + 2] == 0x6c) || (class4.b[num + 2] == 0x4c))) && (((class4.b[num + 3] == 0x69) || (class4.b[num + 3] == 0x49)) && ((class4.b[num + 4] == 0x67) || (class4.b[num + 4] == 0x47)))) && ((class4.b[num + 5] == 110) || (class4.b[num + 5] == 0x4e)))
            {
                num += 6;
                this.read_value(class4, ref num, class16);
                if (class16.byteCmpi("center") == 0)
                {
                    _tablesArray[num36].tr_align = class19.ByteToString();
                }
                else if (class16.byteCmpi("middle") == 0)
                {
                    _tablesArray[num36].tr_align = class19.ByteToString();
                }
                else if (class16.byteCmpi("left") == 0)
                {
                    _tablesArray[num36].tr_align = class20.ByteToString();
                }
                else if (class16.byteCmpi("right") == 0)
                {
                    _tablesArray[num36].tr_align = class21.ByteToString();
                }
            }
            if (((((this._preserveBackgroundColor == 1) && ((class4.b[num] == 0x62) || (class4.b[num] == 0x42))) && ((class4.b[num + 1] == 0x67) || (class4.b[num + 1] == 0x47))) && (((class4.b[num + 2] == 0x63) || (class4.b[num + 2] == 0x43)) && ((class4.b[num + 3] == 0x6f) || (class4.b[num + 3] == 0x4f)))) && ((((class4.b[num + 4] == 0x6c) || (class4.b[num + 4] == 0x4c)) && ((class4.b[num + 5] == 0x6f) || (class4.b[num + 5] == 0x4f))) && (((class4.b[num + 6] == 0x72) || (class4.b[num + 6] == 0x52)) && (class4.b[num + 7] == 0x3d))))
            {
                num += 8;
                if (this.read_color(class4, ref num, max, class11))
                {
                    for (num7 = 0; num7 < num14; num7++)
                    {
                        if (class11.byteCmpi((string)list2[num7]) == 0)
                        {
                            _tablesArray[num36].tr_bg = num7 + 3;
                        }
                    }
                }
            }
            num++;
        }
    }
    if ((_tablesArray[num36].table_p.cols == 0) || (_tablesArray[num36].table_p.rows == 0))
    {
        this.table_skip_table(class4, ref num, max);
    }
    else
    {
        if (_tablesArray[num36].table_level > 1)
        {
            if (_tablesArray[num36].table && _tablesArray[num36].tr_open)
            {
                while (_tablesArray[num36].cell > 0)
                {
                    buf.Add(this.LF + @"\pard\intbl");
                    str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
                    buf.Add(str11);
                    buf.Add(this.LF + @"\nestcell");
                    nest_tables _tables21 = _tablesArray[num36];
                    _tables21.cell--;
                }
                buf.Add(this.LF + @"\pard\intbl");
                str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
                buf.Add(str11);
                buf.Add(_tablesArray[num36].nestTblDescription);
                buf.Add(@"\nestrow}{\nonesttables\par}" + this.LF);
            }
        }
        else if (_tablesArray[num36].table)
        {
            while (_tablesArray[num36].cell > 0)
            {
                buf.Add(this.LF + @"\pard\intbl\cell");
                nest_tables _tables22 = _tablesArray[num36];
                _tables22.cell--;
            }
            buf.Add(@"\pard\intbl\row" + this.LF);
        }
        if (((buf.len > 2) && (buf.b[buf.len - 1] == 0x20)) && this.IS_DELIMITER(buf.b[buf.len - 2]))
        {
            buf.len--;
        }
        if (_tablesArray[num36].table_level > 1)
        {
            _tablesArray[num36].nestTblDescription = "";
            _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + str2;
            if (_tablesArray[num36].table_p.tableAlign != 0)
            {
                if (_tablesArray[num36].table_p.tableAlign == this.ALIGN_CENTER)
                {
                    _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + @"\trqc ";
                }
                else if (_tablesArray[num36].table_p.tableAlign == this.ALIGN_RIGHT)
                {
                    _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + @"\trqr ";
                }
            }
            _tablesArray[num36].td = _tablesArray[num36].table_map[_tablesArray[num36].tr_cur, 0];
            _tablesArray[num36].td_up_columns = _tablesArray[num36].td;
            _tablesArray[num36].cell = _tablesArray[num36].td;
            _tablesArray[num36].td_up_curcol = 0;
            if (_tablesArray[num36].change_width != 1)
            {
                _tablesArray[num36].tblen = this.get_table_width(_tablesArray[num36], _tablesArray[num36 - 1]);
            }
        }
        else
        {
            buf.Add(s);
            if (_tablesArray[num36].table_p.tableAlign != 0)
            {
                if (_tablesArray[num36].table_p.tableAlign == this.ALIGN_CENTER)
                {
                    buf.Add(@"\trqc ");
                }
                else if (_tablesArray[num36].table_p.tableAlign == this.ALIGN_RIGHT)
                {
                    buf.Add(@"\trqr ");
                }
            }
            _tablesArray[num36].td = _tablesArray[num36].table_map[_tablesArray[num36].tr_cur, 0];
            _tablesArray[num36].tblen = this.TBLEN;
            _tablesArray[num36].td_up_columns = _tablesArray[num36].td;
            _tablesArray[num36].cell = _tablesArray[num36].td;
            _tablesArray[num36].td_up_curcol = 0;
        }
        _tablesArray[num36].table = true;
        if (_tablesArray[num36].td != 0)
        {
            for (num7 = 0; num7 < _tablesArray[num36].td; num7++)
            {
                if (_tablesArray[num36].table_border_visible)
                {
                    if (_tablesArray[num36].table_level > 1)
                    {
                        _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + this.LF + @"\clbrdrl\brdrs\clbrdrt\brdrs\clbrdrr\brdrs\clbrdrb\brdrs";
                    }
                    else
                    {
                        buf.Add(this.LF + @"\clbrdrl\brdrs\clbrdrt\brdrs\clbrdrr\brdrs\clbrdrb\brdrs");
                    }
                }
                if ((this._preserveBackgroundColor == 1) && (_tablesArray[num36].tr_bg != 0))
                {
                    if (_tablesArray[num36].table_level > 1)
                    {
                        _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + @"\clcbpat" + _tablesArray[num36].tr_bg.ToString() + " ";
                    }
                    else
                    {
                        buf.Add(@"\clcbpat" + _tablesArray[num36].tr_bg.ToString() + " ");
                    }
                }
                if (_tablesArray[num36].table_rowspan[_tablesArray[num36].tr_cur, num7 + 1] > 0)
                {
                    if ((_tablesArray[num36].table_rowspan[_tablesArray[num36].tr_cur, num7 + 1] == this.CLVMGF) || (_tablesArray[num36].table_rowspan[_tablesArray[num36].tr_cur, num7 + 1] == this.CLVMRG2))
                    {
                        if (_tablesArray[num36].table_level > 1)
                        {
                            str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
                            _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + str11;
                        }
                        if (_tablesArray[num36].table_level > 1)
                        {
                            _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + @"\clvmgf";
                        }
                        else
                        {
                            buf.Add(@"\clvmgf");
                        }
                    }
                    else if (_tablesArray[num36].table_rowspan[_tablesArray[num36].tr_cur, num7 + 1] == this.CLVMRG)
                    {
                        if (_tablesArray[num36].table_level > 1)
                        {
                            str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
                            _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + str11;
                        }
                        if (_tablesArray[num36].table_level > 1)
                        {
                            _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + @"\clvmrg";
                        }
                        else
                        {
                            buf.Add(@"\clvmrg");
                        }
                    }
                }
                if (((this._preserveBackgroundColor == 1) && (_tablesArray[num36].table_colbg[_tablesArray[num36].tr_cur, num7 + 1] > 0)) && (_tablesArray[num36].table_colbg[_tablesArray[num36].tr_cur, num7 + 1] < (num14 + 5)))
                {
                    if (_tablesArray[num36].table_level > 1)
                    {
                        _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + @"\clcbpat" + _tablesArray[num36].table_colbg[_tablesArray[num36].tr_cur, num7 + 1].ToString();
                    }
                    else
                    {
                        buf.Add(@"\clcbpat" + _tablesArray[num36].table_colbg[_tablesArray[num36].tr_cur, num7 + 1].ToString());
                    }
                }
                if (this._preserveAlignment == 1)
                {
                    if (_tablesArray[num36].table_valign[_tablesArray[num36].tr_cur, num7 + 1] == this.VALIGN_CENTER)
                    {
                        if (_tablesArray[num36].table_level > 1)
                        {
                            _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + @"\clvertalc";
                        }
                        else
                        {
                            buf.Add(@"\clvertalc");
                        }
                    }
                    else if (_tablesArray[num36].table_valign[_tablesArray[num36].tr_cur, num7 + 1] == this.VALIGN_BOTTOM)
                    {
                        if (_tablesArray[num36].table_level > 1)
                        {
                            _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + @"\clvertalb";
                        }
                        else
                        {
                            buf.Add(@"\clvertalb");
                        }
                    }
                }
                if (_tablesArray[num36].table_level > 1)
                {
                    _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + this.LF + @"\cellx";
                }
                else
                {
                    buf.Add(this.LF + @"\cellx");
                }
                str12 = this.table_make_cellx(_tablesArray[num36].table_map, _tablesArray[num36].tr_cur, num7);
                if (_tablesArray[num36].table_level > 1)
                {
                    _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + str12;
                }
                else
                {
                    buf.Add(str12);
                }
            }
            if ((_tablesArray[num36].td_up_curcol == 0) && (_tablesArray[num36].table_rowspan[_tablesArray[num36].tr_cur, 1] == this.CLVMRG))
            {
                if (_tablesArray[num36].table_level > 1)
                {
                    _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + this.LF + @"\pard\intbl";
                    str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
                    _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + str11;
                    _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + @"\nestcell";
                    nest_tables _tables23 = _tablesArray[num36];
                    _tables23.cell--;
                }
                else
                {
                    buf.Add(@"\pard\intbl\cell");
                    nest_tables _tables24 = _tablesArray[num36];
                    _tables24.cell--;
                }
                nest_tables _tables25 = _tablesArray[num36];
                _tables25.td_up_curcol++;
                for (num7 = 2; num7 < _tablesArray[num36].table_p.cols; num7++)
                {
                    if (_tablesArray[num36].table_rowspan[_tablesArray[num36].tr_cur, num7] != this.CLVMRG)
                    {
                        break;
                    }
                    if (_tablesArray[num36].table_level > 1)
                    {
                        _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + this.LF + @"\pard\intbl";
                        str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
                        _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + str11;
                        _tablesArray[num36].nestTblDescription = _tablesArray[num36].nestTblDescription + @"\nestcell";
                        nest_tables _tables26 = _tablesArray[num36];
                        _tables26.cell--;
                    }
                    else
                    {
                        buf.Add(@"\pard \intbl\cell");
                        nest_tables _tables27 = _tablesArray[num36];
                        _tables27.cell--;
                    }
                    nest_tables _tables28 = _tablesArray[num36];
                    _tables28.td_up_curcol++;
                }
                _tablesArray[num36].td_open = false;
            }
        }
        if (_tablesArray[num36].table_p.rows > 1)
        {
            nest_tables _tables29 = _tablesArray[num36];
            _tables29.tr_cur++;
        }
        _tablesArray[num36].tr_open = true;
        _tablesArray[num36].td_open = false;
    }
    goto Label_134B7;
}
if ((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x74) || (class4.b[num + 1] == 0x54))) && (((class4.b[num + 2] == 100) || (class4.b[num + 2] == 0x44)) || ((class4.b[num + 2] == 0x68) || (class4.b[num + 2] == 0x48)))) && ((class4.b[num + 3] == 0x3e) || this.IS_DELIMITER(class4.b[num + 3])))
{
    if ((_tablesArray[num36].table && (_tablesArray[num36].cell == 0)) && _tablesArray[num36].tr_open)
    {
        if (_tablesArray[num36].table_level > 1)
        {
            buf.Add(this.LF + @"\pard\intbl");
            str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
            buf.Add(str11);
            buf.Add(_tablesArray[num36].nestTblDescription);
            buf.Add(@"\nestrow}{\nonesttables\par}" + this.LF);
            if (_tablesArray[num36].tr_cur == _tablesArray[num36].table_p.rows)
            {
                nest_tables _tables30 = _tablesArray[num36];
                _tables30.table_level--;
            }
        }
        else
        {
            buf.Add(@"\pard\intbl\row" + this.LF);
            _tablesArray[num36].table = false;
        }
        this.table_clear_carts(_tablesArray[num36]);
        this.nested_table_clear(_tablesArray[num36]);
        if (num36 > 0)
        {
            num36--;
        }
    }
    if (_tablesArray[num36].td_open)
    {
        if (_tablesArray[num36].table_level > 1)
        {
            buf.Add(this.LF + @"\pard\intbl");
            str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
            buf.Add(str11);
            buf.Add(@"\nestcell");
            nest_tables _tables31 = _tablesArray[num36];
            _tables31.cell--;
        }
        else
        {
            buf.Add(@"\pard\intbl\cell");
            nest_tables _tables32 = _tablesArray[num36];
            _tables32.cell--;
        }
        nest_tables _tables33 = _tablesArray[num36];
        _tables33.td_up_curcol++;
        _tablesArray[num36].td_open = false;
    }
    if ((_tablesArray[num36].tr_cur > 0) && (_tablesArray[num36].table_rowspan[_tablesArray[num36].tr_cur - 1, _tablesArray[num36].td_up_curcol + 1] == this.CLVMRG))
    {
        for (num7 = _tablesArray[num36].td_up_curcol + 1; (_tablesArray[num36].table_rowspan[_tablesArray[num36].tr_cur - 1, num7] == this.CLVMRG) && (num7 < _tablesArray[num36].table_p.cols); num7++)
        {
            if (_tablesArray[num36].table_level > 1)
            {
                buf.Add(this.LF + @"\pard \intbl");
                str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
                buf.Add(str11);
                buf.Add(@"\nestcell");
                nest_tables _tables34 = _tablesArray[num36];
                _tables34.cell--;
            }
            else
            {
                buf.Add(@"\pard\intbl\cell");
                nest_tables _tables35 = _tablesArray[num36];
                _tables35.cell--;
            }
            nest_tables _tables36 = _tablesArray[num36];
            _tables36.td_up_curcol++;
            _tablesArray[num36].td_open = false;
        }
    }
    if (_tablesArray[num36].table_level > 1)
    {
        buf.Add(this.LF + @"\pard\intbl");
        str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
        buf.Add(str11);
    }
    else
    {
        buf.Add(this.LF + @"\pard\intbl ");
    }
    if (((_tablesArray[num36].td_up_curcol >= 0) && (_tablesArray[num36].td_up_curcol < (this.MAX_COLUMNS - 1))) && (_tablesArray[num36].tdAlignColgroup[_tablesArray[num36].td_up_curcol] != 0))
    {
        if (_tablesArray[num36].tdAlignColgroup[_tablesArray[num36].td_up_curcol] == 0x63)
        {
            _tablesArray[num36].td_align = class19.ByteToString();
        }
        else if (_tablesArray[num36].tdAlignColgroup[_tablesArray[num36].td_up_curcol] == 0x6c)
        {
            _tablesArray[num36].td_align = class20.ByteToString();
        }
        else if (_tablesArray[num36].tdAlignColgroup[_tablesArray[num36].td_up_curcol] == 0x72)
        {
            _tablesArray[num36].td_align = class21.ByteToString();
        }
        else if (_tablesArray[num36].tdAlignColgroup[_tablesArray[num36].td_up_curcol] == 0x6a)
        {
            _tablesArray[num36].td_align = class18.ByteToString();
        }
    }
    num3 = num;
    if (this.IS_DELIMITER(class4.b[num + 3]))
    {
        while ((class4.b[num + 3] != 0x3e) && (num < class4.len))
        {
            if (((((this._preserveAlignment == 1) && ((class4.b[num] == 0x61) || (class4.b[num] == 0x41))) && ((class4.b[num + 1] == 0x6c) || (class4.b[num + 1] == 0x4c))) && (((class4.b[num + 2] == 0x69) || (class4.b[num + 2] == 0x49)) && ((class4.b[num + 3] == 0x67) || (class4.b[num + 3] == 0x47)))) && ((class4.b[num + 4] == 110) || (class4.b[num + 4] == 0x4e)))
            {
                num += 5;
                if (class4.b[num] == 0x3a)
                {
                    num++;
                }
                this.read_value_CSS_tolower(class4, ref num, max, class16, 30);
                if (class16.byteCmpi("center") == 0)
                {
                    _tablesArray[num36].td_align = class19.ByteToString();
                }
                else if (class16.byteCmpi("middle") == 0)
                {
                    _tablesArray[num36].td_align = class19.ByteToString();
                }
                else if (class16.byteCmpi("left") == 0)
                {
                    _tablesArray[num36].td_align = class20.ByteToString();
                }
                else if (class16.byteCmpi("right") == 0)
                {
                    _tablesArray[num36].td_align = class21.ByteToString();
                }
            }
            if (((((this._preserveBackgroundColor == 1) && ((class4.b[num] == 0x62) || (class4.b[num] == 0x42))) && ((class4.b[num + 1] == 0x67) || (class4.b[num + 1] == 0x47))) && (((class4.b[num + 2] == 0x63) || (class4.b[num + 2] == 0x43)) && ((class4.b[num + 3] == 0x6f) || (class4.b[num + 3] == 0x4f)))) && ((((class4.b[num + 4] == 0x6c) || (class4.b[num + 4] == 0x4c)) && ((class4.b[num + 5] == 0x6f) || (class4.b[num + 5] == 0x4f))) && (((class4.b[num + 6] == 0x72) || (class4.b[num + 6] == 0x52)) && (class4.b[num + 7] == 0x3d))))
            {
                num += 8;
                this.read_color(class4, ref num, max, class11);
                for (num7 = 0; num7 < num14; num7++)
                {
                    if (class11.byteCmpi((string)list2[num7]) == 0)
                    {
                        _tablesArray[num36].td_bg = num7 + 3;
                    }
                }
            }
            num++;
        }
    }
    if (this._preserveAlignment == 1)
    {
        if (_tablesArray[num36].td_align == null)
        {
            if (_tablesArray[num36].tr_align == null)
            {
                _tablesArray[num36].tr_align = class18.ByteToString();
                buf.Add(_tablesArray[num36].tr_align);
            }
            else
            {
                buf.Add(_tablesArray[num36].tr_align);
            }
        }
        else
        {
            buf.Add(_tablesArray[num36].td_align);
            align.Clear();
            align.Add(_tablesArray[num36].td_align);
        }
    }
    num = num3;
    num += 3;
    num4 = 0;
    flag21 = false;
    _tablesArray[num36].td_open = true;
    flag12 = true;
    this.CSS_insert(class22, class18, class19, class20, class21, align, class4, ref num, buf, ref num11, max, _params, ref flag4, class10, class14, ref num21, ref flag16, ref flag5, newb, list, list2, CSS_tag_type.TD_CSS);
    goto Label_134B7;
}
if (((((_tablesArray[num36].table && (class4.b[num] == 60)) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x74) || (class4.b[num + 2] == 0x54))) && (((class4.b[num + 3] == 100) || (class4.b[num + 3] == 0x44)) || ((class4.b[num + 3] == 0x68) || (class4.b[num + 3] == 0x48)))) && (class4.b[num + 4] == 0x3e))
{
    while (num28 > 0)
    {
        buf.Add((byte)0x7d);
        num11++;
        num28--;
    }
    while (num29 > 0)
    {
        buf.Add((byte)0x7d);
        num11++;
        num29--;
    }
    num += 4;
    this.CSS_close(class22, class18, align, buf, ref num11, _params, ref flag4, class10, class14, ref num21, ref flag16, ref flag5, newb, fontsize, CSS_tag_type.TD_CSS);
    if (_tablesArray[num36].table_level > 1)
    {
        str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
        buf.Add(str11);
        buf.Add(@"\nestcell");
        nest_tables _tables37 = _tablesArray[num36];
        _tables37.cell--;
    }
    else
    {
        buf.Add(@"\cell");
        nest_tables _tables38 = _tablesArray[num36];
        _tables38.cell--;
    }
    nest_tables _tables39 = _tablesArray[num36];
    _tables39.td_up_curcol++;
    _tablesArray[num36].td_open = false;
    if (this._preserveBackgroundColor == 1)
    {
        _tablesArray[num36].td_bg = 0;
    }
    if (this._preserveAlignment == 1)
    {
        align.Clear();
        align.Add(class22);
        _tablesArray[num36].td_align = class22.ByteToString();
    }
    num34 = 0;
    flag12 = false;
    goto Label_134B7;
}
if (((((!_tablesArray[num36].table || (class4.b[num] != 60)) || (class4.b[num + 1] != 0x2f)) || ((class4.b[num + 2] != 0x74) && (class4.b[num + 2] != 0x54))) || ((class4.b[num + 3] != 0x72) && (class4.b[num + 3] != 0x52))) || (class4.b[num + 4] != 0x3e))
{
    goto Label_1143D;
}
if (_tablesArray[num36].table_level <= 1)
{
    goto Label_112B1;
}
while (_tablesArray[num36].cell > 0)
{
    buf.Add(this.LF + @"\pard\intbl");
    str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
    buf.Add(str11);
    buf.Add(this.LF + @"\nestcell");
    nest_tables _tables40 = _tablesArray[num36];
    _tables40.cell--;
}
buf.Add(this.LF + @"\pard\intbl");
str11 = @"\itap" + _tablesArray[num36].table_level.ToString() + " ";
buf.Add(str11);
buf.Add(_tablesArray[num36].nestTblDescription);
buf.Add(@"\nestrow}{\nonesttables\par}" + this.LF);
if (_tablesArray[num36].tr_cur == _tablesArray[num36].table_p.rows)
{
    nest_tables _tables41 = _tablesArray[num36];
    _tables41.table_level--;
}
if ((_tablesArray[num36].tr_cur == 0) && (_tablesArray[num36].table_p.rows == 1))
{
    str11 = @"\intbl\itap" + ((_tablesArray[num36].table_level - 1)).ToString() + " ";
}
else
{
    str11 = @"\intbl\itap" + _tablesArray[num36].table_level.ToString() + " ";
}
buf.Add(str11);
flag16 = false;
goto Label_112E0;
Label_11288:
buf.Add(this.LF + @"\pard\intbl\cell");
nest_tables _tables42 = _tablesArray[num36];
_tables42.cell--;
Label_112B1:
if (_tablesArray[num36].cell > 0)
{
    goto Label_11288;
}
buf.Add(@"\pard\intbl\row" + this.LF);
_tablesArray[num36].table = false;
Label_112E0:
if (this._preserveAlignment == 1)
{
    _tablesArray[num36].tr_align = class18.ByteToString();
}
if (this._preserveBackgroundColor == 1)
{
    _tablesArray[num36].tr_bg = 0;
}
_tablesArray[num36].tr_open = false;
num += 4;
if (_tablesArray[num36].tr_cur == _tablesArray[num36].table_p.rows)
{
    while (num < class4.len)
    {
        if ((((((class4.b[num] == 60) && (class4.b[num + 1] == 0x2f)) && ((class4.b[num + 2] == 0x74) || (class4.b[num + 2] == 0x54))) && ((class4.b[num + 3] == 0x61) || (class4.b[num + 3] == 0x41))) && (((class4.b[num + 4] == 0x62) || (class4.b[num + 4] == 0x42)) && ((class4.b[num + 5] == 0x6c) || (class4.b[num + 5] == 0x4c)))) && (((class4.b[num + 6] == 0x65) || (class4.b[num + 6] == 0x45)) && (class4.b[num + 7] == 0x3e)))
        {
            num--;
            break;
        }
        num++;
    }
}
goto Label_134B7;
Label_1143D:
if ((((class4.b[num] == 60) && ((class4.b[num + 1] == 0x68) || (class4.b[num + 1] == 0x48))) && ((class4.b[num + 2] == 0x72) || (class4.b[num + 2] == 0x52))) && ((class4.b[num + 3] == 0x3e) || this.IS_DELIMITER(class4.b[num + 3])))
{
    num += 3;
    str10 = @"{\*\picprop {\sp{\sn pictureBiLevel}{\sv 1}}}";
    index = num;
    while ((class4.b[num] != 0x3e) && (num < max))
    {
        if (((((class4.b[num] == 0x62) || (class4.b[num] == 0x42)) && ((class4.b[num + 1] == 0x6c) || (class4.b[num + 1] == 0x4c))) && (((class4.b[num + 2] == 0x61) || (class4.b[num + 2] == 0x41)) && ((class4.b[num + 3] == 0x63) || (class4.b[num + 3] == 0x43)))) && ((class4.b[num + 4] == 0x6b) || (class4.b[num + 4] == 0x4b)))
        {
            str10 = @"{\*\picprop {\sp{\sn pictureBiLevel}{\sv 1}}}";
        }
        num++;
    }
    if (this._preserveHR == 1)
    {
        if (this._pageOrientation == ePageOrientation.Landscape)
        {
            num39 = (this.page_height - this.margl) - this.margr;
        }
        else
        {
            num39 = (this.page_width - this.margl) - this.margr;
        }
        if (_tablesArray[num36].table && (_tablesArray[num36].table_p.rows > 1))
        {
            if (_tablesArray[num36].td_up_curcol == 0)
            {
                num39 = _tablesArray[num36].table_map[_tablesArray[num36].tr_cur - 1, _tablesArray[num36].td_up_curcol + 1];
            }
            else
            {
                num39 = _tablesArray[num36].table_map[_tablesArray[num36].tr_cur - 1, _tablesArray[num36].td_up_curcol + 1] - _tablesArray[num36].table_map[_tablesArray[num36].tr_cur - 1, _tablesArray[num36].td_up_curcol];
            }
        }
        class16.Clear();
        strArray = new string[] { this.LF, @"{\par\pict", str10, @"\picscalex", (num39 / 10).ToString(), @"\picscaley6\picw52\pich52\picwgoal1000\pichgoal500\wmetafile8", this.LF };
        class16.Add(string.Concat(strArray));
        buf.Add(class16);
        num11 += class16.len;
        buf.Add(@"0100090000033a0000000000240000000000050000000b0200000000050000000c022300230024000000430f2000cc00000001000100000000002300230000000000280000000100000001000000010018000000000004000000120b0000120b0000000000000000000000000000030000000000}\par ");
        num11 += @"0100090000033a0000000000240000000000050000000b0200000000050000000c022300230024000000430f2000cc00000001000100000000002300230000000000280000000100000001000000010018000000000004000000120b0000120b0000000000000000000000000000030000000000}\par ".Length;
        flag16 = false;
    }
    num = index;
    this.CSS_insert(class22, class18, class19, class20, class21, align, class4, ref num, buf, ref num11, max, _params, ref flag4, class10, class14, ref num21, ref flag16, ref flag5, newb, list, list2, CSS_tag_type.HR_CSS);
    goto Label_134B7;
}
if ((((class4.b[num] != 60) || ((class4.b[num + 1] != 0x69) && (class4.b[num + 1] != 0x49))) || ((class4.b[num + 2] != 0x6d) && (class4.b[num + 2] != 0x4d))) || (((class4.b[num + 3] != 0x67) && (class4.b[num + 3] != 0x47)) || !this.IS_DELIMITER(class4.b[num + 4])))
{
    goto Label_12A9F;
}
if (this._deleteImages == 1)
{
    while ((class4.b[num] != 0x3e) && (num < class4.len))
    {
        num++;
    }
    goto Label_134B7;
}
if (this._preserveImages == 0)
{
    while ((class4.b[num] != 0x3e) && (num < class4.len))
    {
        buf.Add(class4.b[num]);
        num++;
    }
    buf.Add(">");
    goto Label_134B7;
}
num3 = num;
folder.Clear();
class26.Clear();
num41 = -1;
num42 = -1;
while ((class4.b[num] != 0x3e) && (num < class4.len))
{
    if ((((class4.b[num] == 0x73) || (class4.b[num] == 0x53)) && ((class4.b[num + 1] == 0x72) || (class4.b[num + 1] == 0x52))) && ((class4.b[num + 2] == 0x63) || (class4.b[num + 2] == 0x43)))
    {
        while ((class4.b[num] != 0x3e) && (num < class4.len))
        {
            if (class4.b[num] == 0x3d)
            {
                while ((class4.b[num] != 0x3e) && (num < class4.len))
                {
                    if ((class4.b[num] == 0x22) || (class4.b[num] == 0x27))
                    {
                        break;
                    }
                    if ((class4.b[num] == 0x20) && ((class4.b[num + 1] != 0x22) || (class4.b[num + 1] != 0x27)))
                    {
                        num++;
                        break;
                    }
                    if (((class4.b[num + 1] != 0x20) && (class4.b[num + 1] != 0x22)) && (class4.b[num + 1] != 0x27))
                    {
                        num++;
                        break;
                    }
                    num++;
                }
                break;
            }
            num++;
        }
        byte num65 = 0;
        if ((class4.b[num] != 0x22) && (class4.b[num] != 0x27))
        {
            goto Label_11A65;
        }
        num65 = class4.b[num];
        num++;
        while ((class4.b[num] != 0x3e) && (num < class4.len))
        {
            if (class4.b[num] == num65)
            {
                break;
            }
            class26.Add(class4.b[num]);
            num++;
        }
    }
    goto Label_11AA8;
Label_11A4E:
    class26.Add(class4.b[num]);
num++;
Label_11A65:
if (((class4.b[num] != 0x3e) && (num < class4.len)) && (((class4.b[num] != 0x22) && (class4.b[num] != 0x27)) && (class4.b[num] != 0x20)))
{
    goto Label_11A4E;
}
Label_11AA8:
if ((((class4.b[num] == 0x61) || (class4.b[num] == 0x41)) && ((class4.b[num + 1] == 0x6c) || (class4.b[num + 1] == 0x4c))) && (((class4.b[num + 2] == 0x74) || (class4.b[num + 2] == 0x54)) && (class4.b[num + 3] == 0x3d)))
{
    num += 3;
    this.read_value(class4, ref num, valueStr);
}
if (((((class4.b[num] == 0x77) || (class4.b[num] == 0x57)) && ((class4.b[num + 1] == 0x69) || (class4.b[num + 1] == 0x49))) && (((class4.b[num + 2] == 100) || (class4.b[num + 2] == 0x44)) && ((class4.b[num + 3] == 0x74) || (class4.b[num + 3] == 0x54)))) && ((class4.b[num + 4] == 0x68) || (class4.b[num + 4] == 0x48)))
{
    num += 5;
    this.read_value(class4, ref num, valueStr);
    num41 = this.ToInt(valueStr);
}
if (((((class4.b[num] == 0x68) || (class4.b[num] == 0x48)) && ((class4.b[num + 1] == 0x65) || (class4.b[num + 1] == 0x45))) && (((class4.b[num + 2] == 0x69) || (class4.b[num + 2] == 0x49)) && ((class4.b[num + 3] == 0x67) || (class4.b[num + 3] == 0x47)))) && (((class4.b[num + 4] == 0x68) || (class4.b[num + 4] == 0x48)) && ((class4.b[num + 5] == 0x74) || (class4.b[num + 5] == 0x54))))
{
    num += 6;
    this.read_value(class4, ref num, valueStr);
    num42 = this.ToInt(valueStr);
}
num++;
}
if (class26.b[0] == 0x20)
{
    num7 = 0;
    while (class26.b[num7] == 0x20)
    {
        num7++;
    }
    while (num7 < class26.len)
    {
        folder.Add(class26.b[num7]);
        num7++;
    }
    class26.Clear();
    for (num7 = 0; num7 < folder.len; num7++)
    {
        if (((folder.b[num7] == 0x25) && (folder.b[num7 + 1] == 50)) && (folder.b[num7 + 2] == 0x30))
        {
            class26.Add((byte)0x20);
            num7 += 3;
        }
        else if ((((folder.b[num7] == 0x26) && (folder.b[num7 + 1] == 0x61)) && ((folder.b[num7 + 2] == 0x6d) && (folder.b[num7 + 3] == 0x70))) && (folder.b[num7 + 4] == 0x3b))
        {
            class26.Add((byte)0x26);
            num7 += 5;
        }
        else
        {
            class26.Add(folder.b[num7]);
        }
    }
}
string requestUriString = System.Text.Encoding.UTF8.GetString(class26.b, 0, class26.len);
Stream responseStream = null;
bool flag23 = false;
bool flag24 = false;
WebResponse response = null;
if (((((this._baseURL.Length > 6) && ((this._baseURL[0] == 'h') || (this._baseURL[0] == 'H'))) && ((this._baseURL[1] == 't') || (this._baseURL[1] == 'T'))) && (((this._baseURL[2] == 't') || (this._baseURL[2] == 'T')) && ((this._baseURL[3] == 'p') || (this._baseURL[3] == 'P')))) && (((this._baseURL[4] == ':') && (this._baseURL[5] == '/')) && (this._baseURL[6] == '/')))
{
    for (num7 = this._baseURL.Length - 1; num7 > 0; num7--)
    {
        if (this._baseURL[num7] == '/')
        {
            break;
        }
        this._baseURL = this._baseURL.Remove(num7, 1);
    }
    flag24 = true;
}
if ((((class26.b[0] == 0x77) || (class26.b[0] == 0x57)) && ((class26.b[1] == 0x77) || (class26.b[1] == 0x57))) && (((class26.b[2] == 0x77) || (class26.b[2] == 0x57)) && (class26.b[3] == 0x2e)))
{
    valueStr.Clear();
    valueStr.Add("http://");
    valueStr.Add(class26);
    class26.Clear();
    class26.Add(valueStr);
    requestUriString = System.Text.Encoding.UTF8.GetString(class26.b, 0, class26.len);
}
if (((((class26.b[0] == 0x68) || (class26.b[0] == 0x48)) && ((class26.b[1] == 0x74) || (class26.b[1] == 0x54))) && (((class26.b[2] == 0x74) || (class26.b[2] == 0x54)) && ((class26.b[3] == 0x70) || (class26.b[3] == 80)))) && ((class26.b[4] == 0x3a) || (((class26.b[4] == 0x73) || (class26.b[4] == 0x53)) && (class26.b[5] == 0x3a))))
{
    if (this._preserveHttpImages == 0)
    {
        goto Label_134B7;
    }
    this.CheckRemotePath(class26);
    requestUriString = System.Text.Encoding.UTF8.GetString(class26.b, 0, class26.len);
    HttpWebRequest aWebRequest = (HttpWebRequest)WebRequest.Create(requestUriString);
    this.OnBeforeImageDownload(aWebRequest);
    try
    {
        message.Clear();
        message.Add("Trying to connect with: ");
        message.Add(requestUriString);
        message.Add(this.LF);
        if (this._createTraceFile == 1)
        {
            this.MyTrace(message, this._traceFilePath);
        }
        responseStream = aWebRequest.GetResponse().GetResponseStream();
        if (responseStream.CanRead)
        {
            flag23 = true;
            message.Clear();
            message.Add("Connected OK!" + this.LF);
            if (this._createTraceFile == 1)
            {
                this.MyTrace(message, this._traceFilePath);
            }
        }
    }
    catch (Exception exception)
    {
        flag23 = false;
        message.Clear();
        message.Add(exception.Message);
        message.Add("Error!" + this.LF);
        if (this._createTraceFile == 1)
        {
            this.MyTrace(message, this._traceFilePath);
        }
    }
}
else if (flag24)
{
    requestUriString = this.CombineURLs(this._baseURL, requestUriString);
    HttpWebRequest request2 = (HttpWebRequest)WebRequest.Create(requestUriString);
    this.OnBeforeImageDownload(request2);
    try
    {
        message.Clear();
        message.Add("Trying to connect with: ");
        message.Add(requestUriString);
        message.Add(this.LF);
        if (this._createTraceFile == 1)
        {
            this.MyTrace(message, this._traceFilePath);
        }
        response = request2.GetResponse();
        responseStream = response.GetResponseStream();
        if (responseStream.CanRead)
        {
            flag23 = true;
            message.Clear();
            message.Add("Connected OK!" + this.LF);
            if (this._createTraceFile == 1)
            {
                this.MyTrace(message, this._traceFilePath);
            }
        }
    }
    catch (Exception exception2)
    {
        flag23 = false;
        message.Clear();
        message.Add(exception2.Message);
        message.Add("Error!" + this.LF);
        if (this._createTraceFile == 1)
        {
            this.MyTrace(message, this._traceFilePath);
        }
    }
}
ByteClass class33 = new ByteClass();
bool flag25 = false;
Image img = null;
if (!flag23)
{
    for (num7 = 0; num7 < class26.len; num7++)
    {
        if (class26.b[num7] == 0x2f)
        {
            class26.b[num7] = 0x5c;
        }
    }
    if (((((class26.b[0] == 0x66) || (class26.b[0] == 70)) && ((class26.b[1] == 0x69) || (class26.b[1] == 0x49))) && (((class26.b[2] == 0x6c) || (class26.b[2] == 0x4c)) && ((class26.b[3] == 0x65) || (class26.b[3] == 0x45)))) && (class26.b[4] == 0x3a))
    {
        num7 = 5;
        while ((class26.b[num7] == 0x5c) && (num7 < class26.len))
        {
            num7++;
        }
        while (num7 < class26.len)
        {
            folder.Add(class26.b[num7]);
            num7++;
        }
        class26.Clear();
        for (num7 = 0; num7 < folder.len; num7++)
        {
            class26.Add(folder.b[num7]);
        }
    }
    folder.Clear();
    for (num7 = 0; num7 < class28.len; num7++)
    {
        folder.Add(class28.b[num7]);
    }
    if ((folder.len > 0) && (folder.b[folder.len - 1] != 0x5c))
    {
        folder.Add((byte)0x5c);
    }
    if (((class26.b[1] != 0x3a) && (class26.b[2] != 0x5c)) && ((class26.b[0] != 0x2e) && (class26.b[1] != 0x2e)))
    {
        for (num7 = 0; num7 < class26.len; num7++)
        {
            folder.Add(class26.b[num7]);
        }
    }
    else
    {
        this.combine_img_path(folder, class26);
    }
    path = "";
    path = System.Text.Encoding.UTF8.GetString(folder.b, 0, folder.len);
    if (!File.Exists(path))
    {
        flag25 = false;
        if ((((class26.b[0] == 0x63) || (class26.b[0] == 0x43)) && ((class26.b[1] == 0x69) || (class26.b[1] == 0x49))) && (((class26.b[2] == 100) || (class26.b[2] == 0x44)) && (class26.b[3] == 0x3a)))
        {
            class33.Clear();
            for (num7 = 4; num7 < class26.len; num7++)
            {
                class33.Add(class26.b[num7]);
            }
            if (ImageList != null)
            {
                for (num7 = 0; num7 < ImageList.Count; num7++)
                {
                    if (class33.byteCmpi(((SautinImage)ImageList[num7]).Cid) == 0)
                    {
                        img = ((SautinImage)ImageList[num7]).Img;
                        flag25 = true;
                        break;
                    }
                }
            }
        }
        if (!flag25)
        {
            message.Clear();
            message.Add("Can't open file from: " + path + this.LF);
            if (this._createTraceFile == 1)
            {
                this.MyTrace(message, this._traceFilePath);
            }
            goto Label_134B7;
        }
    }
}
Image image2 = null;
MemoryStream stream2 = new MemoryStream();
if (flag25)
{
    image2 = img;
}
else
{
    if (flag23)
    {
        message.Clear();
        message.Add("Reading remote image..." + this.LF);
        if (this._createTraceFile == 1)
        {
            this.MyTrace(message, this._traceFilePath);
        }
        try
        {
            image2 = Image.FromStream(responseStream);
            responseStream.Close();
            response.Close();
            goto Label_1274A;
        }
        catch (Exception exception3)
        {
            message.Clear();
            message.Add(exception3.Message);
            message.Add("Reading remote image error!" + this.LF);
            if (this._createTraceFile == 1)
            {
                this.MyTrace(message, this._traceFilePath);
            }
            goto Label_134B7;
        }
    }
    message.Clear();
    message.Add("Reading local image..." + this.LF);
    if (this._createTraceFile == 1)
    {
        this.MyTrace(message, this._traceFilePath);
    }
    try
    {
        image2 = Image.FromFile(path);
    }
    catch (Exception exception4)
    {
        message.Clear();
        message.Add(exception4.Message);
        message.Add("Reading local image error!" + this.LF);
        if (this._createTraceFile == 1)
        {
            this.MyTrace(message, this._traceFilePath);
        }
        goto Label_134B7;
    }
}
Label_1274A:
if (path.ToLower().IndexOf(".png", 0, path.Length) > 0)
{
    this.imageType = eImageType.Png;
}
else if (path.ToLower().IndexOf(".jpg", 0, path.Length) > 0)
{
    this.imageType = eImageType.Jpeg;
}
else if (path.ToLower().IndexOf(".jpeg", 0, path.Length) > 0)
{
    this.imageType = eImageType.Jpeg;
}
else if (path.ToLower().IndexOf(".gif", 0, path.Length) > 0)
{
    this.imageType = eImageType.Gif;
}
else if (path.ToLower().IndexOf(".bmp", 0, path.Length) > 0)
{
    this.imageType = eImageType.Bmp;
}
if (this._imageCompatible == eImageCompatible.image_Word)
{
    if (this.imageType == eImageType.Jpeg)
    {
        image2.Save(stream2, ImageFormat.Jpeg);
    }
    else
    {
        image2.Save(stream2, ImageFormat.Png);
    }
}
else
{
    image2.Save(stream2, ImageFormat.Bmp);
}
if (stream2.Length != 0L)
{
    int num68;
    int num69;
    message.Clear();
    message.Add("Image was converted OK!" + this.LF);
    if (this._createTraceFile == 1)
    {
        this.MyTrace(message, this._traceFilePath);
    }
    byte[] buffer = stream2.GetBuffer();
    stream2.Close();
    str8 = "";
    int width = image2.Width;
    int height = image2.Height;
    if (num41 >= 0)
    {
        num68 = num41 * 15;
    }
    else
    {
        num68 = width * 15;
    }
    if (num42 >= 0)
    {
        num69 = num42 * 15;
    }
    else
    {
        num69 = height * 15;
    }
    int num70 = 100;
    int num71 = 100;
    if (this._imageCompatible == eImageCompatible.image_Word)
    {
        if (this.imageType == eImageType.Jpeg)
        {
            str8 = string.Format(@"{{\pict\jpegblip\picw{0:D}\pich{1:D}\picwgoal{2:D}\pichgoal{3:D}\picscalex{4:D}\picscaley{5:D}" + this.LF, new object[] { width * 15, height * 15, num68, num69, num70, num71 });
        }
        else
        {
            str8 = string.Format(@"{{\pict\pngblip\picw{0:D}\pich{1:D}\picwgoal{2:D}\pichgoal{3:D}\picscalex{4:D}\picscaley{5:D}" + this.LF, new object[] { width * 15, height * 15, num68, num69, num70, num71 });
        }
    }
    else
    {
        str8 = string.Format(@"{{\pict\dibitmap0\picw{0:D}\pich{1:D}\picwgoal{2:D}\pichgoal{3:D}\picscalex{4:D}\picscaley{5:D}" + this.LF, new object[] { (int)(width * 26.45), (int)(height * 26.45), num68, num69, num70, num71 });
    }
    buf.Add(str8);
    str8 = "";
    if (this._imageCompatible == eImageCompatible.image_Word)
    {
        num7 = 0;
    }
    else
    {
        num7 = 14;
    }
    while (num7 < buffer.Length)
    {
        this.ByteToHexByteClass(buffer[num7], valueStr);
        buf.Add(valueStr);
        num7++;
    }
    buf.Add("}");
}
goto Label_134B7;
Label_12A9F:
if (flag11)
{
    if (class4.b[num] == 10)
    {
        buf.Add(@"\par" + this.LF);
        goto Label_134B7;
    }
    if (class4.b[num] == 0x20)
    {
        buf.Add(" ");
        goto Label_134B7;
    }
    if (class4.b[num] == 9)
    {
        buf.Add(@"\tab" + this.LF);
        goto Label_134B7;
    }
    if (class4.b[num] == 0x3e)
    {
        goto Label_134B7;
    }
    if (class4.b[num] == 60)
    {
        while ((class4.b[num] != 0x3e) && (num < max))
        {
            if ((((this._preserveHyperlinks == 1) && ((class4.b[num] == 0x68) || (class4.b[num] == 0x48))) && ((class4.b[num + 1] == 0x72) || (class4.b[num + 1] == 0x52))) && ((((class4.b[num + 2] == 0x65) || (class4.b[num + 2] == 0x45)) && ((class4.b[num + 3] == 0x66) || (class4.b[num + 3] == 70))) && ((class4.b[num + 4] == 0x3d) && (class4.b[num + 5] == 0x22))))
            {
                num--;
                break;
            }
            num++;
        }
        goto Label_134B7;
    }
}
if (num11 <= 0x11463)
{
    goto Label_12D68;
}
if (!_tablesArray[num36].table)
{
    break;
}
if (this._preserveNestedTables != 1)
{
    goto Label_12D4A;
}
goto Label_12D22;
Label_12C47:
buf.Add("\n\\pard \\intbl");
str11 = @"\itap" + _tablesArray[num36].table_level + " ";
buf.Add(str11);
num11 += str11.Length;
buf.Add("\n\\nestcell");
nest_tables _tables43 = _tablesArray[num36];
_tables43.cell--;
Label_12CA6:
if (_tablesArray[num36].cell > 0)
{
    goto Label_12C47;
}
buf.Add("\n\\pard \\intbl");
str11 = @"\itap" + _tablesArray[num36].table_level + " ";
buf.Add(str11);
num11 += str11.Length;
buf.Add(_tablesArray[num36].nestTblDescription);
buf.Add(@"\nestrow}{\nonesttables\par}" + this.LF);
num36--;
Label_12D22:
if (num36 > 0)
{
    goto Label_12CA6;
}
Label_12D4A:
while (_tablesArray[num36].cell > 0)
{
    buf.Add("\n\\pard \\intbl\\cell");
    nest_tables _tables44 = _tablesArray[num36];
    _tables44.cell--;
}
buf.Add("\n\\pard \\intbl \\row\\pard");
break;
Label_12D68:
if (num11 != 0x11167)
{
    goto Label_12EB5;
}
if (!_tablesArray[num36].table)
{
    break;
}
if (this._preserveNestedTables != 1)
{
    goto Label_12E97;
}
goto Label_12E6F;
Label_12D94:
buf.Add("\n\\pard \\intbl");
str11 = @"\itap" + _tablesArray[num36].table_level + " ";
buf.Add(str11);
num11 += str11.Length;
buf.Add("\n\\nestcell");
nest_tables _tables45 = _tablesArray[num36];
_tables45.cell--;
Label_12DF3:
if (_tablesArray[num36].cell > 0)
{
    goto Label_12D94;
}
buf.Add("\n\\pard \\intbl");
str11 = @"\itap" + _tablesArray[num36].table_level + " ";
buf.Add(str11);
num11 += str11.Length;
buf.Add(_tablesArray[num36].nestTblDescription);
buf.Add(@"\nestrow}{\nonesttables\par}" + this.LF);
num36--;
Label_12E6F:
if (num36 > 0)
{
    goto Label_12DF3;
}
Label_12E97:
while (_tablesArray[num36].cell > 0)
{
    buf.Add("\n\\pard \\intbl\\cell");
    nest_tables _tables46 = _tablesArray[num36];
    _tables46.cell--;
}
buf.Add("\n\\pard \\intbl \\row \\pard");
break;
Label_12EB5:
if (((class4.len > 0) && (num > 0)) && ((class4.b[num - 1] == 0x3e) && (class4.b[num] != 60)))
{
    num4 = 1;
}
if (class4.b[num] == 60)
{
    num4 = 0;
    goto Label_134B7;
}
if ((num4 != 0) || flag11)
{
    if (flag15 && (num5 == 0))
    {
        buf.Add(str14);
        num5 = 1;
    }
    flag15 = false;
    if (this.IS_DELIMITER(class4.b[num]))
    {
        if ((num5 == 0) && (buf.len > 0))
        {
            if (((class4.b[num] == 10) || (class4.b[num] == 13)) && (buf.b[buf.len - 1] == 0x7d))
            {
                if ((buf.len > 2) && (buf.b[buf.len - 2] != 0x20))
                {
                    buf.Add((byte)0x20);
                    num11 = buf.len;
                }
            }
            else if (buf.b[buf.len - 1] != 0x20)
            {
                buf.Add((byte)0x20);
                num11 = buf.len;
            }
            else if (flag16)
            {
                buf.Add((byte)0x20);
                num11++;
                flag21 = true;
            }
            flag16 = false;
        }
    }
    else
    {
        if (class4.b[num] > 0x1f)
        {
            if (hieroglyph)
            {
                this.tohex(class4.b[num], str);
                buf.Add(str);
                num11 += 4;
            }
            else if ((class4.b[num] < 160) || (charset > 0))
            {
                buf.Add(class4.b[num]);
                num11++;
                if (flag13 && (charset > 0))
                {
                    buf.Add(@"\f0 ");
                    num11 += 4;
                    flag13 = false;
                }
            }
            else
            {
                if (!flag13 && (charset > 0))
                {
                    buf.Add(@"\f99 ");
                    num11 += @"\f99 ".Length;
                    flag13 = true;
                }
                this.tohex(class4.b[num], str);
                buf.Add(str);
                num11 += 4;
            }
            if (num52 == 1)
            {
                num52 = 2;
            }
            num5 = 0;
            flag21 = true;
        }
        flag16 = false;
    }
}
if (num11 <= Int32.MaxValue)
{
    goto Label_13220;
}
if (!_tablesArray[num36].table)
{
    break;
}
if (this._preserveNestedTables != 1)
{
    goto Label_13202;
}
goto Label_131DA;
Label_130FF:
buf.Add("\n\\pard \\intbl");
str11 = @"\itap" + _tablesArray[num36].table_level + " ";
buf.Add(str11);
num11 += str11.Length;
buf.Add("\n\\nestcell");
nest_tables _tables47 = _tablesArray[num36];
_tables47.cell--;
Label_1315E:
if (_tablesArray[num36].cell > 0)
{
    goto Label_130FF;
}
buf.Add("\n\\pard \\intbl");
str11 = @"\itap" + _tablesArray[num36].table_level + " ";
buf.Add(str11);
num11 += str11.Length;
buf.Add(_tablesArray[num36].nestTblDescription);
buf.Add(@"\nestrow}{\nonesttables\par}" + this.LF);
num36--;
Label_131DA:
if (num36 > 0)
{
    goto Label_1315E;
}
Label_13202:
while (_tablesArray[num36].cell > 0)
{
    buf.Add("\n\\pard \\intbl\\cell");
    nest_tables _tables48 = _tablesArray[num36];
    _tables48.cell--;
}
buf.Add("\n\\pard \\intbl \\row \\pard");
break;
Label_13220:
if (num11 <= 0x124f7)
{
    goto Label_1336D;
}
if (!_tablesArray[num36].table)
{
    break;
}
if (this._preserveNestedTables != 1)
{
    goto Label_1334F;
}
goto Label_13327;
Label_1324C:
buf.Add("\n\\pard \\intbl");
str11 = @"\itap" + _tablesArray[num36].table_level + " ";
buf.Add(str11);
num11 += str11.Length;
buf.Add("\n\\nestcell");
nest_tables _tables49 = _tablesArray[num36];
_tables49.cell--;
Label_132AB:
if (_tablesArray[num36].cell > 0)
{
    goto Label_1324C;
}
buf.Add("\n\\pard \\intbl");
str11 = @"\itap" + _tablesArray[num36].table_level + " ";
buf.Add(str11);
num11 += str11.Length;
buf.Add(_tablesArray[num36].nestTblDescription);
buf.Add(@"\nestrow}{\nonesttables\par}" + this.LF);
num36--;
Label_13327:
if (num36 > 0)
{
    goto Label_132AB;
}
Label_1334F:
while (_tablesArray[num36].cell > 0)
{
    buf.Add("\n\\pard \\intbl\\cell");
    nest_tables _tables50 = _tablesArray[num36];
    _tables50.cell--;
}
buf.Add("\n\\pard \\intbl \\row \\pard");
break;
Label_1336D:
if (num11 <= 0x1117a)
{
    goto Label_134B7;
}
if (!_tablesArray[num36].table)
{
    break;
}
if (this._preserveNestedTables != 1)
{
    goto Label_1349C;
}
goto Label_13474;
Label_13399:
buf.Add("\n\\pard \\intbl");
str11 = @"\itap" + _tablesArray[num36].table_level + " ";
buf.Add(str11);
num11 += str11.Length;
buf.Add("\n\\nestcell");
nest_tables _tables51 = _tablesArray[num36];
_tables51.cell--;
Label_133F8:
if (_tablesArray[num36].cell > 0)
{
    goto Label_13399;
}
buf.Add("\n\\pard \\intbl");
str11 = @"\itap" + _tablesArray[num36].table_level + " ";
buf.Add(str11);
num11 += str11.Length;
buf.Add(_tablesArray[num36].nestTblDescription);
buf.Add(@"\nestrow}{\nonesttables\par}" + this.LF);
num36--;
Label_13474:
if (num36 > 0)
{
    goto Label_133F8;
}
Label_1349C:
while (_tablesArray[num36].cell > 0)
{
    buf.Add("\n\\pard \\intbl\\cell");
    nest_tables _tables52 = _tablesArray[num36];
    _tables52.cell--;
}
buf.Add("\n\\pard \\intbl \\row \\pard");
break;
Label_134B7:
num++;
                }
            }
            
            if (this._outputTextFormat == eOutputTextFormat.Rtf)
            {
                if (this._rtfParts == eRtfParts.RtfBody)
                {
                    buf.Add("}");
                }
                else
                {
                    buf.Add(@"\pard}");
                }
            }
            int num72 = 0;
            int num73 = 0;
            for (num7 = 0; num7 < buf.len; num7++)
            {
                if (buf.b[num7] == 0x5c)
                {
                    num7++;
                }
                else
                {
                    if (buf.b[num7] == 0x7b)
                    {
                        num72++;
                    }
                    if (buf.b[num7] == 0x7d)
                    {
                        num73++;
                    }
                }
            }
            for (num7 = 0; num7 < (num72 - num73); num7++)
            {
                buf.Add("}");
            }
            return buf.ByteToString();
        }
Esempio n. 3
0
 private int get_max_tblen_width(nest_tables prev_tab)
 {
     int tBLEN = this.TBLEN;
     int num2 = prev_tab.td_up_curcol;
     int num3 = prev_tab.tr_cur - 1;
     if (num3 < 0)
     {
         num3 = 0;
     }
     if (num2 > 0)
     {
         tBLEN = prev_tab.table_map[num3, num2 + 1] - prev_tab.table_map[num3, num2];
     }
     else
     {
         tBLEN = prev_tab.table_map[num3, 1];
     }
     if ((tBLEN > 0) && (tBLEN <= this.TBLEN))
     {
         return tBLEN;
     }
     return this.TBLEN;
 }
Esempio n. 4
0
 private void table_free_carts(nest_tables nested_table)
 {
     if (nested_table.table_array != null)
     {
         nested_table.table_array = null;
     }
     if (nested_table.table_colspan != null)
     {
         nested_table.table_colspan = null;
     }
     if (nested_table.table_images != null)
     {
         nested_table.table_images = null;
     }
     if (nested_table.table_symbols != null)
     {
         nested_table.table_symbols = null;
     }
     if (nested_table.table_width != null)
     {
         nested_table.table_width = null;
     }
 }
Esempio n. 5
0
 private void table_clear_carts(nest_tables nested_table)
 {
     if (nested_table.table_array != null)
     {
         nested_table.table_array = null;
     }
     if (nested_table.table_colspan != null)
     {
         nested_table.table_colspan = null;
     }
     if (nested_table.table_rowspan != null)
     {
         nested_table.table_rowspan = null;
     }
     if (nested_table.table_images != null)
     {
         nested_table.table_images = null;
     }
     if (nested_table.table_symbols != null)
     {
         nested_table.table_symbols = null;
     }
     if (nested_table.table_width != null)
     {
         nested_table.table_width = null;
     }
     if (nested_table.table_map != null)
     {
         nested_table.table_map = null;
     }
     if (nested_table.table_colbg != null)
     {
         nested_table.table_colbg = null;
     }
     if (nested_table.table_valign != null)
     {
         nested_table.table_valign = null;
     }
 }
Esempio n. 6
0
 private bool table_alloc_carts(nest_tables nested_table)
 {
     nested_table.table_array = this.table_allocate(nested_table.table_p.rows, nested_table.table_p.cols + 2);
     nested_table.table_colspan = this.table_allocate(nested_table.table_p.rows, nested_table.table_p.cols + 2);
     nested_table.table_rowspan = this.table_allocate(nested_table.table_p.rows, nested_table.table_p.cols + 2);
     nested_table.table_images = this.table_allocate(nested_table.table_p.rows, nested_table.table_p.cols + 2);
     nested_table.table_symbols = this.table_allocate(nested_table.table_p.rows, nested_table.table_p.cols + 2);
     nested_table.table_width = this.table_allocate(nested_table.table_p.rows, nested_table.table_p.cols + 2);
     nested_table.table_colbg = this.table_allocate(nested_table.table_p.rows, nested_table.table_p.cols + 2);
     nested_table.table_valign = this.table_allocate(nested_table.table_p.rows, nested_table.table_p.cols + 2);
     nested_table.table_map = this.table_allocate(nested_table.table_p.rows, nested_table.table_p.cols + 2);
     return true;
 }
Esempio n. 7
0
 private void set_default_td_width_nested(nest_tables nested_table, int MAX)
 {
     for (int i = 0; i < (nested_table.td - 1); i++)
     {
         nested_table.td_width[i] = (MAX * (i + 1)) / nested_table.td;
     }
     nested_table.td_width[nested_table.td - 1] = MAX;
 }
Esempio n. 8
0
 private void nested_table_clear(nest_tables nested_table)
 {
     nested_table.table = false;
     nested_table.table_border_visible = false;
     nested_table.table_p.cols = 0;
     nested_table.table_p.percent_width = 0;
     nested_table.table_p.rows = 0;
     nested_table.table_p.table_tag = 0;
     nested_table.table_p.table_width = 0;
     nested_table.table_p.tableAlign = 0;
     nested_table.tblen = 0;
     nested_table.td = 0;
     nested_table.td_align = "";
     nested_table.td_bg = 0;
     nested_table.td_open = false;
     nested_table.td_percent_width.Initialize();
     nested_table.td_up_columns = 0;
     nested_table.td_up_curcol = 0;
     nested_table.td_up_width = 0;
     nested_table.td_width.Initialize();
     nested_table.tdAlignColgroup.Initialize();
     nested_table.tr_align = "";
     nested_table.tr_bg = 0;
     nested_table.tr_cur = 0;
     nested_table.tr_open = false;
     nested_table.table_level = 0;
 }