Skip to content

TRichEditDemo 项目分析

项目信息

  • 项目名称: TRichEditDemo
  • 下载链接: TRichEditDemo.rar
  • 分析时间: 2026-03-05

运行截图

文件结构

TRichEditDemo/
├── Extractor_Icon.ico
├── Project1.py
├── Project1.xml
├── enumfont.py
├── overview.rtf
├── reabout.py
├── reabout.pydfm
├── reabout.sct
├── reabout.sfm
├── remain.py
├── remain.pydfm
├── remain.sct
├── remain.sfm

主程序文件: Project1.py

import sys
import sys
import sys
import sys
from glcl import *
from remain import *

def main():
    Application.Initialize()
    Application.Title = 'Project1'
    Application.MainFormOnTaskbar = True
    Application.Icon.LoadFromFile(os.path.join(os.path.dirname(os.path.abspath(__file__)), "Extractor_Icon.ico"))
    MainForm1 = MainForm(Application)
    MainForm1.Show()
    FreeConsole()
    Application.Run()
    MainForm1.Free()

if __name__ == '__main__':
    main()

单元文件: remain.py

import os
from glcl import *
from enumfont import *
import sys
from reabout import *

class MainForm(Form):

    def __init__(self, owner):
        # 初始化各种UI组件
        self.MainMenu1 = MainMenu(self)
        self.Ruler1 = Panel(self)
        self.FontDialog1 = FontDialog(self)
        self.FirstInd1 = Label(self)
        self.LeftInd1 = Label(self)
        self.RulerLine1 = Bevel(self)
        self.RightInd1 = Label(self)
        self.miEditFont1 = MenuItem(self)
        self.Editor = RichEdit(self)
        self.StatusBar1 = StatusBar(self)
        self.StandardToolBar1 = ToolBar(self)
        self.FontName = ComboBox(self)
        self.FontSize1 = Edit(self)
        self.UpDown11 = UpDown(self)
        self.ToolbarImages1 = ImageList(self)
        self.ActionList1 = ActionList(self)
        self.Bevel11 = Bevel(self)
        self.FGColorBox1 = ColorBox(self)
        self.BGColorBox1 = ColorBox(self)
        self.FileNewCmd1 = Action(self)
        self.FileOpenCmd1 = Action(self)
        self.OpenDialog11 = OpenDialog(self)
        self.SaveDialog11 = SaveDialog(self)
        # 从文件加载窗体属性
        self.LoadProps(os.path.join(os.path.dirname(os.path.abspath(__file__)), "remain.pydfm"))
        # 设置各种事件处理器
        self.FontSize.OnChange = self.FontSizeChange
        self.BGColorBox.OnChange = self.BGColorBoxChange
        self.FGColorBox.OnChange = self.FGColorBoxChange
        self.SubscriptCmd.OnUpdate = self.SubscriptCmdUpdate
        self.SuperscriptCmd.OnUpdate = self.SuperscriptCmdUpdate
        self.FormatRichEditAlignCenterCmd.OnUpdate = self.FormatRichEditAlignCenterCmdUpdate
        self.FormatRichEditAlignRightCmd.OnUpdate = self.FormatRichEditAlignRightCmdUpdate
        self.FormatRichEditAlignLeftCmd.OnUpdate = self.FormatRichEditAlignLeftCmdUpdate
        self.FormatRichEditBulletsCmd.OnUpdate = self.FormatRichEditBulletsCmdUpdate
        self.FormatRichEditStrikeOutCmd.OnUpdate = self.FormatRichEditStrikeOutCmdUpdate
        self.FormatRichEditUnderlineCmd.OnUpdate = self.FormatRichEditUnderlineCmdUpdate
        self.FormatRichEditItalicCmd.OnUpdate = self.FormatRichEditItalicCmdUpdate
        self.FormatRichEditBoldCmd.OnUpdate = self.FormatRichEditBoldCmdUpdate
        self.Editor.OnLinkClick = self.EditorLinkClick
        self.Editor.OnClick = self.EditorClick
        self.OnCloseQuery = self.FormCloseQuery
        self.FontName.OnChange = self.FontNameChange
        self.RightInd.OnMouseUp = self.RightIndMouseUp
        self.RightInd.OnMouseMove = self.RulerItemMouseMove
        self.RightInd.OnMouseDown = self.RulerItemMouseDown
        self.FirstInd.OnMouseUp = self.FirstIndMouseUp
        self.FirstInd.OnMouseMove = self.RulerItemMouseMove
        self.FirstInd.OnMouseDown = self.RulerItemMouseDown
        self.LeftInd.OnMouseUp = self.LeftIndMouseUp
        self.LeftInd.OnMouseMove = self.RulerItemMouseMove
        self.LeftInd.OnMouseDown = self.RulerItemMouseDown
        self.HelpAboutItem.OnClick = self.HelpAboutItemClick
        self.RichEditWordWrapItem.OnClick = self.RichEditWordWrapItemClick
        self.RichEditTransparentItem.OnClick = self.RichEditTransparentItemClick
        self.miEditFont.OnClick = self.miEditFontClick
        self.SubscriptCmd.OnExecute = self.SubscriptCmdExecute
        self.SuperscriptCmd.OnExecute = self.SuperscriptCmdExecute
        self.FormatRichEditAlignCenterCmd.OnExecute = self.FormatRichEditAlignCenterCmdExecute
        self.FormatRichEditAlignRightCmd.OnExecute = self.FormatRichEditAlignRightCmdExecute
        self.FormatRichEditAlignLeftCmd.OnExecute = self.FormatRichEditAlignLeftCmdExecute
        self.FormatRichEditBulletsCmd.OnExecute = self.FormatRichEditBulletsCmdExecute
        self.FormatRichEditStrikeOutCmd.OnExecute = self.FormatRichEditStrikeOutCmdExecute
        self.FormatRichEditUnderlineCmd.OnExecute = self.FormatRichEditUnderlineCmdExecute
        self.FormatRichEditItalicCmd.OnExecute = self.FormatRichEditItalicCmdExecute
        self.FormatRichEditBoldCmd.OnExecute = self.FormatRichEditBoldCmdExecute
        self.EditFontCmd.OnExecute = self.EditFontCmdExecute
        self.EditPasteCmd.OnExecute = self.EditPasteCmdExecute
        self.EditCopyCmd.OnExecute = self.EditCopyCmdExecute
        self.EditCutCmd.OnExecute = self.EditCutCmdExecute
        self.EditUndoCmd.OnExecute = self.EditUndoCmdExecute
        self.FileSaveAsCmd.OnExecute = self.FileSaveAsCmdExecute
        self.FileExitCmd.OnExecute = self.FileExitCmdExecute
        self.FilePrintCmd.OnExecute = self.FilePrintCmdExecute
        self.FileSaveCmd.OnExecute = self.FileSaveCmdExecute
        self.FileOpenCmd.OnExecute = self.FileOpenCmdExecute
        self.FileNewCmd.OnExecute = self.FileNewCmdExecute
        self.Editor.OnSelectionChange = self.SelectionChange
        self.Editor.OnChange = self.EditorChange
        self.Ruler1.OnResize = self.Ruler1Resize
        self.OnResize = self.MainFormResize
        self.OnShow = self.FormShow

        # 初始化变量
        self.FFileName = ''
        self.FUpdating = False
        self.FDragOfs = 0
        self.FDragging = False
        self.sSaveChanges = 'Save changes to {}?'
        self.sOverWrite = 'OK to overwrite {}'
        self.sUntitled = 'Untitled'
        self.sModified = 'Modified'
        self.sColRowInfo = 'Line: {}   Col: {}'
        self.sScrollPos = 'Scroll Pos: ({}, {})'
        self.sOpenLink = 'Open link: {} ?'
        self.RulerAdj = 4/3
        self.GutterWid = 6

        # 设置初始UI状态
        self.OpenDialog1.InitialDir = os.getcwd()
        self.SetFileName(self.sUntitled)
        self.GetFontNames()
        self.SetupRuler()
        self.SelectionChange(self)

        # 设置编辑器初始属性
        self.CurrText().Name = self.FontDialog1.Font.Name
        self.CurrText().Size = self.FontDialog1.Font.Size
        self.RichEditTransparentItem.Checked = self.Editor.Transparent
        self.RichEditWordWrapItem.Checked = self.Editor.ScrollBars == 'ssVertical'
        self.Editor.ShowURLHint = True
        '''如窗体设置了皮肤,为使Editor所有功能正常使用,建议设置它的风格为Windows,
        也可以通过属性面板设置'这个属性'''
        self.Editor.StyleName = 'Windows'

    def MainFormResize(self, Sender):
        # 处理窗体大小改变事件
        try:
            self.SelectionChange(Sender)
            self.Editor.Invalidate()
        except:
            pass

    def Ruler1Resize(self, Sender):
        # 调整标尺线宽度
        self.RulerLine.Width = self.Ruler1.ClientWidth - (self.RulerLine.Left*2)

    def UpdateCursorPos(self):
        # 更新光标位置显示
        CharPos = Point(0, 0)
        CharPos.Y = Application.SendMessage(self.Editor.Handle, EM_EXLINEFROMCHAR, 0, self.Editor.SelStart)
        CharPos.X = (self.Editor.SelStart - Application.SendMessage(self.Editor.Handle, EM_LINEINDEX, CharPos.Y, 0))
        CharPos.Y += 1
        CharPos.X += 1
        self.StatusBar.Panels[0].Text = self.sColRowInfo.format(CharPos.Y, CharPos.X)
        self.StatusBar.Panels[1].Text = self.sScrollPos.format(self.Editor.ScrollPosition.X, self.Editor.ScrollPosition.Y)

    def SelectionChange(self, Sender):
        # 处理选择内容改变事件
        try:
            self.FUpdating = True
            self.FirstInd.Left = int(self.Editor.Paragraph.FirstIndent*self.RulerAdj)-4+self.GutterWid
            self.LeftInd.Left = int((self.Editor.Paragraph.LeftIndent+self.Editor.Paragraph.FirstIndent)*self.RulerAdj)-4+self.GutterWid
            self.RightInd.Left = self.Ruler1.ClientWidth-6-int((self.Editor.Paragraph.RightIndent+self.GutterWid)*self.RulerAdj)
            self.FontSize.Text = str(self.Editor.SelAttributes.Size)
            self.FontName.Text = self.Editor.SelAttributes.Name
            self.FGColorBox.Selected = self.Editor.SelAttributes.Color
            self.BGColorBox.Selected = self.Editor.SelAttributes.BackColor
            self.UpdateCursorPos()
        finally:
            self.FUpdating = False

    def SetupRuler(self):
        # 设置标尺显示
        s = []
        for i in range(200):
            if i % 2 == 0:  # even indices (0, 2, 4...) correspond to odd positions in Delphi (1-based)
                s.append('\t')
            else:           # odd indices (1, 3, 5...) correspond to even positions in Delphi
                s.append('|')
        self.Ruler1.Caption = ''.join(s)

    def GetFontNames(self):
        # 获取所有可用字体名称
        for font in get_all_windows_fonts():
            self.FontName.Items.Add(font)
        self.FontName.Sorted = True

    def SetFileName(self, FileName):
        # 设置当前文件名
        self.FFileName = FileName
        self.Caption = '%s - %s'.format(os.path.basename(FileName), Application.Title)

    def FormShow(self, Sender):
        # 窗体显示时初始化
        self.UpdateCursorPos()
        # TODO->拖拽文件组件实例: https://dl.glsite.com/ComponentsDemos/DropFiles/DropFileSimpleDemo.rar
        # 参考上面URL实例,完成文件拖拽到编辑器能够加载显示的功能,另外还可以添加一个右键菜单并新建一些子菜单,
        # 然后设置子菜单的Action并将右键菜单关联到RichEdit控件
        self.EditorChange(None)
        self.Editor.SetFocus()

        # 尝试自动打开文件
        if os.path.exists('overview.rtf'):
            self.PerformFileOpen('overview.rtf')
        elif os.path.exists('..\..\overview.rtf'):
            self.PerformFileOpen('..\..\overview.rtf')
        elif (len(sys.argv) > 1) and os.path.exists(sys.argv[1]):
            self.PerformFileOpen(sys.argv[1])

    def EditorChange(self, Sender):
        # 编辑器内容改变时处理
        self.SetModified(self.Editor.Modified)
        self.UpdateCursorPos()

    def SetModified(self, Value):
        # 设置修改状态
        if Value:
            self.StatusBar.Panels[2].Text = self.sModified
        else:
            self.StatusBar.Panels[2].Text = ''

    def SetFileName(self, FileName):
        self.FFileName = FileName
        self.Caption = '{} - {}'.format(os.path.basename(FileName), Application.Title)

    def PerformFileOpen(self, AFileName):
        # 打开文件
        self.Editor.Lines.LoadFromFile(AFileName)
        self.SetFileName(AFileName)
        self.Editor.SetFocus()
        self.Editor.Modified = False
        self.SetModified(False)

    def FileNewCmdExecute(self, Sender):
        # 新建文件
        self.SetFileName(self.sUntitled)
        self.Editor.Lines.Clear()
        self.Editor.Modified = False
        self.SetModified(False)

    def FileOpenCmdExecute(self, Sender):
        # 打开文件
        if self.OpenDialog1.Execute():
            self.PerformFileOpen(self.OpenDialog1.FileName)
            self.Editor.ReadOnly = 'ofReadOnly' in self.OpenDialog1.Options

    def FileSaveAs(self, Sender):
        # 另存为文件
        if os.path.exists(self.SaveDialog1.FileName):
            if Application.MessageBox(self.sOverWrite.format(self.SaveDialog1.FileName), 'Confirmation', MB_YESNO or MB_ICONQUESTION) != IDYES:
                return
        self.Editor.Lines.SaveToFile(self.SaveDialog1.FileName)
        self.SetFileName(self.SaveDialog1.FileName)
        self.Editor.Modified = False
        self.SetModified(False)

    def FileSaveCmdExecute(self, Sender):
        # 保存文件
        if self.FFileName == self.sUntitled:
            self.FileSaveAs(Sender)
        else:
            self.Editor.Lines.SaveToFile(self.FFileName)
            self.Editor.Modified = False
            self.SetModified(False)

    def FilePrintCmdExecute(self, Sender):
        # 打印文件
        self.Editor.Print(self.FFileName)

    def FileExitCmdExecute(self, Sender):
        # 退出程序
        Application.MainForm.Close()

    def FileSaveAsCmdExecute(self, Sender):
        # 另存为
        if self.SaveDialog1.Execute():
            if os.path.exists(self.SaveDialog1.FileName):
                if Application.MessageBox(self.sOverWrite.format(self.SaveDialog1.FileName), 'Confirmation', MB_YESNO or MB_ICONQUESTION) != IDYES:
                    return
            self.Editor.Lines.SaveToFile(self.SaveDialog1.FileName)
            self.SetFileName(self.SaveDialog1.FileName)
            self.Editor.Modified = False
            self.SetModified(False)

    def EditUndoCmdExecute(self, Sender):
        # 撤销操作
        self.Editor.Undo()

    def EditCutCmdExecute(self, Sender):
        # 剪切操作
        self.Editor.CutToClipboard()

    def EditCopyCmdExecute(self, Sender):
        # 复制操作
        self.Editor.CopyToClipboard()

    def EditPasteCmdExecute(self, Sender):
        # 粘贴操作
        self.Editor.PasteFromClipboard()

    def CurrText(self):
        # 获取当前文本属性
        if self.Editor.SelLength > 0:
            return self.Editor.SelAttributes
        else:
            return self.Editor.DefAttributes

    def EditFontCmdExecute(self, Sender):
        # 设置字体
        self.CurrText.Assign(self.FontDialog1.Font)
        self.SelectionChange(Self)
        self.Editor.SetFocus()

    def SetFontStyle(self, Edit: CustomRichEdit, Style):
        # 设置字体样式
        if Edit == None:
            return
        if Style in Edit.SelAttributes.Style:
            styles = Edit.SelAttributes.Style
            styles.remove(Style)
            Edit.SelAttributes.Style = styles
        else:
            Edit.SelAttributes.Style = Edit.SelAttributes.Style + [Style]

    def FormatRichEditBoldCmdExecute(self, Sender):
        # 加粗
        self.SetFontStyle(self.Editor, 'fsBold')

    def FormatRichEditItalicCmdExecute(self, Sender):
        # 斜体
        self.SetFontStyle(self.Editor, 'fsItalic')

    def FormatRichEditUnderlineCmdExecute(self, Sender):
        # 下划线
        self.SetFontStyle(self.Editor, 'fsUnderline')

    def FormatRichEditStrikeOutCmdExecute(self, Sender):
        # 删除线
        self.SetFontStyle(self.Editor, 'fsStrikeOut')

    def FormatRichEditBulletsCmdExecute(self, Sender):
        # 项目符号
        if self.Editor.Paragraph.Numbering == 'nsNone':
            self.Editor.Paragraph.Numbering = 'nsBullet'
        else:
            self.Editor.Paragraph.Numbering = 'nsNone'

    def FormatRichEditAlignLeftCmdExecute(self, Sender):
        # 左对齐命令
        self.Editor.Paragraph.Alignment = 'taLeftJustify'
        self.FormatRichEditAlignLeftCmd.Checked = True

    def FormatRichEditAlignRightCmdExecute(self, Sender):
        # 右对齐命令
        self.Editor.Paragraph.Alignment = 'taRightJustify'
        self.FormatRichEditAlignRightCmd.Checked = True

    def FormatRichEditAlignCenterCmdExecute(self, Sender):
        # 居中对齐命令
        self.Editor.Paragraph.Alignment = 'taCenter'
        self.FormatRichEditAlignCenterCmd.Checked = True

    def SuperscriptCmdExecute(self, Sender):
        # 上标
        self.Editor.SelAttributes.Subscript = 'sstSuperscript'

    def SubscriptCmdExecute(self, Sender):
        # 下标
        self.Editor.SelAttributes.Subscript = 'sstSubscript'

    def miEditFontClick(self, Sender):
        # 编辑字体菜单点击
        if self.FontDialog1.Execute():
            self.CurrText().Assign(self.FontDialog1.Font)
            self.SelectionChange(self)
            self.Editor.SetFocus()

    def RichEditTransparentItemClick(self, Sender):
        # 透明背景切换
        self.RichEditTransparentItem.Checked = not self.RichEditTransparentItem.Checked
        self.Editor.Transparent = self.RichEditTransparentItem.Checked

    def RichEditWordWrapItemClick(self, Sender):
        # 自动换行切换
        self.RichEditWordWrapItem.Checked = not self.RichEditWordWrapItem.Checked
        if self.RichEditWordWrapItem.Checked:
            self.Editor.ScrollBars = 'ssVertical'
        else:
            self.Editor.ScrollBars = 'ssBoth'

    def HelpAboutItemClick(self, Sender):
        # 显示关于对话框
        ab = AboutBox(self)
        ab.ShowModal()
        ab.Free()

    def RulerItemMouseDown(self, Sender, Button, Shift, X, Y):
        # 标尺鼠标按下事件
        self.FDragOfs = (Sender.Width / 2)
        Sender.Left = (Sender.Left + X - self.FDragOfs)
        self.FDragging = True

    def RulerItemMouseMove(self, Sender, Shift, X, Y):
        # 标尺鼠标移动事件
        if self.FDragging:
            Sender.Left = Sender.Left + X - self.FDragOfs

    def FirstIndMouseUp(self, Sender, Button, Shift, X, Y):
        # 首行缩进鼠标释放事件
        self.FDragging = False
        self.Editor.Paragraph.FirstIndent = int((self.FirstInd.Left + self.FDragOfs - self.GutterWid) / self.RulerAdj)
        self.LeftIndMouseUp(Sender, Button, Shift, X, Y)

    def LeftIndMouseUp(self, Sender, Button, Shift, X, Y):
        # 左缩进鼠标释放事件
        self.FDragging = False
        self.Editor.Paragraph.LeftIndent = int((self.LeftInd.Left + self.FDragOfs - self.GutterWid) / self.RulerAdj) - self.Editor.Paragraph.FirstIndent
        self.SelectionChange(Sender)

    def RightIndMouseUp(self, Sender, Button, Shift, X, Y):
        # 右缩进鼠标释放事件
        self.FDragging = False
        self.Editor.Paragraph.RightIndent = int((self.Ruler.ClientWidth - self.RightInd.Left + self.FDragOfs - 2) / self.RulerAdj) -2 * self.GutterWid
        self.SelectionChange(Sender)

    def FontNameChange(self, Sender):
        # 字体名称改变事件
        if self.FontName.ItemIndex >= 0:
            if self.FUpdating:
                return
            self.CurrText().Name = self.FontName.Items[self.FontName.ItemIndex]

    def FileSave(self, Sender):
        # 保存文件
        if self.FFileName == self.sUntitled:
            self.FileSaveAs(Sender)
        else:
            self.Editor.Lines.SaveToFile(self.FFileName)
            self.Editor.Modified = False
            self.SetModified(False)

    def CheckFileSave(self):
        # 检查是否需要保存文件
        if not self.Editor.Modified:
            return
        SaveResp = Application.MessageBox(self.sSaveChanges.format(self.FFileName), 'Confirmation', MB_YESNOCANCEL or MB_ICONQUESTION)
        if SaveResp == IDYES:
            self.FileSave(self)
        elif SaveResp == IDNO:
            pass
        elif SaveResp == IDCANCEL:
            raise ValueError('取消操作')

    def FormCloseQuery(self, Sender, CanClose):
         # 窗体关闭前查询
        self.CheckFileSave()

    def EditorClick(self, Sender):
        # 编辑器点击事件
        self.UpdateCursorPos()

    def EditorLinkClick(self, Sender, URL, Button):
        # 编辑器链接点击事件
        if (Button == 'mbLeft') and (Application.MessageBox(self.sOpenLink.format(URL), 'Confirmation', MB_YESNO or MB_ICONQUESTION) == IDYES):
            Application.ShellExecute(self.Handle, 'open', URL, None, None, SW_SHOWNORMAL)

    def FormatRichEditBoldCmdUpdate(self, Sender):
        # 更新加粗按钮状态
        self.FormatRichEditBoldCmd.Checked = 'fsBold' in self.Editor.SelAttributes.Style

    def FormatRichEditItalicCmdUpdate(self, Sender):
        # 更新斜体按钮状态
        self.FormatRichEditItalicCmd.Checked = 'fsItalic' in self.Editor.SelAttributes.Style

    def FormatRichEditUnderlineCmdUpdate(self, Sender):
        # 更新下划线按钮状态
        self.FormatRichEditUnderlineCmd.Checked = 'fsUnderline' in self.Editor.SelAttributes.Style

    def FormatRichEditStrikeOutCmdUpdate(self, Sender):
        # 更新删除线按钮状态
        self.FormatRichEditStrikeOutCmd.Checked = 'fsStrikeOut' in self.Editor.SelAttributes.Style

    def FormatRichEditBulletsCmdUpdate(self, Sender):
        # 更新项目符号按钮状态
        self.FormatRichEditBulletsCmd.Checked = self.FormatRichEditBulletsCmd.Enabled and (self.Editor.Paragraph.Numbering == 'nsBullet')

    def FormatRichEditAlignLeftCmdUpdate(self, Sender):
        # 更新左对齐按钮状态
        self.FormatRichEditAlignLeftCmd.Checked = self.FormatRichEditAlignLeftCmd.Enabled and (self.Editor.Paragraph.Alignment == 'taLeftJustify')

    def FormatRichEditAlignRightCmdUpdate(self, Sender):
        # 更新右对齐按钮状态
        self.FormatRichEditAlignRightCmd.Checked = self.FormatRichEditAlignRightCmd.Enabled and (self.Editor.Paragraph.Alignment == 'taRightJustify')

    def FormatRichEditAlignCenterCmdUpdate(self, Sender):
        # 更新居中对齐按钮状态
        self.FormatRichEditAlignCenterCmd.Checked = self.FormatRichEditAlignCenterCmd.Enabled and (self.Editor.Paragraph.Alignment == 'taCenter')

    def SuperscriptCmdUpdate(self, Sender):
        # 更新上标按钮状态
        Sender.Checked = self.Editor.SelAttributes.Subscript == 'sstSuperscript'

    def SubscriptCmdUpdate(self, Sender):
        # 更新下标按钮状态
        Sender.Checked = self.Editor.SelAttributes.Subscript == 'sstSubscript'

    def FGColorBoxChange(self, Sender):
        # 前景色改变事件
        self.Editor.SelAttributes.Color = self.FGColorBox.Selected

    def BGColorBoxChange(self, Sender):
        # 背景色改变事件
        self.Editor.SelAttributes.BackColor = self.BGColorBox.Selected

    def FontSizeChange(self, Sender):
        # 字体大小改变事件
        if self.FUpdating:
            return
        self.CurrText().Size = int(self.FontSize.Text)

单元文件: Unit1.py

import os
from glcl import *

class AboutBox(Form):

    def __init__(self, owner):
        self.LoadProps(os.path.join(os.path.dirname(os.path.abspath(__file__)), "reabout.pydfm"))

设计文件: reabout.sct


设计文件: reabout.sfm

object AboutBox: TForm
  Left = 0
  Top = 0
  BorderStyle = bsDialog
  Caption = 'About RichEdit'
  ClientHeight = 130
  ClientWidth = 367
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clBlack
  Font.Height = -11
  Font.Name = 'MS Sans Serif'
  Font.Style = []
  Position = poScreenCenter
  TextHeight = 13
  object ProgramIcon: TImage
    Left = 8
    Top = 12
    Width = 64
    Height = 64
    AutoSize = True
    Picture.Data = {
      07544269746D617036300000424D363000000000000036000000280000004000
      0000400000000100180000000000003000000000000000000000000000000000
      0000BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBF7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
      7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
      7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
      7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
      7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
      7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBF7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
      7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
      7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
      7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
      7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
      7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F00007F00007F00007F00007F00007F00007F0000
      7F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00
      007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F
      00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F0000
      7F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00
      007F00007F00007F00007F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F00007F00007F00007F00007F00007F00007F0000
      7F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00
      007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F
      00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F0000
      7F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00
      007F00007F00007F00007F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFF000000000000000000000000
      000000000000000000000000000000000000000000000000FFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFF000000FF0000FF0000FF0000
      FF0000FF0000FF0000FF0000FF0000FF0000FF0000000000FFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFF000000FF0000FF0000FF0000
      FF0000FF0000FF0000FF0000FF0000FF0000FF00000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFF000000FF0000FF0000FF0000
      FF0000FF0000FF0000FF0000FF0000FF0000FF00000000000000FF0000FF0000
      FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00
      00FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFF000000FF0000FF0000FF0000
      FF0000FF0000FF0000FF0000FF0000FF0000FF00000000000000000000FF0000
      FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00
      00FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFF000000FF0000FF0000FF0000
      FF0000FF0000FF0000FF0000FF0000FF0000FF0000000000FFFFFF0000000000
      FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00
      0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFF000000FF0000FF0000FF0000
      FF0000FF0000FF0000FF00000000000000000000000000000000000000007F7F
      7F0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF000000FF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000
      000000000000000000000000000000000000000000000000000000000000FFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFF000000FF0000FF0000FF0000
      FF0000FF0000FF000000000000FFFF00FFFF00FFFF00FFFF00FFFF00FFFF0000
      007F7F7F0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF000000FF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000
      000000000000000000000000000000000000000000000000000000000000FFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFF000000FF0000FF0000FF0000
      FF0000FF000000000000FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
      FF0000007F7F7F0000FF0000FF0000FF0000FF0000FF0000FF000000FFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFF000000FF0000FF0000FF0000
      FF000000000000FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
      FF00FFFF0000007F7F7F0000FF0000FF0000FF0000FF000000FFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFF000000FF0000FF0000FF0000
      00000000FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
      FF00FFFF0000007F7F7F0000FF0000FF0000FF0000FF000000FFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFF000000000000000000000000000000000000000000000000
      000000000000000000000000000000000000000000000000000000000000FFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFF000000000000000000000000
      00000000FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
      FF00FFFF00FFFF0000007F7F7F0000FF0000FF000000FFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFF000000000000000000000000000000000000000000000000
      000000000000000000000000000000000000000000000000000000000000FFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      00000000FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
      FF00FFFF00FFFF0000000000FF0000FF0000FF000000FFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      00000000FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
      FF00FFFF00FFFF0000000000FF0000FF000000FFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      00000000FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
      FF00FFFF00FFFF0000000000FF000000FFFFFFFFFFFFFFFFFFFFFFFF00000000
      0000000000000000000000000000000000000000000000000000000000000000
      000000000000000000000000000000000000000000000000000000000000FFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      00000000FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
      FF00FFFF00FFFF0000000000FF000000FFFFFFFFFFFFFFFFFFFFFFFF00000000
      0000000000000000000000000000000000000000000000000000000000000000
      000000000000000000000000000000000000000000000000000000000000FFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFF00000000FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
      FF00FFFF000000FFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFF00000000FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FFFF00FF
      FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFF00000000FFFF00FFFF00FFFF00FFFF00FFFF00FFFF0000
      00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000000000000000000000000000
      0000000000000000000000000000FFFFFFFFFFFF000000000000000000000000
      000000000000000000000000000000000000000000000000000000000000FFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000FFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000000000000000000000000000
      0000000000000000000000000000FFFFFFFFFFFF000000000000000000000000
      000000000000000000000000000000000000000000000000000000000000FFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFF000000000000000000000000
      000000000000000000000000000000000000FFFFFFFFFFFF0000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      FFFFFFFFFFFF000000000000000000000000000000000000000000000000FFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFF000000000000000000000000
      000000000000000000000000000000000000FFFFFFFFFFFF0000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      FFFFFFFFFFFF000000000000000000000000000000000000000000000000FFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFF000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      00000000000000000000000000000000FFFFFFFFFFFF00000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      000000000000000000000000000000000000000000000000000000000000FFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFF000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      00000000000000000000000000000000FFFFFFFFFFFF00000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      000000000000000000000000000000000000000000000000000000000000FFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFF7F7F7F000000000000
      BFBFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000
      00FFFFFFFFFFFF00000000000000000000000000000000000000000000000000
      00007F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBF7F7F7F
      0000000000000000007F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFBFBFBF000000000000
      7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBF0000000000007F7F
      7FFFFFFFFFFFFF7F7F7F00000000000000000000000000000000000000000000
      00000000000000007F7F7FFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F000000000000
      0000000000000000000000000000007F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFF7F7F7F000000
      0000007F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBF0000000000007F7F
      7FFFFFFFFFFFFF7F7F7F00000000000000000000000000000000000000000000
      00000000000000000000007F7F7FFFFFFFFFFFFFBFBFBF000000000000000000
      0000000000000000000000000000000000007F7F7FFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFBFBFBF000000
      0000000000000000000000000000000000000000000000000000000000007F7F
      7FFFFFFFFFFFFFBFBFBF0000000000007F7F7FFFFFFFFFFFFFFFFFFFFFFFFFBF
      BFBF7F7F7F0000000000007F7F7FFFFFFFFFFFFF7F7F7F000000000000000000
      BFBFBFFFFFFFFFFFFF7F7F7F0000000000000000007F7F7FFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F
      0000000000000000000000000000000000000000000000000000000000007F7F
      7FFFFFFFFFFFFFBFBFBF000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFF000000000000000000FFFFFFFFFFFF0000000000000000007F7F7F
      FFFFFFFFFFFFFFFFFFFFFFFFBFBFBF0000007F7F7F7F7F7FFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      000000000000000000000000000000000000000000000000000000000000BFBF
      BFFFFFFFFFFFFFFFFFFF000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFF7F7F7F000000000000000000FFFFFFFFFFFF000000000000000000FFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      7F7F7F0000000000007F7F7FFFFFFFFFFFFFFFFFFF7F7F7F000000000000BFBF
      BFFFFFFFFFFFFFFFFFFF7F7F7F00000000000000000000000000000000000000
      0000000000000000000000BFBFBFFFFFFFFFFFFF000000000000000000FFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFF000000000000000000FFFFFFFFFFFFFFFFFF000000000000000000FFFF
      FFFFFFFFFFFFFFFFFFFF7F7F7F00000000000000000000000000000000000000
      00000000007F7F7FBFBFBFFFFFFFFFFFFFFFFFFF000000000000000000FFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFF7F7F7F0000000000007F7F7FFFFFFFFFFFFF000000000000000000FFFF
      FFFFFFFFFFFFFFFFFFFF7F7F7F00000000000000000000000000000000000000
      00000000000000007F7F7FFFFFFFFFFFFFFFFFFF7F7F7F000000000000BFBFBF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFF000000000000000000BFBFBFBFBFBF0000000000007F7F7FFFFF
      FFFFFFFFFFFFFFFFFFFFBFBFBF0000000000007F7F7FFFFFFFFFFFFFFFFFFFBF
      BFBF7F7F7F0000000000007F7F7FFFFFFFFFFFFF7F7F7F0000000000007F7F7F
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFF7F7F7F0000000000007F7F7FBFBFBF0000000000007F7F7FFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000FFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFF000000000000000000FFFFFFFFFFFFBFBFBF000000000000000000
      BFBFBFFFFFFFFFFFFFFFFFFFBFBFBF0000000000007F7F7FFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFF7F7F7F0000000000007F7F7F0000000000007F7F7FFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F000000000000BFBFBFFFFFFFFFFFFFFF
      FFFF7F7F7F000000000000000000FFFFFFFFFFFFFFFFFF7F7F7F000000000000
      000000BFBFBFFFFFFFFFFFFF7F7F7F0000000000007F7F7FFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFBFBFBF0000000000000000000000000000007F7F7FFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F00000000000000000000000000000000
      00000000000000000000007F7F7FFFFFFFFFFFFFFFFFFFBFBFBF000000000000
      0000000000000000000000000000000000000000007F7F7FFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFF7F7F7F000000000000000000000000BFBFBFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F00000000000000000000000000000000
      0000000000000000000000BFBFBFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBF000000
      0000000000000000000000000000000000007F7F7FFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFBFBFBF000000000000000000000000BFBFBFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFBFBFBF00000000000000000000000000000000
      00000000007F7F7FBFBFBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      7F7F7F7F7F7F0000000000007F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F00007F7F7F7F7F7FBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F0000BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFF7F00007F0000BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F00007F00007F00007F00007F00007F00007F0000
      7F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00
      007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F
      00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F0000
      7F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00
      007F00007F00007F00007F00007F0000BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBF7F00007F00007F00007F00007F00007F00007F00007F0000
      7F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00
      007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F
      00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F0000
      7F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00
      007F00007F00007F00007F00007F0000BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBF
      BFBF}
    Transparent = True
    IsControl = True
  end
  object Label1: TLabel
    Left = 81
    Top = 22
    Width = 176
    Height = 13
    Caption = 'PythonStudio Rich Edit Control Demo'
  end
  object Bevel1: TBevel
    Left = 81
    Top = 71
    Width = 269
    Height = 5
    Shape = bsTopLine
  end
  object Label2: TLabel
    Left = 81
    Top = 45
    Width = 178
    Height = 13
    Caption = 'Copyright '#169' 2025 GL Tec - glsite.com'
  end
  object OKButton: TButton
    Left = 275
    Top = 90
    Width = 75
    Height = 25
    Cancel = True
    Caption = 'OK'
    Default = True
    ModalResult = 2
    TabOrder = 0
  end
end

设计文件: remain.sct

def FormShow(Sender): 
def EditorChange(Sender): 
def FileNewCmdExecute(Sender): 
def FileOpenCmdExecute(Sender): 
def FileSaveCmdExecute(Sender): 
def FilePrintCmdExecute(Sender): 
def FileExitCmdExecute(Sender): 
def FileSaveAsCmdExecute(Sender): 
def EditUndoCmdExecute(Sender): 
def EditCutCmdExecute(Sender): 
def EditCopyCmdExecute(Sender): 
def EditPasteCmdExecute(Sender): 
def EditFontCmdExecute(Sender): 
def FormatRichEditBoldCmdExecute(Sender): 
def FormatRichEditItalicCmdExecute(Sender): 
def FormatRichEditUnderlineCmdExecute(Sender): 
def FormatRichEditStrikeOutCmdExecute(Sender): 
def FormatRichEditBulletsCmdExecute(Sender): 
def FormatRichEditAlignLeftCmdExecute(Sender): 
def FormatRichEditAlignRightCmdExecute(Sender): 
def FormatRichEditAlignCenterCmdExecute(Sender): 
def SuperscriptCmdExecute(Sender): 
def SubscriptCmdExecute(Sender): 
def miEditFontClick(Sender): 
def RichEditTransparentItemClick(Sender): 
def RichEditWordWrapItemClick(Sender): 
def HelpAboutItemClick(Sender): 
def FirstIndMouseDown(Sender, Button, Shift, X, Y): 
def FirstIndMouseMove(Sender, Shift, X, Y): 
def FirstIndMouseUp(Sender, Button, Shift, X, Y): 
def LeftIndMouseDown(Sender, Button, Shift, X, Y): 
def LeftIndMouseMove(Sender, Shift, X, Y): 
def LeftIndMouseUp(Sender, Button, Shift, X, Y): 
RulerItemMouseDown
def RulerItemMouseDown(Sender, Button, Shift, X, Y): 
RulerItemMouseMove
def RulerItemMouseMove(Sender, Shift, X, Y): 
def RightIndMouseUp(Sender, Button, Shift, X, Y): 
def FontNameChange(Sender): 
def FormCloseQuery(Sender, CanClose): 
def EditorClick(Sender): 
def EditorLinkClick(Sender, URL, Button): 
def FormatRichEditBoldCmdUpdate(Sender): 
def FormatRichEditItalicCmdUpdate(Sender): 
def FormatRichEditUnderlineCmdUpdate(Sender): 
def FormatRichEditStrikeOutCmdUpdate(Sender): 
def FormatRichEditBulletsCmdUpdate(Sender): 
def FormatRichEditAlignLeftCmdUpdate(Sender): 
def FormatRichEditAlignRightCmdUpdate(Sender): 
def FormatRichEditAlignCenterCmdUpdate(Sender): 
def SuperscriptCmdUpdate(Sender): 
def SubscriptCmdUpdate(Sender): 
def FGColorBoxChange(Sender): 
def BGColorBoxChange(Sender): 
def FontSizeChange(Sender): 

设计文件: remain.sfm

object MainForm: TForm
  Left = 0
  Top = 0
  ActiveControl = Editor
  Caption = 'Rich Edit Control Demo'
  ClientHeight = 335
  ClientWidth = 968
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'Default'
  Font.Style = []
  Icon.Data = {
    0000010001002020100000000000E80200001600000028000000200000004000
    0000010004000000000080020000000000000000000000000000000000000000
    0000000080000080000000808000800000008000800080800000C0C0C0008080
    80000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFFFF000000
    0000000000000000000000000000000000000000000000000000000000000088
    88888888888888888888888888000444444444444444444444444444480004FF
    FFFFFFFFFFFFFFFFFFFFFFFF480004F000000FFFFFFFFFFFFFFFFFFF480004F0
    CCCC08000000FFFFFFFFFFFF480004F0CCCC0F09990FFFFFFFFFFFFF480004F0
    CCC00009990FFF00000000FF480004F0CC0BBB0890FFFFFFFFFFFFFF480004F0
    08BBBBB090FFF000000000FF480004FFF0BBBBB80FFFFFFFFFFFFFFF480004FF
    F0BBBBB0FFF00000000000FF480004FFFF0BBB0FFFFFFFFFFFFFFFFF480004FF
    FFF000FFF00000F0000000FF480004FFFFFFFFFFFFFFFFFFFFFFFFFF480004F0
    0000F000000000000F0000FF480004FFFFFFFFFFFFFFFFFFFFFFFFFF480004F0
    000000000F000000000000FF480004FFFFFFFFFFFFFFFFFFFFFFFFFF480004FF
    FFFFFFFFFFFFFFFFFFFFFFFF480004F007FF700F000000FFF000007F480004F7
    00FF700F0087700F0008700F480004FF0000000F008F700F008FFFFF480004FF
    700F007F7087700F007FFFFF480004FFF00700FFF00000FF008FFFFF480004FF
    FF0000FFF007700F7007FFFF480004FFFF0000FFF007700FF000880F480004FF
    FFF007FFF700000FFF00000F480004FFFFFFFFFFFFFFFFFFFFFFFFFF40000444
    444444444444444444444444400000000000000000000000000000000000FFFF
    FFFFFFFFFFFFC000000380000003800000038000000380000003800000038000
    0003800000038000000380000003800000038000000380000003800000038000
    0003800000038000000380000003800000038000000380000003800000038000
    0003800000038000000380000003800000038000000780000007FFFFFFFF}
  Menu = MainMenu
  Position = poDefaultSizeOnly
  ShowHint = True
  OnCloseQuery = FormCloseQuery
  OnShow = FormShow
  TextHeight = 13
  object Ruler1: TPanel
    Left = 0
    Top = 0
    Width = 968
    Height = 26
    Align = alTop
    Alignment = taLeftJustify
    BevelOuter = bvNone
    Caption = 'asdf'
    Font.Charset = DEFAULT_CHARSET
    Font.Color = clBlack
    Font.Height = -11
    Font.Name = 'Arial'
    Font.Style = []
    ParentBackground = False
    ParentFont = False
    TabOrder = 0
    object FirstInd: TLabel
      Left = 2
      Top = 2
      Width = 10
      Height = 9
      AutoSize = False
      Caption = #234
      DragCursor = crArrow
      Font.Charset = DEFAULT_CHARSET
      Font.Color = clBlack
      Font.Height = -11
      Font.Name = 'Wingdings'
      Font.Style = []
      ParentFont = False
      OnMouseDown = RulerItemMouseDown
      OnMouseMove = RulerItemMouseMove
      OnMouseUp = FirstIndMouseUp
    end
    object LeftInd: TLabel
      Left = 2
      Top = 12
      Width = 10
      Height = 11
      AutoSize = False
      Caption = #233
      DragCursor = crArrow
      Font.Charset = DEFAULT_CHARSET
      Font.Color = clBlack
      Font.Height = -11
      Font.Name = 'Wingdings'
      Font.Style = []
      ParentFont = False
      OnMouseDown = RulerItemMouseDown
      OnMouseMove = RulerItemMouseMove
      OnMouseUp = LeftIndMouseUp
    end
    object RulerLine: TBevel
      Left = 4
      Top = 12
      Width = 579
      Height = 2
      Shape = bsTopLine
    end
    object RightInd: TLabel
      Left = 575
      Top = 14
      Width = 9
      Height = 12
      Caption = #241
      DragCursor = crArrow
      Font.Charset = DEFAULT_CHARSET
      Font.Color = clBlack
      Font.Height = -11
      Font.Name = 'Wingdings'
      Font.Style = []
      ParentFont = False
      OnMouseDown = RulerItemMouseDown
      OnMouseMove = RulerItemMouseMove
      OnMouseUp = RightIndMouseUp
    end
    object Bevel1: TBevel
      Left = 0
      Top = 0
      Width = 968
      Height = 2
      Align = alTop
      Shape = bsTopLine
      ExplicitWidth = 617
    end
  end
  object Editor: TRichEdit
    Left = 0
    Top = 56
    Width = 968
    Height = 260
    Align = alClient
    EnableURLs = True
    Font.Charset = GB2312_CHARSET
    Font.Color = clWindowText
    Font.Height = -11
    Font.Name = 'Default'
    Font.Style = []
    HideSelection = False
    ParentFont = False
    ScrollBars = ssVertical
    SpellChecking = True
    TabOrder = 1
    Transparent = True
    WantReturns = False
    OnChange = EditorChange
    OnClick = EditorClick
    OnLinkClick = EditorLinkClick
  end
  object StatusBar: TStatusBar
    Left = 0
    Top = 316
    Width = 968
    Height = 19
    Panels = <
      item
        Width = 120
      end
      item
        Width = 130
      end
      item
        Alignment = taCenter
        Width = 60
      end
      item
        Width = 50
      end>
  end
  object StandardToolBar: TToolBar
    Left = 0
    Top = 26
    Width = 968
    Height = 30
    Hint = 'Background color|Color of the background in the selected range'
    AutoSize = True
    BorderWidth = 2
    Color = clBtnFace
    Images = ToolbarImages
    Indent = 4
    ParentColor = False
    ParentShowHint = False
    ShowHint = True
    TabOrder = 3
    Transparent = False
    Wrapable = False
    object ToolButton1: TToolButton
      Left = 4
      Top = 0
      Action = FileNewCmd
    end
    object OpenButton: TToolButton
      Left = 27
      Top = 0
      Action = FileOpenCmd
    end
    object SaveButton: TToolButton
      Left = 50
      Top = 0
      Action = FileSaveCmd
    end
    object PrintButton: TToolButton
      Left = 73
      Top = 0
      Action = FilePrintCmd
    end
    object ToolButton5: TToolButton
      Left = 96
      Top = 0
      Width = 8
      ImageIndex = 3
      Style = tbsDivider
    end
    object CutButton: TToolButton
      Left = 104
      Top = 0
      Action = EditCutCmd
    end
    object CopyButton: TToolButton
      Left = 127
      Top = 0
      Action = EditCopyCmd
    end
    object PasteButton: TToolButton
      Left = 150
      Top = 0
      Action = EditPasteCmd
    end
    object UndoButton: TToolButton
      Left = 173
      Top = 0
      Action = EditUndoCmd
    end
    object ToolButton10: TToolButton
      Left = 196
      Top = 0
      Width = 8
      ImageIndex = 7
      Style = tbsSeparator
    end
    object FontName: TComboBox
      Left = 204
      Top = 0
      Width = 173
      Height = 21
      Hint = 'Font Name|Select font name'
      Ctl3D = False
      DropDownCount = 10
      ParentCtl3D = False
      TabOrder = 0
      OnChange = FontNameChange
    end
    object ToolButton11: TToolButton
      Left = 377
      Top = 0
      Width = 8
      ImageIndex = 8
      Style = tbsSeparator
    end
    object FontSize: TEdit
      Left = 385
      Top = 0
      Width = 72
      Height = 22
      Hint = 'Font Size|Select font size'
      TabOrder = 1
      Text = '0'
    end
    object UpDown1: TUpDown
      Left = 477
      Top = 0
      Width = 15
      Height = 22
      Associate = FontSize
      TabOrder = 2
    end
    object ToolButton2: TToolButton
      Left = 492
      Top = 0
      Width = 8
      Caption = 'ToolButton2'
      ImageIndex = 15
      Style = tbsSeparator
    end
    object BoldButton: TToolButton
      Left = 500
      Top = 0
      Action = FormatRichEditBoldCmd
      Style = tbsCheck
    end
    object ItalicButton: TToolButton
      Left = 523
      Top = 0
      Action = FormatRichEditItalicCmd
      Style = tbsCheck
    end
    object UnderlineButton: TToolButton
      Left = 546
      Top = 0
      Action = FormatRichEditUnderlineCmd
      Style = tbsCheck
    end
    object StrikeoutButton: TToolButton
      Left = 569
      Top = 0
      Action = FormatRichEditStrikeOutCmd
    end
    object ToolButton16: TToolButton
      Left = 592
      Top = 0
      Width = 8
      ImageIndex = 12
      Style = tbsDivider
    end
    object LeftAlign: TToolButton
      Left = 600
      Top = 0
      Action = FormatRichEditAlignLeftCmd
      Grouped = True
      Style = tbsCheck
    end
    object CenterAlign: TToolButton
      Tag = 2
      Left = 623
      Top = 0
      Action = FormatRichEditAlignCenterCmd
      Grouped = True
      Style = tbsCheck
    end
    object RightAlign: TToolButton
      Tag = 1
      Left = 646
      Top = 0
      Action = FormatRichEditAlignRightCmd
      Grouped = True
      Style = tbsCheck
    end
    object ToolButton20: TToolButton
      Left = 669
      Top = 0
      Width = 8
      ImageIndex = 15
      Style = tbsDivider
    end
    object BulletsButton: TToolButton
      Left = 677
      Top = 0
      Action = FormatRichEditBulletsCmd
      Style = tbsCheck
    end
    object ToolButton4: TToolButton
      Left = 700
      Top = 0
      Width = 8
      Caption = 'ToolButton4'
      ImageIndex = 16
      Style = tbsSeparator
    end
    object SupersciptButton: TToolButton
      Left = 708
      Top = 0
      Action = SuperscriptCmd
    end
    object SubscriptButton: TToolButton
      Left = 731
      Top = 0
      Action = SubscriptCmd
    end
    object ToolButton3: TToolButton
      Left = 754
      Top = 0
      Width = 8
      Caption = 'ToolButton3'
      ImageIndex = 15
      Style = tbsSeparator
    end
    object FGColorBox: TColorBox
      Left = 762
      Top = 0
      Width = 80
      Height = 22
      Hint = 'Foreground color|Color of the text in the selected range'
      Style = [cbStandardColors, cbExtendedColors, cbSystemColors, cbIncludeNone, cbIncludeDefault, cbPrettyNames]
      TabOrder = 3
      OnChange = FGColorBoxChange
    end
    object ToolButton6: TToolButton
      Left = 842
      Top = 0
      Width = 8
      Caption = 'ToolButton6'
      ImageIndex = 16
      Style = tbsSeparator
    end
    object BGColorBox: TColorBox
      Left = 850
      Top = 0
      Width = 80
      Height = 22
      Style = [cbStandardColors, cbExtendedColors, cbSystemColors, cbIncludeNone, cbIncludeDefault, cbPrettyNames]
      TabOrder = 4
      OnChange = BGColorBoxChange
    end
  end
  object MainMenu: TMainMenu
    Images = ToolbarImages
    Left = 168
    Top = 68
    object FileMenu: TMenuItem
      Caption = '&File'
      object FileNewItem: TMenuItem
        Action = FileNewCmd
      end
      object FileOpenItem: TMenuItem
        Action = FileOpenCmd
      end
      object FileSaveItem: TMenuItem
        Action = FileSaveCmd
      end
      object FileSaveAsItem: TMenuItem
        Action = FileSaveAsCmd
      end
      object N1: TMenuItem
        Caption = '-'
      end
      object FilePrintItem: TMenuItem
        Action = FilePrintCmd
      end
      object N4: TMenuItem
        Caption = '-'
      end
      object FileExitItem: TMenuItem
        Action = FileExitCmd
      end
    end
    object EditMenu: TMenuItem
      Caption = '&Edit'
      object EditUndoItem: TMenuItem
        Action = EditUndoCmd
      end
      object N2: TMenuItem
        Caption = '-'
      end
      object EditCutItem: TMenuItem
        Action = EditCutCmd
      end
      object EditCopyItem: TMenuItem
        Action = EditCopyCmd
      end
      object EditPasteItem: TMenuItem
        Action = EditPasteCmd
      end
      object N5: TMenuItem
        Caption = '-'
      end
      object miEditFont: TMenuItem
        Caption = '&Font...'
        OnClick = miEditFontClick
      end
    end
    object RichEditMenu: TMenuItem
      Caption = '&RichEdit'
      object RichEditTransparentItem: TMenuItem
        Caption = '&Transparent RichEdit'
        OnClick = RichEditTransparentItemClick
      end
      object RichEditWordWrapItem: TMenuItem
        Caption = 'Word Wrap'
        OnClick = RichEditWordWrapItemClick
      end
      object N3: TMenuItem
        Caption = '-'
      end
      object RichEditBoldItem: TMenuItem
        Action = FormatRichEditBoldCmd
        AutoCheck = True
      end
      object RichEditItalicItem: TMenuItem
        Action = FormatRichEditItalicCmd
        AutoCheck = True
      end
      object RichEditUnderlineItem: TMenuItem
        Action = FormatRichEditUnderlineCmd
        AutoCheck = True
      end
      object RichEditStrikeoutItem: TMenuItem
        Action = FormatRichEditStrikeOutCmd
        AutoCheck = True
      end
      object RichEditSuperscriptItem: TMenuItem
        Action = SuperscriptCmd
      end
      object RichEditSubscriptItem: TMenuItem
        Action = SubscriptCmd
      end
      object N6: TMenuItem
        Caption = '-'
      end
      object RichEditAlignLeftItem: TMenuItem
        Action = FormatRichEditAlignLeftCmd
        AutoCheck = True
      end
      object RichEditAlignCenterItem: TMenuItem
        Action = FormatRichEditAlignCenterCmd
        AutoCheck = True
      end
      object RichEditAlignRightItem: TMenuItem
        Action = FormatRichEditAlignRightCmd
        AutoCheck = True
      end
      object N7: TMenuItem
        Caption = '-'
      end
      object RichEditBulletsItem: TMenuItem
        Action = FormatRichEditBulletsCmd
        AutoCheck = True
      end
    end
    object HelpMenu: TMenuItem
      Caption = '&Help'
      object HelpAboutItem: TMenuItem
        Caption = '&About...'
        Hint = 'Show program information'
        OnClick = HelpAboutItemClick
      end
    end
  end
  object FontDialog1: TFontDialog
    Font.Charset = DEFAULT_CHARSET
    Font.Color = clWindowText
    Font.Height = -11
    Font.Name = 'MS Sans Serif'
    Font.Style = []
    Left = 24
    Top = 136
  end
  object ToolbarImages: TImageList
    Left = 96
    Top = 68
    Bitmap = {
      494C010114002000040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
      0000000000003600000028000000400000006000000001002000000000000060
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      000000000000000000000000000000000000FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC9C9C9FF0000
      00FF000000FF000000FF4D4D4DFFFFFFFFFFFFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1D1D
      1DFF000000FFC0C0C0FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFF00808080007777
      7700777777007777770077777700777777007777770077777700777777007777
      7700777777007777770080808000FFFFFF00FFFFFF0080808000777777007777
      7700777777007777770077777700777777007777770077777700777777007777
      7700777777007777770080808000FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFF000000FF212121FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFFFFFFFFFFFF000000FF0000
      00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF000000FFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF0000
      00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF000000FFFFFFFFFFFFFF
      FFFFFFFFFFFF000000FF8D8D8DFFFFFFFFFFFFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00808080007777770077777700777777007777
      7700777777007777770080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF008080
      8000777777007777770077777700777777007777770077777700777777008080
      8000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFF0000
      00FFFBFBFBFFFFFFFFFFFFFFFFFFFDFDFDFF000000FFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000
      00FFFBFBFBFFFFFFFFFFFFFFFFFFFDFDFDFF000000FFFFFFFFFFC7C7C7FF0000
      00FFC6C6C6FF000000FF8E8E8EFFFFFFFFFFFFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFF0B0B
      0BFF060606FFFFFFFFFFFFFFFFFF090909FF080808FFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0B0B
      0BFF060606FFFFFFFFFFFFFFFFFF090909FF080808FFFFFFFFFFFFFFFFFF3131
      31FF000000FF313131FFFFFFFFFFFFFFFFFFFFFFFF00FFFFFF00808080007777
      7700777777007777770077777700777777007777770077777700777777007777
      7700777777007777770080808000FFFFFF00FFFFFF0080808000777777007777
      7700777777007777770077777700777777007777770077777700777777007777
      7700777777007777770080808000FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFF000000FF595959FF5C5C5CFF000000FFFEFEFEFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFF000000FF595959FF5C5C5CFF000000FFFEFEFEFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFF000000FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFF000000FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00808080007777770077777700777777007777
      7700777777007777770080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF008080
      8000777777007777770077777700777777007777770077777700777777008080
      8000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFF000000FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFC9C9C9FF0000
      00FF000000FF000000FF4D4D4DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFF000000FF000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFEFE
      FEFF000000FF5D5D5DFF5F5F5FFF000000FFFDFDFDFFFFFFFFFFFFFFFFFF1D1D
      1DFF000000FFC0C0C0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFE
      FEFF000000FF5D5D5DFF5F5F5FFF000000FFFDFDFDFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFF00808080007777
      7700777777007777770077777700777777007777770077777700777777007777
      7700777777007777770080808000FFFFFF00FFFFFF0080808000777777007777
      7700777777007777770077777700777777007777770077777700777777007777
      7700777777007777770080808000FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFF0808
      08FF090909FFFFFFFFFFFFFFFFFF0C0C0CFF050505FFFFFFFFFFFFFFFFFFFFFF
      FFFF000000FF212121FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0808
      08FF090909FFFFFFFFFFFFFFFFFF0C0C0CFF050505FFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFFFFFFFFFFFF000000FF0000
      00FFFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF000000FFFFFFFFFFFFFF
      FFFFFFFFFFFF000000FF8D8D8DFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF0000
      00FFFCFCFCFFFFFFFFFFFFFFFFFFFFFFFFFF000000FF000000FFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00808080007777770077777700777777007777
      7700777777007777770080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF008080
      8000777777007777770077777700777777007777770077777700777777008080
      8000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC7C7C7FF0000
      00FFC6C6C6FF000000FF8E8E8EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3131
      31FF000000FF313131FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFF00808080007777
      7700777777007777770077777700777777007777770077777700777777007777
      7700777777007777770080808000FFFFFF00FFFFFF0080808000777777007777
      7700777777007777770077777700777777007777770077777700777777007777
      7700777777007777770080808000FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
      FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00E3E3E300A4A0A000777777005F5F5F005F5F5F0080808000B2B2B200FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00CCCC9900CC663300CCCC
      9900FFFFFF00D7D7D700D7D7D700D7D7D700D7D7D700D7D7D700D7D7D700D7D7
      D700D7D7D700D7D7D700D7D7D700D7D7D700FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00B2B2
      B2005F5F5F005555550055555500555555005555550055555500555555008080
      8000F1F1F100FFFFFF00FFFFFF00FFFFFF00FFFFFF00CC663300CC663300CC66
      3300FFFFFF007777770077777700777777007777770077777700777777007777
      770077777700777777007777770077777700FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00868686005555
      5500555555005555550055555500555555005555550055555500555555005555
      55005555550066666600FFFFFF00FFFFFF00FFFFFF00FFFFFF00F1F1F1006666
      6600555555005F5F5F00A4A0A000CCCCCC00C0C0C00096969600555555005555
      550099999900FFFFFF00FFFFFF00FFFFFF00FFFFFF00CCCC9900CC663300CCCC
      9900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000777777007777
      7700777777007777770077777700777777007777770077777700777777007777
      77007777770080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00E3E3E300C0C0C000C0C0C000DDDDDD00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00CCCC
      CC0096969600EAEAEA00FFFFFF00FFFFFF00FFFFFF00FFFFFF00999999005555
      55005F5F5F00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00F1F1F100868686005555550055555500555555005555550077777700E3E3
      E300FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00CCCCCC005555
      550055555500DDDDDD00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000777777007777
      77007777770077777700777777007777770080808000FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00868686005555550096969600E3E3E300EAEAEA00C0C0C000666666006666
      6600F1F1F100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00B2B2B2005555
      550055555500DDDDDD00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00DDDD
      DD005555550080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0C0005555
      5500C0C0C000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00E3E3E300A4A0A0005F5F5F005555
      550066666600FFFFFF00FFFFFF00FFFFFF00FFFFFF00CCCC9900CC663300CCCC
      9900FFFFFF00D7D7D700D7D7D700D7D7D700D7D7D700D7D7D700D7D7D700D7D7
      D700D7D7D700D7D7D700D7D7D700D7D7D700FFFFFF0080808000777777007777
      7700777777007777770077777700777777007777770077777700777777007777
      77007777770080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
      C00055555500A4A0A000FFFFFF00FFFFFF00FFFFFF00FFFFFF00EAEAEA005555
      550099999900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00F1F1F100B2B2B200777777005555550055555500555555005555
      5500C0C0C000FFFFFF00FFFFFF00FFFFFF00FFFFFF00CC663300CC663300CC66
      3300FFFFFF007777770077777700777777007777770077777700777777007777
      770077777700777777007777770077777700FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
      C00055555500B2B2B200FFFFFF00FFFFFF00FFFFFF00FFFFFF00EAEAEA005555
      550099999900FFFFFF00FFFFFF00FFFFFF00FFFFFF0055555500555555005555
      5500555555005555550055555500555555005555550055555500555555005555
      5500555555005555550055555500FFFFFF00FFFFFF00CCCC9900CC663300CCCC
      9900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000777777007777
      77007777770077777700777777007777770080808000FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
      C00055555500B2B2B200FFFFFF00FFFFFF00FFFFFF00FFFFFF00EAEAEA005555
      550099999900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00F1F1
      F10066666600555555005555550066666600A4A0A000DDDDDD00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
      C00055555500B2B2B200FFFFFF00FFFFFF00FFFFFF00FFFFFF00EAEAEA005555
      550099999900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
      C0005555550055555500A4A0A000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000777777007777
      7700777777007777770077777700777777007777770077777700777777007777
      77007777770080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
      C00055555500B2B2B200FFFFFF00FFFFFF00FFFFFF00FFFFFF00EAEAEA005555
      550099999900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00B2B2
      B2005555550055555500FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
      C00055555500B2B2B200FFFFFF00FFFFFF00FFFFFF00FFFFFF00EAEAEA005555
      550099999900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
      C0005555550055555500DDDDDD00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
      C000F1F1F100FFFFFF00FFFFFF00FFFFFF00FFFFFF00CCCC9900CC663300CCCC
      9900FFFFFF00D7D7D700D7D7D700D7D7D700D7D7D700D7D7D700D7D7D700D7D7
      D700D7D7D700D7D7D700D7D7D700D7D7D700FFFFFF0080808000777777007777
      77007777770077777700777777007777770080808000FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
      C00055555500B2B2B200FFFFFF00FFFFFF00FFFFFF00FFFFFF00EAEAEA005555
      550099999900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00F1F1
      F100666666005555550066666600B2B2B200CCCCCC00C0C0C000777777005555
      550099999900FFFFFF00FFFFFF00FFFFFF00FFFFFF00CC663300CC663300CC66
      3300FFFFFF007777770077777700777777007777770077777700777777007777
      770077777700777777007777770077777700FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00CCCCCC005F5F5F0055555500555555005555550055555500555555005555
      550099999900FFFFFF00FFFFFF00FFFFFF00FFFFFF00CCCC9900CC663300CCCC
      9900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000777777007777
      7700777777007777770077777700777777007777770077777700777777007777
      77007777770080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00E3E3E30096969600666666005F5F5F006666660086868600CCCC
      CC00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00DDDDDD00B2B2B20096969600FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00CCCCCC00A4A0A0008080
      8000808080008080800080808000FFFFFF007777770077777700777777007777
      77007777770077777700FFFFFF00FFFFFF00EAEAEA00CC996600CC996600CC99
      6600CC999900CC999900CC999900CC999900CC996600CC996600CC996600CC99
      6600CC996600DDDDDD00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000808080008080
      8000808080008080800080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF0077777700FFFFFF00FFFFFF00F0CAA600CC993300CC993300CC99
      330099663300996633009966330099663300CC993300CC993300CC993300CC99
      3300CC993300CC996600FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF005555
      5500555555005555550055555500555555005F5F5F0077777700A4A0A000EAEA
      EA00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00F1F1F1005F5F5F005F5F5F00C0C0C000FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000808080008080
      8000808080008080800080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF0077777700FFFFFF00FFFFFF00F0CAA600CC993300996633009966
      66009966660099663300CC663300CC663300CC663300CC663300CC663300CC66
      3300CC993300CC996600FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF005555
      55005555550096969600B2B2B200B2B2B200A4A0A00080808000555555006666
      6600E3E3E300FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00868686005555550086868600FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000808080008080
      8000808080008080800080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF0077777700FFFFFF00FFFFFF00F0CAA600CC993300996633009966
      3300996633009966330099663300996633009966330099663300996633009966
      3300CC993300CC996600FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF005555
      550055555500CCCCCC00FFFFFF00FFFFFF00FFFFFF00FFFFFF00969696005555
      550096969600FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00C0C0C000555555005F5F5F00F1F1F100FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000808080008080
      8000808080008080800080808000FFFFFF00FFFFFF00D6E7E7003366CC003366
      CC00F1F1F100C0C0C000FFFFFF00FFFFFF00F0CAA600CC993300996633007777
      7700777777007777770077777700777777007777770077777700777777009966
      6600CC663300CC999900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF005555
      550055555500CCCCCC00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0C0005555
      550080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00F1F1F1005F5F5F0055555500C0C0C000FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000808080008080
      8000808080008080800080808000FFFFFF00D6E7E7003366CC003366CC00EAEA
      EA00FFFFFF00F8F8F800FFFFFF00FFFFFF00F0CAA600CC993300CC663300CC66
      3300CC663300CC663300CC663300999933009999330099993300999933009999
      33009999330099993300DDDDDD00FFFFFF00FFFFFF00FFFFFF00FFFFFF005555
      550055555500CCCCCC00FFFFFF00FFFFFF00FFFFFF00FFFFFF00868686005555
      5500A4A0A000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00868686005555550086868600FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000808080008080
      8000808080008080800080808000EAEAEA003366CC003333CC003333CC003333
      CC003333CC003333CC003333CC003333CC00F0CAA600CC993300CC663300CC66
      3300CC663300CC663300CC6633009999330099CC9900CCCC9900C0DCC000C0DC
      C000C0DCC000C0DCC00099CC6600FFFFFF00FFFFFF00FFFFFF00FFFFFF005555
      55005555550080808000868686008686860086868600666666005F5F5F009696
      9600F1F1F100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00C0C0C000555555005F5F5F00F1F1F100FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000808080008080
      8000808080008080800080808000EAEAEA003366CC003333CC003333CC003333
      CC003333CC003333CC003333CC003333CC00F0CAA600CC993300CC663300CC66
      3300CC663300CC663300CC66330099993300D7D7D700DDDDDD00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF0099CC6600FFFFFF00FFFFFF00FFFFFF00FFFFFF005555
      550055555500808080008686860086868600808080005F5F5F0096969600EAEA
      EA00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00F1F1F1005F5F5F0055555500CBCBCB00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000808080008080
      8000808080008080800080808000FFFFFF00D6E7E7003366CC003366CC00EAEA
      EA00FFFFFF00F8F8F800FFFFFF00FFFFFF00F0CAA600CC993300CC663300CC66
      3300CC663300CC663300CC66330099993300DDDDDD00EAEAEA00F8F8F800F8F8
      F800F8F8F800F1F1F10099CC6600FFFFFF00FFFFFF00FFFFFF00FFFFFF005555
      550055555500CCCCCC00FFFFFF00FFFFFF00FFFFFF00E3E3E3005F5F5F006666
      6600F1F1F100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00808080005555550096969600FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000808080008080
      8000808080008080800080808000FFFFFF00FFFFFF00D6E7E7003366CC003366
      CC00F1F1F100C0C0C000FFFFFF00FFFFFF00F0CAA600CC993300CC663300CC66
      3300CC993300CC996600CC9966009999660099CC660099993300999933009999
      33009999330099993300CCCC9900FFFFFF00FFFFFF00FFFFFF00FFFFFF005555
      550055555500CCCCCC00FFFFFF00FFFFFF00FFFFFF00FFFFFF00868686005555
      5500CBCBCB00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00B2B2B200555555005F5F5F00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000808080008080
      8000808080008080800080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF0077777700FFFFFF00FFFFFF00F0CAA600CC993300CC663300CC66
      3300CC996600FFFFFF00FFFFFF00FFFFFF00FFFFFF00CCCC9900CC663300CC66
      3300CC993300CC999900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF005555
      550055555500CCCCCC00FFFFFF00FFFFFF00FFFFFF00FFFFFF00666666005555
      5500CCCCCC00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00EAEAEA005F5F5F0055555500CCCCCC00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000808080008080
      8000808080008080800080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF0077777700FFFFFF00FFFFFF00F0CAA600CC993300CC663300CC66
      3300CC996600FFFFFF00F1F1F100CCCCCC00EAEAEA00CCCC9900CC663300CC66
      3300CC993300FFECCC00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF005555
      55005555550096969600B2B2B200B2B2B200A4A0A00077777700555555007777
      7700FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00808080005555550099999900FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0080808000808080008080
      8000808080008080800080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF0077777700FFFFFF00FFFFFF00F0CAA600CC993300CC663300CC66
      3300CC996600FFFFFF00CCCCCC005555550099999900F0CAA600CC663300CC66
      3300FFCCCC00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF005555
      5500555555005555550055555500555555005F5F5F0077777700B2B2B200F1F1
      F100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0C0005555550066666600FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00D7D7D700B2B2B2008686
      8600808080008080800080808000FFFFFF007777770077777700777777007777
      77007777770077777700FFFFFF00FFFFFF00F8F8F800F0CAA600F0CAA600F0CA
      A600DDDDDD00FFFFFF00EAEAEA00A4A0A000D7D7D700EAEAEA00F0CAA600DDDD
      DD00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00DDDDDD00B2B2B20096969600FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00EAEAEA00CC996600CC99
      3300CC996600CC999900EAEAEA00FFFFFF00FFFFFF00F1F1F100CC999900CC99
      3300CC993300CC996600EAEAEA00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF0096969600808080008080800080808000808080008080
      800080808000808080008080800096969600FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00969696008080800080808000808080008080
      800080808000808080008080800096969600FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00CC996600CC663300F0CA
      A600F0CAA600CC663300CC993300EAEAEA00FFFFFF00CC996600CC663300F0CA
      A600F0CAA600CC663300CC996600FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF0080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF0080808000FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF0080808000FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF0080808000CC663300CC663300CC663300CC66
      3300CC663300CC663300CC996600F8F8F800FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00CCCC9900CC663300CC996600FFFFFF00FFFFFF00CC663300CC996600FFFF
      FF00FFFFFF00F0CAA600CC663300CCCC9900F0CAA600CC663300F0CAA600FFFF
      FF00FFFFFF00CC996600CC663300FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF0080808000FFFFFF00CC663300CC663300CC663300CC66
      3300CC663300CC663300FFFFFF008080800066CCFF0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC00FFFFFF0080808000FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF0080808000CC663300CC663300CC663300CC66
      3300CC663300CC663300CC663300CC996600F8F8F800FFFFFF00FFFFFF00FFFF
      FF00E3E3E300CC663300CC663300F1F1F100FFFFFF00CC996600CC663300EAEA
      EA00FFFFFF00EAEAEA00CC663300CC996600CC996600CC663300EAEAEA00FFFF
      FF00EAEAEA00CC663300CC996600FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF0080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF008080800066CCCC0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC00FFFFFF0080808000FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF0080808000CC663300CC663300CC663300CC99
      6600F1F1F100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00CC993300CC663300F0CAA600FFFFFF00FFCCCC00CC663300CC99
      3300F0CAA600CC996600CC663300CC663300CC663300CC663300CC996600F0CA
      A600CC996600CC663300D7D7D700FFFFFF00C0C0C000B2B2B200B2B2B200B2B2
      B200B2B2B200FFFFFF0080808000FFFFFF00CC663300CC663300CC663300CC66
      3300CC663300CC663300FFFFFF008080800066CCCC0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC00FFFFFF0080808000FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF0080808000CC663300CC663300CC996600CC66
      3300CC996600F1F1F100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00CC996600CC663300CC999900FFFFFF00FFFFFF00F0CAA600CC99
      6600CC663300CC663300CC996600CC663300CC663300CC996600CC996600CC66
      3300CC996600F0CAA600FFFFFF00FFFFFF00B2B2B200FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF0080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF008080800066CCCC0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC00FFFFFF0080808000FFFFFF00FFFFFF00FFFFFF008686
      860080808000808080008080800080808000CC663300CC663300EAEAEA00CC99
      6600CC663300CC996600F1F1F100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00F0CAA600CC663300CC996600FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00D7D7D700CC999900CC999900CCCC9900FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00B2B2B200FFFFFF00CC996600CC99
      6600CC996600FFFFFF0080808000FFFFFF00CC663300CC663300FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF008080800066CCCC0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC00FFFFFF0080808000FFFFFF00FFFFFF00FFFFFF008080
      8000FFFFFF00DDDDDD0086868600D7D7D700CC663300CC663300FFFFFF00EAEA
      EA00CC996600CC663300CC996600F1F1F100FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00DDDDDD00CC663300CC993300FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00D7D7D70080808000808080008080800077777700C0C0C000FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00B2B2B200FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF0080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF008686
      86008080800080808000808080008080800066CCCC0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC00FFFFFF0080808000FFFFFF00FFFFFF00FFFFFF008080
      8000DDDDDD0086868600DDDDDD00FFFFFF00CC996600CC663300FFFFFF00FFFF
      FF00EAEAEA00CC993300CC663300CC996600F1F1F100FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00F0CAA600CC663300CC996600FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00EAEAEA00808080008080800096969600969696008080800080808000DDDD
      DD00FFFFFF00FFFFFF00FFFFFF00FFFFFF00B2B2B200FFFFFF00CC996600CC99
      6600CC996600FFFFFF0080808000FFFFFF00CC663300CC663300FFFFFF008080
      8000FFFFFF00DDDDDD0086868600D7D7D70066CCCC0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC00FFFFFF0080808000FFFFFF00FFFFFF00FFFFFF008080
      800086868600DDDDDD00FFFFFF00FFFFFF00F8F8F800CC996600FFFFFF00FFFF
      FF00FFFFFF00EAEAEA00CC993300CC663300CC993300F0CAA600FFFFFF00FFFF
      FF00E3E3E300CC996600CC663300CC999900FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00969696008080800086868600EAEAEA00EAEAEA0086868600808080008686
      8600FFFFFF00FFFFFF00FFFFFF00FFFFFF00B2B2B200FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF0080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF008080
      8000DDDDDD0086868600DDDDDD00FFFFFF0066CCCC0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC00FFFFFF00969696008080800080808000808080008686
      8600E3E3E300FFFFFF00FFFFFF00FFFFFF00FFFFFF00F8F8F800FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00EAEAEA00CC996600CC663300CC663300CC663300CC99
      3300CC663300CC663300CC993300F1F1F100FFFFFF00FFFFFF00FFFFFF00CCCC
      CC008080800080808000D7D7D700FFFFFF00FFFFFF00CCCCCC00808080008080
      8000C0C0C000FFFFFF00FFFFFF00FFFFFF00B2B2B200FFFFFF00CC996600CC99
      6600FFFFFF00FFFFFF0080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF008080
      800086868600DDDDDD00FFFFFF00FFFFFF0066CCCC0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC0099CCFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00F8F8F800CCCC9900CC663300CC663300CC66
      3300CC663300CC996600EAEAEA00FFFFFF00FFFFFF00FFFFFF00FFFFFF008686
      860080808000A4A0A000FFFFFF00FFFFFF00FFFFFF00FFFFFF00A4A0A0008080
      800086868600FFFFFF00FFFFFF00FFFFFF00B2B2B200FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF0096969600808080008080800080808000808080008686
      8600E3E3E300FFFFFF00FFFFFF00FFFFFF0066CCCC0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CC
      CC00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00F8F8F800DDDDDD00DDDD
      DD00F1F1F100FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00DDDDDD008080
      800086868600F1F1F100FFFFFF00FFFFFF00FFFFFF00FFFFFF00F1F1F1008686
      860080808000DDDDDD00FFFFFF00FFFFFF00B2B2B200FFFFFF00CC996600CC99
      6600FFFFFF00E3E3E300FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0066CCCC0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CC
      CC00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00B2B2B2008080
      8000D7D7D700FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00CCCC
      CC0080808000B2B2B200FFFFFF00FFFFFF00B2B2B200FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00B2B2B200E3E3E300B2B2B200E3E3E300FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0066CCCC0066CCCC00F0FBFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00F0FBFF0066CCCC0066CC
      CC00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0096969600B2B2
      B200FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00A4A0A00096969600FFFFFF00FFFFFF00B2B2B200FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00B2B2B200B2B2B200EAEAEA00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0066CCFF0066CCCC00FFFFFF008686
      86008080800080808000808080008080800086868600FFFFFF0066CCCC0066CC
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00A4A0A000FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00F1F1F100A4A0A000FFFFFF00FFFFFF00C0C0C000B2B2B200B2B2B200B2B2
      B200B2B2B200B2B2B200EAEAEA00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00F1F1
      F10086868600808080008080800086868600F1F1F100FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      000000000000000000000000000000000000C6D6EF0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC00C6D6EF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
      C000808080008080800080808000808080008080800080808000808080008080
      8000C0C0C000FFFFFF00FFFFFF00FFFFFF000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      000000000000000000000000000000000000C6D6EF0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC0099CCFF00FFFFFF00EAEAEA00CC996600CC996600CC99
      6600CC999900CC999900CC999900CC999900CC996600CC996600CC996600CC99
      6600CC996600DDDDDD00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
      C000C0C0C000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
      C000C0C0C000FFFFFF00FFFFFF00FFFFFF000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      00000000000000000000000000000000000099CCFF0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC0099CCFF00FFFFFF00F0CAA600CC993300CC993300CC99
      330099663300996633009966330099663300CC993300CC993300CC993300CC99
      3300CC993300CC996600FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
      C000C0C0C000E3E3E300B2B2B200B2B2B200B2B2B200B2B2B200E3E3E300C0C0
      C000C0C0C000FFFFFF00FFFFFF00FFFFFF00000000000000000000000000FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF000000000000000000000000000000000099CCFF0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC0099CCFF00FFFFFF00F0CAA600CC993300996633009966
      66009966660099663300CC663300CC663300CC663300CC663300CC663300CC66
      3300CC993300CC996600FFFFFF00FFFFFF00A4A0A00080808000808080008080
      8000C0C0C000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0C0
      C000777777008080800077777700A4A0A000000000000000000000000000FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF000000000000000000000000000000000099CCFF0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC0099CCFF00FFFFFF00F0CAA600CC993300996633009966
      3300996633009966330099663300996633009966330099663300996633009966
      3300CC993300CC996600FFFFFF00FFFFFF007777770080808000808080007777
      7700808080008080800080808000808080008080800080808000808080008080
      800077777700808080008080800077777700000000000000000000000000FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF000000000000000000000000000000000066CCFF0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC0066CCFF00FFFFFF00F0CAA600CC993300996633007777
      7700777777007777770077777700777777007777770077777700777777009966
      6600CC663300CC999900FFFFFF00FFFFFF0080808000EAEAEA00EAEAEA008080
      8000808080008080800080808000808080008080800080808000808080008080
      800080808000808080008080800080808000000000000000000000000000FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF000000000000000000000000000000000066CCFF0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC0066CCFF00FFFFFF00F0CAA600CC993300CC663300CC66
      3300CC663300CC663300CC663300999933009999330099993300999933009999
      33009999330099993300DDDDDD00FFFFFF008080800080808000808080008080
      8000808080008080800080808000808080008080800080808000808080008080
      800080808000808080008080800080808000000000000000000000000000FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF000000000000000000000000000000000066CCFF0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CCCC0066CC
      CC0066CCCC0066CCCC0066CCFF00FFFFFF00F0CAA600CC993300CC663300CC66
      3300CC663300CC663300CC6633009999330099CC9900CCCC9900C0DCC000C0DC
      C000C0DCC000C0DCC00099CC6600FFFFFF00808080008080800096969600E3E3
      E300FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00E3E3E300969696008080800080808000000000000000000000000000FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF0000000000000000000000000000000000FFFFFF0099CCCC0099CCCC0099CC
      CC0099CCCC0099CCCC0099CCCC0099CCCC0099CCCC0099CCCC0099CCCC0099CC
      CC0099CCCC0099CCCC00FFFFFF00FFFFFF00F0CAA600CC993300CC663300CC66
      3300CC663300CC663300CC66330099993300D7D7D700DDDDDD00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF0099CC6600FFFFFF008080800080808000E3E3E300CCCC
      9900CC663300CC663300CC663300CC663300CC663300CC663300CC663300CC66
      3300CCCC9900E3E3E3008080800080808000000000000000000000000000FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF0000000000000000000000000000000000FFFFFF0033669900336699003366
      9900336699003366990033669900336699003366990033669900336699003366
      99003366990033669900FFFFFF00FFFFFF00F0CAA600CC993300CC663300CC66
      3300CC663300CC663300CC66330099993300DDDDDD00EAEAEA00F8F8F800F8F8
      F800F8F8F800F1F1F10099CC6600FFFFFF008080800080808000FFFFFF00CC66
      3300CC663300CC663300CC663300CC663300CC663300CC663300CC663300CC66
      3300CC663300FFFFFF007777770080808000000000000000000000000000FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF0000000000000000000000000000000000FFFFFF0033669900336699003366
      99003366990033669900336699006699CC0099CCCC0099CCCC0099CCCC0099CC
      CC0099CCCC0099CCCC00FFFFFF00FFFFFF00F0CAA600CC993300CC663300CC66
      3300CC993300CC996600CC9966009999660099CC660099993300999933009999
      33009999330099993300CCCC9900FFFFFF007777770080808000FFFFFF00CC66
      3300CC663300CC663300CC663300CC663300CC663300CC663300CC663300CC66
      3300CC663300FFFFFF007777770077777700000000000000000000000000FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000000000000000000
      000000000000000000000000000000000000FFFFFF0033999900336699003366
      9900336699003366990090A9AD00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00F0CAA600CC993300CC663300CC66
      3300CC996600FFFFFF00FFFFFF00FFFFFF00FFFFFF00CCCC9900CC663300CC66
      3300CC993300CC999900FFFFFF00FFFFFF00A4A0A00077777700FFFFFF00CC66
      3300CC663300CC663300CC663300CC663300CC663300CC663300CC663300CC66
      3300CC663300FFFFFF0077777700A4A0A000000000000000000000000000FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000000FFFFFF000000
      000000000000000000000000000000000000FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00CCCC9900669933006699330066993300F0CAA600CC993300CC663300CC66
      3300CC996600FFFFFF00F1F1F100CCCCCC00EAEAEA00CCCC9900CC663300CC66
      3300CC993300FFECCC00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00CC66
      3300CC663300CC663300CC663300CC663300CC663300CC663300CC663300CC66
      3300CC663300FFFFFF00FFFFFF00FFFFFF00000000000000000000000000FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000000000000000000
      000000000000000000000000000000000000FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00D7D7D7009999660066993300F0CAA600CC993300CC663300CC66
      3300CC996600FFFFFF00CCCCCC005555550099999900F0CAA600CC663300CC66
      3300FFCCCC00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF0080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF008080
      8000FFFFFF00FFFFFF00FFFFFF00FFFFFF000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      000000000000000000000000000000000000FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00C0DCC00099996600DDDDDD0066993300F8F8F800F0CAA600F0CAA600F0CA
      A600DDDDDD00FFFFFF00EAEAEA00A4A0A000D7D7D700EAEAEA00F0CAA600DDDD
      DD00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF0080808000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF008080
      8000FFFFFF00FFFFFF00FFFFFF00FFFFFF000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      000000000000000000000000000000000000FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00F1F1F10066993300669933006699
      330099996600EAEAEA00FFFFFF00CCCC9900FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
      FF00868686008080800080808000808080008080800080808000808080008686
      8600FFFFFF00FFFFFF00FFFFFF00FFFFFF00424D3E000000000000003E000000
      2800000040000000600000000100010000000000000300000000000000000000
      000000000000000000000000FFFFFF0000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      0000000000000000000000000000000000000000000000000000000000000000
      00000000000000000000000000000000FFFF000000000000FFFF000000000000
      C007000000000000C007000000000000C007000000000000C007000000000000
      C007000000000000C007000000000000C007000000000000C007000000000000
      C007000000000000C007000000000000C00F000000000000C01F000000000000
      C03F000000000000FFFF00000000000000000000000000000000000000000000
      000000000000}
  end
  object ActionList: TActionList
    Images = ToolbarImages
    Left = 24
    Top = 68
    object FileNewCmd: TAction
      Category = 'File'
      Caption = '&New'
      Hint = 'Create a new file'
      ImageIndex = 0
      ShortCut = 16462
      OnExecute = FileNewCmdExecute
    end
    object FileOpenCmd: TAction
      Category = 'File'
      Caption = '&Open...'
      Hint = 'Open an existing file'
      ImageIndex = 1
      ShortCut = 16463
      OnExecute = FileOpenCmdExecute
    end
    object FileSaveCmd: TAction
      Category = 'File'
      Caption = '&Save'
      Hint = 'Save current file'
      ImageIndex = 2
      ShortCut = 16467
      OnExecute = FileSaveCmdExecute
    end
    object FilePrintCmd: TAction
      Category = 'File'
      Caption = '&Print'
      Hint = 'Print current file'
      ImageIndex = 3
      ShortCut = 16464
      OnExecute = FilePrintCmdExecute
    end
    object FileExitCmd: TAction
      Category = 'File'
      Caption = 'E&xit'
      Hint = 'Exit this application'
      ImageIndex = 8
      ShortCut = 32856
      OnExecute = FileExitCmdExecute
    end
    object FileSaveAsCmd: TAction
      Category = 'File'
      Caption = 'Save &As...'
      Hint = 'Save current file under a new name'
      OnExecute = FileSaveAsCmdExecute
    end
    object EditUndoCmd: TAction
      Category = 'Edit'
      Caption = '&Undo'
      Hint = 'Undo the last action'
      ImageIndex = 4
      ShortCut = 16474
      OnExecute = EditUndoCmdExecute
    end
    object EditCutCmd: TAction
      Category = 'Edit'
      Caption = 'Cu&t'
      Hint = 'Delete selected item'
      ImageIndex = 5
      ShortCut = 16472
      OnExecute = EditCutCmdExecute
    end
    object EditCopyCmd: TAction
      Category = 'Edit'
      Caption = '&Copy'
      Hint = 'Copy selected item to clipboard'
      ImageIndex = 6
      ShortCut = 16451
      OnExecute = EditCopyCmdExecute
    end
    object EditPasteCmd: TAction
      Category = 'Edit'
      Caption = '&Paste'
      Hint = 'Paste contents of clipboard'
      ImageIndex = 7
      ShortCut = 16470
      OnExecute = EditPasteCmdExecute
    end
    object EditFontCmd: TAction
      Category = 'Edit'
      Caption = '&Font...'
      OnExecute = EditFontCmdExecute
    end
    object FormatRichEditBoldCmd: TAction
      Category = 'Format'
      AutoCheck = True
      Caption = '&Bold'
      Hint = 'Bold'
      ImageIndex = 10
      ShortCut = 16450
      OnExecute = FormatRichEditBoldCmdExecute
      OnUpdate = FormatRichEditBoldCmdUpdate
    end
    object FormatRichEditItalicCmd: TAction
      Category = 'Format'
      AutoCheck = True
      Caption = '&Italic'
      Hint = 'Italic'
      ImageIndex = 11
      ShortCut = 16457
      OnExecute = FormatRichEditItalicCmdExecute
      OnUpdate = FormatRichEditItalicCmdUpdate
    end
    object FormatRichEditUnderlineCmd: TAction
      Category = 'Format'
      AutoCheck = True
      Caption = '&Underline'
      Hint = 'Underline'
      ImageIndex = 12
      ShortCut = 16469
      OnExecute = FormatRichEditUnderlineCmdExecute
      OnUpdate = FormatRichEditUnderlineCmdUpdate
    end
    object FormatRichEditStrikeOutCmd: TAction
      Category = 'Format'
      AutoCheck = True
      Caption = '&Strikeout'
      Hint = 'Strikeout'
      ImageIndex = 13
      OnExecute = FormatRichEditStrikeOutCmdExecute
      OnUpdate = FormatRichEditStrikeOutCmdUpdate
    end
    object FormatRichEditBulletsCmd: TAction
      Category = 'Format'
      AutoCheck = True
      Caption = '&Bullets'
      Hint = 'Bullets|Inserts a bullet on the current line'
      ImageIndex = 14
      OnExecute = FormatRichEditBulletsCmdExecute
      OnUpdate = FormatRichEditBulletsCmdUpdate
    end
    object FormatRichEditAlignLeftCmd: TAction
      Category = 'Format'
      AutoCheck = True
      Caption = 'Align &Left'
      Hint = 'Align Left|Aligns text at the left indent'
      ImageIndex = 15
      OnExecute = FormatRichEditAlignLeftCmdExecute
      OnUpdate = FormatRichEditAlignLeftCmdUpdate
    end
    object FormatRichEditAlignRightCmd: TAction
      Category = 'Format'
      AutoCheck = True
      Caption = 'Align &Right'
      Hint = 'Align Right|Aligns text at the right indent'
      ImageIndex = 16
      OnExecute = FormatRichEditAlignRightCmdExecute
      OnUpdate = FormatRichEditAlignRightCmdUpdate
    end
    object FormatRichEditAlignCenterCmd: TAction
      Category = 'Format'
      AutoCheck = True
      Caption = '&Center'
      Hint = 'Center|Centers text between margins'
      ImageIndex = 17
      OnExecute = FormatRichEditAlignCenterCmdExecute
      OnUpdate = FormatRichEditAlignCenterCmdUpdate
    end
    object SuperscriptCmd: TAction
      Category = 'Format'
      Caption = 'Superscript'
      Hint = 'Superscript|Formats text as superscript'
      ImageIndex = 18
      OnExecute = SuperscriptCmdExecute
      OnUpdate = SuperscriptCmdUpdate
    end
    object SubscriptCmd: TAction
      Category = 'Format'
      Caption = 'Subscript'
      Hint = 'Subscript|Formats text as subscript'
      ImageIndex = 19
      OnExecute = SubscriptCmdExecute
      OnUpdate = SubscriptCmdUpdate
    end
  end
  object OpenDialog1: TOpenDialog
    Left = 128
    Top = 144
  end
  object SaveDialog1: TSaveDialog
    Left = 208
    Top = 144
  end
end

其他文件

  • enumfont.py
  • Extractor_Icon.ico
  • overview.rtf
  • Project1.xml
  • reabout.py
  • remain.py

详细分析

功能概述

GUI组件演示

使用的组件

(未检测到具体组件)

技术特点

(未检测到特殊技术特点)

代码分析