public TextMasterStyle9Atom(BinaryReader _reader, uint size, uint typeCode, uint version, uint instance)
            : base(_reader, size, typeCode, version, instance)
        {
            uint level = this.Reader.ReadUInt16();

            for (int i = 0; i < level; i++)
            {
                ParagraphMask pmask = (ParagraphMask)Reader.ReadUInt32();
                ParagraphRun9 pr    = new ParagraphRun9();
                pr.mask = pmask;
                if ((pmask & ParagraphMask.BulletBlip) != 0)
                {
                    int bulletblipref = Reader.ReadInt16();
                    pr.bulletblipref = bulletblipref;
                }
                if ((pmask & ParagraphMask.BulletHasScheme) != 0)
                {
                    pr.fBulletHasAutoNumber = Reader.ReadInt16();
                }
                if ((pmask & ParagraphMask.BulletScheme) != 0)
                {
                    pr.bulletAutoNumberScheme = Reader.ReadUInt16();
                    pr.startAt = Reader.ReadInt16(); //start value
                }
                this.pruns.Add(pr);

                CharacterMask cmask = (CharacterMask)Reader.ReadUInt32();
                if ((cmask & CharacterMask.pp11ext) != 0)
                {
                    byte[] rest = Reader.ReadBytes(4);
                }
            }
        }
        public StyleTextProp9Atom(BinaryReader _reader, uint size, uint typeCode, uint version, uint instance)
            : base(_reader, size, typeCode, version, instance)
        {
            while (Reader.BaseStream.Position < Reader.BaseStream.Length)
            {
                try
                {
                    ParagraphRun9 pr    = new ParagraphRun9();
                    ParagraphMask pmask = (ParagraphMask)Reader.ReadUInt32();
                    pr.mask = pmask;
                    if ((pmask & ParagraphMask.BulletBlip) != 0)
                    {
                        int bulletblipref = Reader.ReadInt16();
                        pr.bulletblipref = bulletblipref;
                    }
                    if ((pmask & ParagraphMask.BulletHasScheme) != 0)
                    {
                        pr.fBulletHasAutoNumber = Reader.ReadInt16();
                    }
                    if ((pmask & ParagraphMask.BulletScheme) != 0)
                    {
                        pr.bulletAutoNumberScheme = Reader.ReadInt16();
                        pr.startAt = Reader.ReadInt16(); //start value
                    }
                    P9Runs.Add(pr);

                    CharacterMask cmask = (CharacterMask)Reader.ReadUInt32();
                    if ((cmask & CharacterMask.pp11ext) != 0)
                    {
                        byte[] rest = Reader.ReadBytes(4);
                    }

                    si = new TextSIException(Reader);
                }
                catch (Exception)
                {
                    //ignore
                }
            }
        }