diff --git a/Z99Dependency/ThreeFun/Form/U_ClList.dfm b/Z99Dependency/ThreeFun/Form/U_ClList.dfm new file mode 100644 index 0000000..730f888 --- /dev/null +++ b/Z99Dependency/ThreeFun/Form/U_ClList.dfm @@ -0,0 +1,402 @@ +object frmClList: TfrmClList + Left = 141 + Top = 134 + Width = 889 + Height = 528 + Caption = #25104#21697#27979#35797#25253#21578 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + OnClose = FormClose + OnCreate = FormCreate + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 873 + Height = 20 + AutoSize = True + ButtonHeight = 18 + ButtonWidth = 66 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + List = True + ParentColor = False + ShowCaptions = True + TabOrder = 0 + object tbselect: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #26597#35810 + ImageIndex = 2 + OnClick = tbselectClick + end + object tbadd: TToolButton + Left = 40 + Top = 0 + AutoSize = True + Caption = #22686#21152 + ImageIndex = 3 + OnClick = tbaddClick + end + object tbupdate: TToolButton + Left = 80 + Top = 0 + AutoSize = True + Caption = #20462#25913 + ImageIndex = 54 + OnClick = tbupdateClick + end + object tbdelete: TToolButton + Left = 120 + Top = 0 + AutoSize = True + Caption = #21024#38500 + ImageIndex = 48 + OnClick = tbdeleteClick + end + object tbLook: TToolButton + Left = 160 + Top = 0 + AutoSize = True + Caption = #26597#30475 + ImageIndex = 77 + OnClick = tbLookClick + end + object ToolButton1: TToolButton + Left = 200 + Top = 0 + Caption = #23548#20986'Excel' + ImageIndex = 75 + OnClick = ToolButton1Click + end + object tbPrintlb: TToolButton + Left = 266 + Top = 0 + Caption = #25171#21360#21015#34920 + ImageIndex = 12 + Visible = False + OnClick = tbPrintlbClick + end + object tbclose: TToolButton + Left = 332 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 55 + OnClick = tbcloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 20 + Width = 873 + Height = 49 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label1: TLabel + Left = 16 + Top = 20 + Width = 48 + Height = 12 + Caption = #29983#20135#26085#26399 + end + object Label2: TLabel + Left = 160 + Top = 20 + Width = 6 + Height = 12 + Caption = '-' + end + object Label3: TLabel + Left = 456 + Top = 64 + Width = 24 + Height = 12 + Caption = #23458#25143 + end + object Label4: TLabel + Left = 608 + Top = 64 + Width = 24 + Height = 12 + Caption = #20135#21697 + end + object Label5: TLabel + Left = 284 + Top = 68 + Width = 36 + Height = 12 + Caption = #35745#21010#21333 + end + object Label6: TLabel + Left = 308 + Top = 20 + Width = 48 + Height = 12 + Caption = #21592#24037#32534#21495 + end + object Label7: TLabel + Left = 500 + Top = 20 + Width = 48 + Height = 12 + Caption = #21592#24037#21517#31216 + end + object begdate: TDateTimePicker + Left = 68 + Top = 16 + Width = 90 + Height = 20 + Date = 40533.591564594910000000 + Format = 'yyyy-MM-dd' + Time = 40533.591564594910000000 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 0 + end + object enddate: TDateTimePicker + Left = 168 + Top = 16 + Width = 90 + Height = 20 + Date = 40533.591593796290000000 + Format = 'yyyy-MM-dd' + Time = 40533.591593796290000000 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 1 + end + object customName: TEdit + Left = 480 + Top = 60 + Width = 100 + Height = 20 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 2 + end + object ChnName: TEdit + Left = 636 + Top = 60 + Width = 100 + Height = 20 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 3 + end + object planNo: TEdit + Left = 320 + Top = 64 + Width = 100 + Height = 20 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 4 + end + object userID: TEdit + Left = 360 + Top = 16 + Width = 121 + Height = 20 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 5 + end + object userName: TEdit + Left = 552 + Top = 16 + Width = 121 + Height = 20 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 6 + end + end + object cxGrid1: TcxGrid + Left = 0 + Top = 69 + Width = 873 + Height = 328 + Align = alTop + TabOrder = 2 + object TV1: TcxGridDBTableView + OnDblClick = TV1DblClick + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = V1P_Num + end + item + Kind = skSum + Column = V1packs + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsData.Deleting = False + OptionsData.Editing = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + object V1operTime: TcxGridDBColumn + Caption = #27979#35797#26085#26399 + DataBinding.FieldName = 'operTime' + HeaderAlignmentHorz = taCenter + Width = 75 + end + object V1planNo: TcxGridDBColumn + Caption = #35745#21010#21333 + DataBinding.FieldName = 'planNo' + HeaderAlignmentHorz = taCenter + Width = 75 + end + object V1customname: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'customname' + HeaderAlignmentHorz = taCenter + Width = 75 + end + object V1P_Code: TcxGridDBColumn + Caption = #20135#21697#32534#21495 + DataBinding.FieldName = 'P_Code' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object V1P_ChnName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'P_ChnName' + HeaderAlignmentHorz = taCenter + Width = 120 + end + object V1P_Spec: TcxGridDBColumn + Caption = #20135#21697#35268#26684 + DataBinding.FieldName = 'P_Spec' + HeaderAlignmentHorz = taCenter + Width = 80 + end + object V1colorname: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'colorname' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object V1P_YHNO: TcxGridDBColumn + Caption = #33457#21495 + DataBinding.FieldName = 'P_YHNO' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object V1P_Colstd: TcxGridDBColumn + Caption = #33394#20301 + DataBinding.FieldName = 'P_Colstd' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object V1packs: TcxGridDBColumn + Caption = #20214#25968 + DataBinding.FieldName = 'packs' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object V1P_Num: TcxGridDBColumn + Caption = #25968#37327 + DataBinding.FieldName = 'P_Num' + HeaderAlignmentHorz = taCenter + Width = 60 + end + object V1P_unit: TcxGridDBColumn + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'P_unit' + HeaderAlignmentHorz = taCenter + Width = 75 + end + object V1operatorName: TcxGridDBColumn + Caption = #27979#35797#20154#21592 + DataBinding.FieldName = 'operatorName' + HeaderAlignmentHorz = taCenter + Width = 75 + end + object V1note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'note' + HeaderAlignmentHorz = taCenter + Width = 120 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = TV1 + end + end + object Panetime: TPanel + Left = 308 + Top = 120 + Width = 191 + Height = 41 + BevelInner = bvRaised + BevelOuter = bvLowered + Caption = #27491#22312#26597#35810#25968#25454#65292#35831#31561#24453'...' + Font.Charset = GB2312_CHARSET + Font.Color = clBlue + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [fsBold] + ParentFont = False + TabOrder = 3 + Visible = False + end + object ADOQueryTmp: TADOQuery + AutoCalcFields = False + LockType = ltPessimistic + CommandTimeout = 600 + Parameters = <> + Left = 392 + Top = 180 + end + object DataSource1: TDataSource + DataSet = ADOQueryTmp + Left = 428 + Top = 60 + end + object ADOQueryCmd: TADOQuery + Parameters = <> + Left = 492 + Top = 68 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid1 + PopupMenus = <> + Left = 568 + Top = 4 + end + object dxComponentPrinter1: TdxComponentPrinter + CurrentLink = dxComponentPrinter1Link1 + DateFormat = 4 + TimeFormat = 2 + Version = 0 + Left = 464 + Top = 236 + object dxComponentPrinter1Link1: TdxGridReportLink + Component = cxGrid1 + PrinterPage.DMPaper = 1 + PrinterPage.Footer = 6350 + PrinterPage.Header = 6350 + PrinterPage.Margins.Bottom = 12700 + PrinterPage.Margins.Left = 12700 + PrinterPage.Margins.Right = 12700 + PrinterPage.Margins.Top = 12700 + PrinterPage.PageSize.X = 215900 + PrinterPage.PageSize.Y = 279400 + PrinterPage._dxMeasurementUnits_ = 0 + PrinterPage._dxLastMU_ = 2 + BuiltInReportLink = True + end + end +end diff --git a/Z99Dependency/ThreeFun/Form/U_ClList.pas b/Z99Dependency/ThreeFun/Form/U_ClList.pas new file mode 100644 index 0000000..825ad8f --- /dev/null +++ b/Z99Dependency/ThreeFun/Form/U_ClList.pas @@ -0,0 +1,337 @@ +unit U_ClList; + +interface + +uses + Windows, Messages, SysUtils, StrUtils,Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, + cxGridLevel, cxClasses, cxControls, cxGridCustomView, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid, + cxGridCustomPopupMenu, cxGridPopupMenu, dxPSGlbl, dxPSUtl, dxPSEngn, + dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns, + dxPSEdgePatterns, dxPSCore, dxPScxCommon, dxPScxGridLnk; + +type + TfrmClList = class(TForm) + ToolBar1: TToolBar; + tbselect: TToolButton; + tbadd: TToolButton; + tbupdate: TToolButton; + tbdelete: TToolButton; + tbclose: TToolButton; + Panel1: TPanel; + Label1: TLabel; + begdate: TDateTimePicker; + enddate: TDateTimePicker; + Label2: TLabel; + Label3: TLabel; + customName: TEdit; + Label4: TLabel; + ChnName: TEdit; + TV1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + ADOQueryTmp: TADOQuery; + DataSource1: TDataSource; + V1operTime: TcxGridDBColumn; + V1customname: TcxGridDBColumn; + V1P_Code: TcxGridDBColumn; + V1P_ChnName: TcxGridDBColumn; + V1P_Spec: TcxGridDBColumn; + V1packs: TcxGridDBColumn; + V1P_Num: TcxGridDBColumn; + V1P_unit: TcxGridDBColumn; + V1operatorName: TcxGridDBColumn; + V1note: TcxGridDBColumn; + Panetime: TPanel; + ADOQueryCmd: TADOQuery; + V1planNo: TcxGridDBColumn; + Label5: TLabel; + planNo: TEdit; + tbLook: TToolButton; + V1colorname: TcxGridDBColumn; + V1P_YHNO: TcxGridDBColumn; + V1P_Colstd: TcxGridDBColumn; + cxGridPopupMenu1: TcxGridPopupMenu; + Label6: TLabel; + userID: TEdit; + userName: TEdit; + Label7: TLabel; + tbPrintlb: TToolButton; + ToolButton1: TToolButton; + dxComponentPrinter1: TdxComponentPrinter; + dxComponentPrinter1Link1: TdxGridReportLink; + procedure tbcloseClick(Sender: TObject); + procedure tbaddClick(Sender: TObject); + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure FormCreate(Sender: TObject); + procedure tbselectClick(Sender: TObject); + procedure tbupdateClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure tbdeleteClick(Sender: TObject); + procedure tbLookClick(Sender: TObject); + procedure TV1DblClick(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure tbPrintlbClick(Sender: TObject); + private + procedure DoQuery(); + procedure FilterData(); + function DeleteData():boolean; //删除数据 + procedure initGrid(); + { Private declarations } + public + + FType:string; + { Public declarations } + end; + +var + frmClList: TfrmClList; +implementation +uses + U_DataLink,U_Fun; //, U_ClEdit +{$R *.dfm} +procedure TfrmClList.initGrid(); +var + i:integer; +begin + with adoqueryCmd do + begin + close; + sql.Clear; + sql.Add(' select * from BD_ColumnConfig '); + sql.Add(' where tableName=''WS_Register'' '); + sql.Add(' and Type='''+trim(fType)+''' '); + sql.Add(' and isVisibleLB=1 '); + sql.Add(' order by orderNo '); + open; + end; + TV1.ClearItems; + if not adoqueryCmd.IsEmpty then + begin + for i:=0 to adoqueryCmd.RecordCount-1 do + begin + tv1.CreateColumn; + tv1.Columns[i].DataBinding.FieldName:=trim(adoqueryCmd.fieldbyname('col').AsString); + tv1.Columns[i].Caption:=trim(adoqueryCmd.fieldbyname('colName').AsString); + tv1.Columns[i].Name:='tv1'+trim(adoqueryCmd.fieldbyname('col').AsString); + tv1.Columns[i].HeaderAlignmentHorz:=tacenter; + tv1.Columns[i].Width:=90; + if LeftBStr(trim(adoqueryCmd.fieldbyname('col').AsString),2) ='fd' then + tv1.Columns[i].Summary.FooterKind:=sksum; + // if adoqueryCmd.fieldbyname('isreadonly').AsBoolean then + // tv1.Columns[i].Options.Editing:=false; + adoqueryCmd.Next; + end; + end; + //TV1.ApplyBestFit(); +end; + +////////////////////////////////////////////// +//////删除数据 +////////////////////////////////////////////// +function TfrmClList.DeleteData():boolean; +begin + result:=false; + try + with adoqueryCmd do + begin + close; + sql.Clear; + // sql.Add('delete from JD_Inspect where InspectNo='+quotedstr(trim(ADOQueryTmp.fieldbyname('InspectNo').AsString))); + sql.Add('delete from WS_Register where WRNo='+quotedstr(trim(ADOQueryTmp.fieldbyname('WRNo').AsString))); + sql.Add('and WRID='+quotedstr(trim(ADOQueryTmp.fieldbyname('WRID').AsString))); + execsql; + end; + result:=true; + except + end; +end; +procedure TfrmClList.DoQuery(); +var + strsql,sqlwhere:string; +begin + begdate.SetFocus; + screen.Cursor:=crsqlwait; + Panetime.Visible:=true; + Panetime.Left:=(Width-Panetime.Width) div 2; + Panetime.top:=(Height-Panetime.Height-400) div 2; + Application.ProcessMessages; + + sqlwhere:=' where WRDate>='''+formatdatetime('yyyy-MM-dd',begdate.Date)+''' '+ + ' and WRDate<'''+formatdatetime('yyyy-MM-dd',enddate.Date+1)+''' '; + sqlwhere:=sqlwhere+' and Type='''+trim(FType)+''' '; + try + with ADOQueryTmp do + begin + close; + sql.Clear; + filtered:=false; + sql.Add('select * from WS_Register A'); + sql.Add(sqlwhere); + open; + end; + FilterData(); + finally + Panetime.Visible:=false; + screen.Cursor:=crdefault; + end; +end; +procedure TfrmClList.FilterData(); +var + filterStr:string; +begin + filterStr:=''; + if trim(userID.Text)<>'' then + filterStr:=filterStr+' and userID like '+quotedstr('%'+trim(userID.Text)+'%'); + if trim(USERName.Text)<>'' then + filterStr:=filterStr+' and USERName like '+quotedstr('%'+trim(USERName.Text)+'%'); + if trim(planNo.Text)<>'' then + filterStr:=filterStr+' and planNo like '+quotedstr('%'+trim(planNo.Text)+'%'); + try + ADOQueryTmp.DisableControls ; + if trim(filterStr)='' then + begin + ADOQueryTmp.Filtered:=false; + ADOQueryTmp.EnableControls; + exit; + end; + filterStr:=trim(Copy(filterStr,5,length(filterStr)-4)); + with ADOQueryTmp do + begin + filtered:=false; + filter:=filterStr; + filtered:=true; + end; + finally + ADOQueryTmp.EnableControls; + end; +end; + +procedure TfrmClList.tbcloseClick(Sender: TObject); +begin + close; +end; + +procedure TfrmClList.tbaddClick(Sender: TObject); +begin +// frmclEdit:=TfrmclEdit.create(self); +// with frmclEdit do +// begin +// fromid:=0; +// fType:=trim(self.FType); +// caption:=trim(self.Caption); +// if showmodal=1 then +// begin +// // DoQuery(); +// // self.ADOQueryTmp.Locate('inspectNo',fkeyNO,[]); +// end; +// DoQuery(); +// Release; +// end; +end; + +procedure TfrmClList.FormDestroy(Sender: TObject); +begin + frmClList:=nil; +end; + +procedure TfrmClList.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + writeCxGrid(self.Name+tv1.Name+Self.FType,tv1,'产量登记'); + action:=cafree; +end; + +procedure TfrmClList.FormCreate(Sender: TObject); +begin + begdate.Date:=dServerDate-6; + enddate.Date:=dServerDate; + cxgrid1.Align:=alClient; +end; + +procedure TfrmClList.tbselectClick(Sender: TObject); +begin + DoQuery(); +end; + +procedure TfrmClList.tbupdateClick(Sender: TObject); +begin +// if ADOQueryTmp.IsEmpty then exit; +// frmclEdit:=TfrmclEdit.create(self); +// with frmclEdit do +// begin +// fromid:=1; +// fType:=trim(self.FType); +// caption:=trim(self.Caption); +// fkeyNO:=trim(self.ADOQueryTmp.fieldbyname('WRNO').AsString); +// if showmodal=1 then +// begin +// DoQuery(); +// self.ADOQueryTmp.Locate('WRNO',fkeyNO,[]); +// end; +// Release; +// end; +end; + +procedure TfrmClList.FormShow(Sender: TObject); +begin + initGrid(); + readCxGrid(self.Name+tv1.Name+Self.FType,tv1,'产量登记'); + DoQuery(); +end; + +procedure TfrmClList.tbdeleteClick(Sender: TObject); +begin + if adoqueryTmp.IsEmpty then exit; + if application.MessageBox('是否删除此信息?','提示信息',MB_YesNo+MB_DefButton2+MB_IconQuestion)=IdYes then + begin + if not DeleteData() then + begin + application.MessageBox('删除数据失败!','提示信息'); + exit; + end; + DoQuery(); + end; + +end; + +procedure TfrmClList.tbLookClick(Sender: TObject); +begin +// if ADOQueryTmp.IsEmpty then exit; +// frmclEdit:=TfrmclEdit.create(self); +// with frmclEdit do +// begin +// fromid:=10; +// fType:=trim(self.FType); +// fkeyNO:=trim(self.ADOQueryTmp.fieldbyname('WRNO').AsString); +// caption:=trim(self.Caption); +// if showmodal=1 then +// begin +// DoQuery(); +// self.ADOQueryTmp.Locate('inspectNo',fkeyNO,[]); +// end; +// Release; +// end; +end; + +procedure TfrmClList.TV1DblClick(Sender: TObject); +begin + tbLook.Click; +end; + +procedure TfrmClList.ToolButton1Click(Sender: TObject); +begin + if ADOQueryTmp.IsEmpty then exit; + TcxGridToExcel(self.Caption,cxGrid1); +end; + +procedure TfrmClList.tbPrintlbClick(Sender: TObject); +begin + if ADOQueryTmp.IsEmpty then exit; + dxComponentPrinter1.ReportLink[0].Preview; +end; + +end. diff --git a/Z99Dependency/ThreeFun/Form/U_CompressionFun.pas b/Z99Dependency/ThreeFun/Form/U_CompressionFun.pas new file mode 100644 index 0000000..6d2e4cd --- /dev/null +++ b/Z99Dependency/ThreeFun/Form/U_CompressionFun.pas @@ -0,0 +1,88 @@ +unit U_CompressionFun; + +interface +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, ShlObj, cxShellCommon, cxControls, + cxContainer, cxShellTreeView, cxShellListView, StdCtrls, BtnEdit, + OleCtnrs, DB, ADODB,ZLib; + + +procedure CompressionStream(var ASrcStream:TMemoryStream;ACompressionLevel:Integer = 2); +procedure UnCompressionStream(var ASrcStream:TMemoryStream); + +implementation +uses + U_iniparam; + + + + +//////////////////////////////////////////////////// +///////压缩流 +//////////////////////////////////////////////////// +procedure CompressionStream(var ASrcStream:TMemoryStream;ACompressionLevel:Integer = 2); +var + nDestStream:TMemoryStream; + nTmpStream:TCompressionStream; + nCompressionLevel:TCompressionLevel; +begin + ASrcStream.Position := 0; + nDestStream := TMemoryStream.Create; + try + //级别 + case ACompressionLevel of + 0:nCompressionLevel := clNone; + 1:nCompressionLevel := clFastest; + 2:nCompressionLevel := clDefault; + 3:nCompressionLevel := clMax; + else + nCompressionLevel := clMax; + end; + //开始压缩 + nTmpStream := TCompressionStream.Create(nCompressionLevel,nDestStream); + try + ASrcStream.SaveToStream(nTmpStream); + finally + nTmpStream.Free;//释放后nDestStream才会有数据 + end; + ASrcStream.Clear; + ASrcStream.LoadFromStream(nDestStream); + ASrcStream.Position := 0; + finally + nDestStream.Clear; + nDestStream.Free; + end; +end; +//////////////////////////////////////////////////// +///////解压缩流 +//////////////////////////////////////////////////// +procedure UnCompressionStream(var ASrcStream:TMemoryStream); +var + nTmpStream:TDecompressionStream; + nDestStream:TMemoryStream; + nBuf: array[1..512] of Byte; + nSrcCount: integer; +begin + ASrcStream.Position := 0; + nDestStream := TMemoryStream.Create; + nTmpStream := TDecompressionStream.Create(ASrcStream); + try + repeat + //读入实际大小 + nSrcCount := nTmpStream.Read(nBuf, SizeOf(nBuf)); + if nSrcCount > 0 then + nDestStream.Write(nBuf, nSrcCount); + until (nSrcCount = 0); + ASrcStream.Clear; + ASrcStream.LoadFromStream(nDestStream); + ASrcStream.Position := 0; + finally + nDestStream.Clear; + nDestStream.Free; + nTmpStream.Free; + end; +end; + + +end. diff --git a/Z99Dependency/ThreeFun/Form/U_DxZDYHelp.dfm b/Z99Dependency/ThreeFun/Form/U_DxZDYHelp.dfm new file mode 100644 index 0000000..4429a39 --- /dev/null +++ b/Z99Dependency/ThreeFun/Form/U_DxZDYHelp.dfm @@ -0,0 +1,18042 @@ +object frmDxZDYHelp: TfrmDxZDYHelp + Left = 269 + Top = 151 + Width = 432 + Height = 528 + Caption = #39033#30446#32500#25252 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnClose = FormClose + OnCreate = FormCreate + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object cxGrid1: TcxGrid + Left = 0 + Top = 72 + Width = 409 + Height = 365 + TabOrder = 0 + object TV1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + OnCellDblClick = TV1CellDblClick + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsBehavior.FocusCellOnTab = True + OptionsBehavior.GoToNextCellOnEnter = True + OptionsBehavior.FocusCellOnCycle = True + OptionsCustomize.ColumnFiltering = False + OptionsView.GroupByBox = False + OptionsView.Indicator = True + object V1Code: TcxGridDBColumn + Caption = #32534#21495 + DataBinding.FieldName = 'ZDYNo' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 97 + end + object V1Sel: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'Ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + end + object V1Name: TcxGridDBColumn + Tag = 2 + Caption = #21517#31216 + DataBinding.FieldName = 'ZDYName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 156 + end + object V1Note: TcxGridDBColumn + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsEditFixedList + Properties.Items.Strings = ( + #26579#33394 + #22806#21152#24037) + HeaderAlignmentHorz = taCenter + Width = 113 + end + object V1OrderNo: TcxGridDBColumn + Caption = #39034#24207#21495 + DataBinding.FieldName = 'OrderNo' + Visible = False + HeaderAlignmentHorz = taCenter + Width = 53 + end + end + object cxGrid1Level1: TcxGridLevel + GridView = TV1 + end + end + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 416 + Height = 29 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = ThreeImgList + List = True + ParentFont = False + ShowCaptions = True + TabOrder = 1 + object ToolButton1: TToolButton + Left = 0 + Top = 0 + Caption = #36873#25321 + ImageIndex = 41 + OnClick = ToolButton1Click + end + object TBAdd: TToolButton + Left = 59 + Top = 0 + Caption = #22686#34892 + ImageIndex = 103 + OnClick = TBAddClick + end + object TBDel: TToolButton + Left = 118 + Top = 0 + Caption = #21024#34892 + ImageIndex = 107 + OnClick = TBDelClick + end + object TBEdit: TToolButton + Left = 177 + Top = 0 + Caption = #20462#25913 + ImageIndex = 54 + OnClick = TBEditClick + end + object TBSave: TToolButton + Left = 236 + Top = 0 + Caption = #20445#23384 + ImageIndex = 111 + OnClick = TBSaveClick + end + object TBClose: TToolButton + Left = 295 + Top = 0 + Caption = #20851#38381 + ImageIndex = 55 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 29 + Width = 416 + Height = 44 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + TabOrder = 2 + object Label1: TLabel + Left = 45 + Top = 17 + Width = 24 + Height = 12 + Caption = #21517#31216 + end + object ZDYName: TEdit + Tag = 2 + Left = 80 + Top = 12 + Width = 169 + Height = 20 + TabOrder = 0 + OnChange = ZDYNameChange + end + end + object ADOQueryMain: TADOQuery + Connection = ADOConnection1 + LockType = ltReadOnly + Parameters = <> + Left = 40 + Top = 88 + end + object ADOQueryTemp: TADOQuery + Connection = ADOConnection1 + LockType = ltReadOnly + Parameters = <> + Left = 40 + Top = 144 + end + object ADOQueryCmd: TADOQuery + Connection = ADOConnection1 + Parameters = <> + Left = 40 + Top = 200 + end + object DataSource1: TDataSource + DataSet = ClientDataSet1 + Left = 280 + Top = 144 + end + object ClientDataSet1: TClientDataSet + Aggregates = <> + Params = <> + Left = 200 + Top = 144 + end + object ADOConnection1: TADOConnection + LoginPrompt = False + Left = 208 + Top = 288 + end + object ThreeImgList: TImageList + Height = 24 + Width = 24 + Left = 120 + Top = 320 + Bitmap = { + 494C01018900F000040018001800FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 + 000000000000360000002800000060000000A005000001002000000000000070 + 0800000000000000000000000000000000000000000000000000000000000000 + 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 + 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 + 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 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F800000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A5004F69BE004F69BE004F69BE000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 00000000000000000000000000000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00506CCA00173CB900506CCA000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A9897004F6ED5001740C9004F6ED5000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA006885E7006885 + E7006885E7001C4BE8001948E8001C4BE8006885E7006885E7006885E7000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE006A8AF3004A70 + F0004A70F0002957EE002957EE002957EE004A70F0004A70F0006A8AF3000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF007F99ED007F99 + ED007F99ED003B64EF003B64EF003E67F0007F99ED007F99ED007F99ED000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB008EA6F6006989F3008EA6F6000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4009AAFF700829CF5009AAFF7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F00ADBDF400ADBDF400ADBDF4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000008195DB0028397300283973002839 + 7300283973002839730028397300283973002839730028397300283973002839 + 7300283973002839730028397300283973002839730028397300283973002839 + 73002839730028397300283973007287D2000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000A4B3E50031437F002B38 + 680026335B002B396C008E9FD400C0C0C000C1C1C100C7C7C700C8C8C800D5D5 + D500DADADA000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000CCCC + CC003E5291002B3767002A386800445799004D60A1005166AC005267AC005166 + AE005267AB005064A8004E63A7004A5D9B002F3D6E0029366400293665009FAD + DC00D3D3D3000000000000000000000000002D3E7C00092EAA000429A7000429 + A7000429A7000429A7000429A7000429A7000429A7000429A7000429A7000429 + A7000429A7000429A7000429A7000429A7000429A7000429A7000429A7000429 + A7000429A7000429A7003B57B400354682000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000536AB6007089DA005570 + CD003E5ABA00566EBC0047589200B7C5F1000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000CBCBCB0093A2 + D800475891005166B1004E60A2004E69C0003B58BA003856B9003B58B9003754 + B7003653B6003552B300304DAF003551AE003545790047568D004C60A3002A37 + 670092A1D7000000000000000000000000004057A7002345B600042BAC00042B + AC00042BAC00042BAC00042BAC00042BAC00042BAC00042BAC00042AAA000328 + A300042AAA00042BAC00042BAC00042BAC00042BAC00042BAC00042BAC00042B + AC00042BAC00042BAC004157A200334A9300374E9A002C3E7D002C3E7D002C3E + 7D002C3E7D002C3E7D00374E9A0000000000374E9A002C3E7D002C3E7D002C3E + 7D002C3E7D002C3E7D00374E9A0000000000374E9A002C3E7D002C3E7D002C3E + 7D002C3E7D002C3E7D00374E9A0000000000000000006782DF006983DC00617C + D6004461C2003A57B800576EBC00283A7700B7C5F10000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004860 + B200506BC8003B5BC4005570CA005E78D1003D5DC8004664CA004563C9004563 + C9004361C7003F5DC3003B5AC0003151BA0049598E004E67B800324EAE004A5A + 93004157A400000000000000000000000000A7B7ED00435EBA00153AB7000930 + B3000930B3000930B3000930B3000930B3000930B3000930B3008191C600FFFF + FF00FFFFFF000930B3000930B3000930B3000930B3000930B3000930B3000930 + B3000930B3000F35B5003D4F8D008499DF0033478A004F6CCC004F6CCC004F6C + CC004F6CCC00657FD30033478A000000000033478A00657FD3004F6CCC004F6C + CC004F6CCC00657FD30033478A000000000033478A00657FD3004F6CCC004F6C + CC004F6CCC004F6CCC0033478A0000000000000000006F8AE5007891E300758E + DF005873CF004663C3003A57B80047589300283B7800B7C5F100000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000003C52 + 9E005978E100617FE4006F8BE800859DED006D89E9006E8AEA006C89E9006B88 + E8006986E7006481E300617EE1005C7ADE007F93D4005270D3004362CB005971 + C10033458400000000000000000000000000000000003A4E93004E69C0002449 + C500163DC100163DC100163DC100163DC100163DC100153AB800FFFFFF00FFFF + FF00FFFFFF00153AB800163DC100163DC100163DC100163DC100163DC100163D + C1001F45C4004E69C600A8B7EE00000000004158A7001B47D800204BD900224C + D9001B47D800829AE9004158A700000000004158A700829AE900204BD900224C + D900204BD900829AE9004158A700000000004158A700829AE9001B47D800224C + D900204BD9001B47D8004158A7000000000000000000778ACD009EB0EF00829A + E800778FE00096A8E3008292C800344EA200576EBC0048599300B7C5F1000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000435B + AD006E8CEF007994F1007C97F3008DA5F500819BF400829CF500809AF4007F9A + F4007C97F3007692EF00738FED006F8BEB007F98E9005F7DE0005876DB006079 + CC00384C900000000000000000000000000000000000617ACE004E61A5004666 + D0001D44C9001D44C9001D44C9001D44C9001D44C9001C43C500A8B4DC00FFFF + FF00FFFFFF001D44C9001D44C9001D44C9001D44C9001D44C9001D44C9001D44 + C9003E60D0005066AD0000000000000000004961B6002D58E7003861E9003A62 + E9002C57E7009BAFF3004961B600000000004961B6009BAFF3003861E9003A62 + E900365FE8009BAFF3004961B600000000004961B6009BAFF3002D58E7003A62 + E900365FE8002C57E7004961B60000000000000000003F59B0007E90D000A1B3 + EF00839AE5008A96BD00B3C0EB00384F9C00344EA200576EBC002A3D7900B7C5 + F100000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004862 + B9007A96F4008AA3F6008EA6F60092A9F60093AAF60093AAF60092A9F60091A8 + F6008EA6F60088A2F600839DF400809AF4007591EF006F8BEB006784E700637E + D5003D539C0000000000000000000000000000000000000000003A53A1005A73 + C600234ACF00234ACF00234ACF00234ACF00234ACF00234ACF001C3CA6004660 + B6004660B600234ACF00234ACF00234ACF00234ACF00234ACF00234ACF002F54 + D2005974CB003E549E0000000000000000004F69C0003C65EF00496FF0004C72 + F1003A64EF00A9BBF8004F69C000000000004F69C000A9BBF800496FF0004C72 + F100476EF000A9BBF8004F69C000000000004F69C000A9BBF8003C65EF004C72 + F100476EF0003A64EF004F69C0000000000000000000BECCF5004059B0007F92 + D100849BE8004E5C8A008A96BD008292C800384F9C00344EA200495A93002B3D + 7A00B7C5F1000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000006F89 + DE00859FF5009FB3F700B2C2F900B7C7F900B8C7F900B9C8F900B7C7F900B5C5 + F900B3C3F900ABBDF800A6B9F800A0B4F70094ABF6008CA5F6007894F400617A + CE006B85DA00000000000000000000000000000000000000000000000000455E + B200476ADF003158DB003158DB003158DB003158DB003158DB0092A2D700FFFF + FF00FFFFFF003158DB003158DB003158DB003158DB003158DB003158DB00657E + D0004159AB000000000000000000000000005770C700BBC9F600BECBF700BFCC + F600BAC8F600B5C4F5005770C700000000005770C700B5C4F500BECBF700BFCC + F600BECBF700B5C4F5005770C700000000005770C700B5C4F500BBC9F600BFCC + F600BECBF700BAC8F6005770C70000000000000000000000000000000000BECC + F5008093D100A2B4EF006576AF008A96BD00B3C0EB008292C800344EA200566E + BC00495A9500B7C5F10000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3DB + F8007C95E8009DB2F700B2C2F900C9D5FB00BAC5E800AEB8D800A1AAC900A0A9 + C8009DA7C8009AA6CE009CAAD700A1B1E6009FB3F7008CA5F6007E99F500556E + C200D2DBF8000000000000000000000000000000000000000000000000009AAD + EC006984E0003C62E200375EE000375EE000375EE000375EE00095A5D900FFFF + FF00FFFFFF00375EE000375EE000375EE000375EE000375EE000395FE000566C + B600748ADC000000000000000000000000005B76D2005872C9005872C9007A7E + 8E005872C9005872C9005B76D200000000005B76D2005872C9005872C9006F74 + 83005872C9005872C9005B76D200000000005B76D2005872C9005872C9005872 + C9005872C9005872C9005B76D200000000000000000000000000000000000000 + 0000435CB2007C8FD1009AADEF004E5C8A008A96BD00B3C0EB00384F9C00344E + A200576EBC002C3F7C00B7C5F100000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005E76C700869DE9009CB1F700A2AFD900ADB5CF00D6D9E100EDECEB00ECEB + EA00ECEBEA00E4E4E800D2D5E100A2ACCE0097ADF70088A2F6007791E70092A5 + EC00000000000000000000000000000000000000000000000000000000000000 + 0000687ECB00587AE9003E64E5003E64E5003E64E5003E64E50097A7DB00FFFF + FF00FFFFFF003E64E5003E64E5003E64E5003E64E5003E64E5005073E8004A63 + BB00000000000000000000000000000000000000000000000000000000007878 + 7800000000000000000000000000000000000000000000000000000000006666 + 6600000000000000000000000000000000000000000000000000000000005656 + 5600000000000000000000000000000000000000000000000000000000000000 + 0000BECCF500445DB3007C90D1006576AF004E5C8A008A96BD008292C800384F + 9C00344EA2004A5B95002D3F7C00B7C5F1000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000CED8F7006B84DB005C72BD00C7CBDB00CDCBCA00A19F9E009997 + 960099989600B8B7B500D1D0CE00CACEDE005972C5006B84DB00CED8F7000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000657FD9006C83CD006686F2004C71F0004C71F0004C71F000CDD4EE00FFFF + FF00FFFFFF004C71F0004C71F0004C71F0004C71F0006182F1007087D4000000 + 0000000000000000000000000000000000000000000000000000000000009090 + 9000000000000000000000000000000000000000000000000000000000008080 + 8000000000000000000000000000000000000000000000000000000000007070 + 7000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000BECCF5008294D300A2B4EF006576AF008A96BD00B3C0 + EB008292C800344EA200576EBC004B5C9500B7C5F10000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000093A7ED006475AC0083879400ACAAA900C3C1 + C000C7C5C4009896950081879B006879B4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D2DBF800536CC1008098E7005176F1005176F1005176F100CFD6EF00FFFF + FF00FFFFFF005176F1005176F1005176F100597CF2007E97ED005870C3000000 + 0000000000000000000000000000000000000000000000000000000000009D9D + 9D009A9A9A0099999900989898009494940094949400919191008E8E8E008C8C + 8C008C8C8C008888880088888800858585008282820080808000808080007C7C + 7C00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000465FB5008395D300A2B4EF004E5C8A008A96 + BD00B3C0EB00384F9C003B58B800576EBC002F3E750032437D00354787003B50 + 98004C64BB000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000009D9D9D005D5C5C00A9A7A500AFAD + AB00B7B5B300C0BEBD00646363009D9D9D000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000007991E3006B81CC00587CF200587CF200587CF200D1D8EF00FFFF + FF00FFFFFF00587CF200587CF200587CF200718FF4007388D200607AD5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000009999 + 9900000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000BECCF5004760B6008396D4006576AF004F5D + 8A008A96BD008292C8004663C3003C59B900596DAF00586CAF005D72B800647B + C8005C70B1004760B40000000000000000000000000000000000000000000000 + 000000000000000000000000000059595900ACABAA00C2C1C000BDBCBA00B7B6 + B400AFADAB00A8A6A500B7B5B400AEADAC000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000839AE800869FF3006686F3006586F300F3F5FA00FFFF + FF00FFFFFF006586F3006586F3006586F300758AD1007189DF00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000364C99002B3D7B002B3D7B002B3D7B006367 + 73002B3D7B002B3D7B002B3D7B00364C99000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFCCF5007F92D400A2B4 + EF00869DE800778FE0006781D7005873CF003351B600203FA6000C2C96001B3B + A8003D5ABD00667FD0004861B400000000000000000000000000000000000000 + 00000000000000000000000000007E7E7D00D1D0D000D2D2D100CDCCCB00C7C6 + C500BFBDBC00A8A6A400A8A6A400B9B7B600AAAAAA0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000008B9FE0007E99F5006B8AF300FFFFFF00FFFF + FF00FFFFFF006B8AF3006B8AF3007A96F400526CC50000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000031448600657ED100506CCA00506CCA00506C + CA00506CCA00506CCA00657ED100314486000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000004963B9008597 + D500A4B5EF00849BE600778FE0006781D7004461C200415DBA00445EB4001433 + 9B001839A7003A58BC005F73B4004A62B5000000000000000000000000000000 + 0000000000000000000000000000C2C1C100E0DFDE00E1E0E000DBDBDA00D5D4 + D300CCCBCA00B4B3B100A6A4A300ACAAA8006969690000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005F77C90097ACF2007592F4005B73C3005B73 + C3005B73C3007290F4007491F40090A7F300849BE80000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000374C94006580D8000732C1000833C1000833 + C1000833C1000631C1006681D900374C94000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000BFCCF5004A63 + BA008799D60093A7EB00859BE600778FE0008196DA0099A8D9008F9DCD008191 + C7003853AB001536A5005E78CD003F549B000000000000000000000000000000 + 0000000000000000000000000000A9A9A8004D4D4D00F7F6F600F1F1F100EBEA + EA00E2E1E000C8C7C600B9B7B60070706F004D4D4D0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000C1CDF6005C75C8009FB1EF007F9AF5007F9A + F5007F9AF500829CF500A1B4F300687FCD000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000445BAC00869EEC002C55DE003D62DF003E63 + DF003C61DF002A53DD00869EEC00445BAC000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00004D66BB00A3B5F1009EB0EF008FA4EA00596CAD00AAB9EF0000000000536B + BC005A6999007F8FC400546DBE003A4C8B000000000000000000000000000000 + 00000000000000000000000000004D4D4D004D4D4D00FDFDFD00F8F8F800F2F1 + F100E9E8E800CFCECD00B9B7B6004D4D4D004D4D4D0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000006B84DE008699DB00859FF500859F + F500859FF50096ACF7008FA2E0005E79D6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000004A63B900A1B4F600446BEC005F80EE006383 + EF005E7FEE004269EC00A1B4F6004A63B9000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00004E67BD00A7B8F300A7B8F10095A9ED004C65BB0000000000000000000000 + 0000465CAA006B79A8004F66B400374883000000000000000000000000000000 + 00000000000000000000000000004D4D4D004D4D4D00BCBCBC00E6E6E600CBCB + CB00BABAB9009A9999007A7A79004D4D4D006969690000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D3DBF9005C75CC0094ABF6008CA5 + F6008CA5F600A6B7F100647CCD00AFBFF3000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000004F68BF00A6B9F800567AF2007B97F4007F9A + F5007995F4005378F100A5B8F8004F68BF000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000506AC000A3B5F400ADBDF4009DB0F1004D62AF00D1DAF800000000000000 + 0000000000003F56A1007284C00034437B000000000000000000000000000000 + 0000000000000000000000000000515151004D4D4D004D4D4D004D4D4D004D4D + 4D004D4D4D004D4D4D004D4D4D004D4D4D000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A7B6EB00A4B7 + F800A2B6F8005E77CA00D3DBF900000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000556EC500B8C7F900597CF2007E99F500829C + F5007C97F400577BF200B7C7F900556EC5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005C77D400AABBF5009BB0F50097ACF300829BEB006D81C9005169C1000000 + 000000000000000000003D5299003D539D000000000000000000000000000000 + 0000000000000000000000000000AAAAAA004D4D4D004D4D4D004D4D4D004D4D + 4D004D4D4D004D4D4D004D4D4D004D4D4D000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000006D83CF00B2C0 + F100B1BFF1007C93E60000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005771C800B7C6F600BFCCF500C6D1F700C7D2 + F700C6D1F700BECBF500B7C6F6005771C8000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000008C9EDC00A9BAF50090A7F3007B95EE007993EA006C81C9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000AAAAAA004D4D4D004D4D4D004D4D + 4D004D4D4D004D4D4D004D4D4D00AAAAAA000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000007C93E6005771 + C9005771C8000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005B76D2005872C9005872C9005872C9005872 + C9005872C9005872C9005872C9005B76D2000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000005974CF008C9EDD00A5B7F5007490EE00718DED006E8AE800526B + C200000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005E79D600556FC500556EC400546DC1005169 + BB00546EC5000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000038477E0041486200404761003E455F003D44 + 5F003C435E003B435D003B425D003A415C000000000000000000000000000000 + 000000000000000000000000000000000000000000002F3E710045569500475C + A400435AA700435AA700435AA600435AA500445BA600435AA500445AA5004359 + A4004359A3004359A2004359A2004359A1004358A0004358A00043589F004358 + 9F00495A990044528B0043569E00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000CACACA00596FB9003E5194003E51 + 94003E5194003E5194003E5194003D5092003B4D8B00384A860034447C003241 + 77002F3E71002A3867002936620040529200C3C3C300DBDBDB00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000474E6A007A8ABF0013339F0013339F001333 + 9F0013339F0013339F0013339F007988BD000000000000000000000000000000 + 0000000000000000000000000000000000006279C9004660B4002747B000072B + A3000328A0000328A00003279F0003279F0003279E0003279D0003269C000326 + 9B0003269A000326990003269800032597000325960003259500032594000324 + 9300072895002743A2002E3D6F008EA1E1000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000005E72B6008DA1E40090A5 + EB008DA3ED008BA2ED00879EEB008199E9007E96E4007B92E000758CD7007187 + D1006E84CC00687CC0006F7FB7004D5B8A000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000048516E007B8BC10003279E0003279E000327 + 9E0003279E0003279E0003279E007B8BC0000000000000000000000000000000 + 000000000000000000000000000000000000283C80002748B5000429A8000429 + A7000429A6000429A5000429A5000328A3000328A2000328A2000328A0000328 + A00003279F0003279E0003279E0003279D0003269B0003269B0003269A000326 + 99000326980003259700495A99002D428A000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000008AA0EB00829CF5007995 + F4007290F4006989F3006082F2004C71ED004469E6003A5FDE00274DCD001D43 + C300143AB9000328A3003652AF006E7EB7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000004B5472007C8CC3000328A2000328A2000328 + A2000328A2000328A2000328A2007B8BC3000000000000000000000000000000 + 0000000000000000000000000000000000002B3E8100042CB300042CB200042C + B20003238D00506BC800042BAF00042BAD00042BAD00042BAC00042AAA000322 + 8800506AC3000429A8000429A8000429A7000429A6000429A500032184000328 + A3000328A2000328A100435EB800263873000000000028387100283871002838 + 7100283871002838710028387100283871002838710028387100283871002838 + 7100293C7A000000000000000000000000000000000000000000000000000000 + 0000000000004B62B10028387100000000000000000096AAEE0093AAF60096AC + F700829DF5007894F4006D8CF3005679EE004B6FE7004166DF002C51CE002146 + C400163BBA000328A30003269B00687CBE000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000515978007D8EC800042AAB00042AAB00042A + AB00042AAB00042AAB00042AAB007B8CC7000000000000000000000000000000 + 0000000000000000000000000000000000002D418600042DB800042DB700042D + B600032492004F6BCA00042CB400042CB300042CB200042CB100042BB0000323 + 8C004F6AC700042BAD00042BAC00042BAC00042AAA00042AAA00032187000429 + A8000429A8000429A700435FBC0028397700000000004862B8004E67BA005069 + BB004D66BA004C66BA004A64B8004660B700435EB600435DB6007D8FCC00929D + C00033447F000000000000000000000000000000000000000000000000000000 + 0000A3B4EB0035447D0034468200000000000000000097ABEE0097ADF70097AD + F700829DF5007894F4006D8CF3005679EE00000000007A94E8002C51CE002146 + C400163BBA000328A30003269B00687CBE000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000535C7C007C8ECB00042CB100042CB100042C + B100042CB100042CB100042CB1007B8DCA000000000000000000000000000000 + 0000000000000000000000000000000000002F438B000530BE00042EBC00042E + BC00032595004F6CCE00042EB900042DB700042DB7000328A200031F7E000219 + 6400374B8D00031F7C0003269A00042CB100042BB000042BAF0003238C00042B + AD00042BAC00042AAB00425FBF002A3C7C00000000004F69BF002948B1002F4D + B3002B4AB2002646B0002142AF001739AB001033A9001538AA00929EC4003749 + 8600ACBBEB000000000000000000000000000000000000000000000000000000 + 000033488F0051629F00445CA900000000000000000099ADEE0098AEF70097AD + F700829DF5007894F4006D8CF3005679EE00000000007A94E8002C51CE002146 + C400163BBA000328A30003269B00687CBE000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000555E7F007D8FCE00042DB600042DB600042D + B600042DB600042DB600042DB6007C8ECD000000000000000000000000000000 + 000000000000000000000000000000000000344A9400143ECA001740CA00153E + C900072A9E005875D7000E38C5000B36C4000934C2000D2A8A00CDCCCA00CBCA + C800C9C7C600CECCCB0003208300042EBB00042EBA00042EB90003249300042D + B700042DB600042DB6004361C7002F428500000000005C76CC004C68C7005570 + CA004B67C7004562C500405EC4003454C000546FCA006E80BC00B1BFED000000 + 0000000000000000000000000000000000000000000000000000000000004455 + 92004964BF006980CC00B4C3EF0000000000000000009AAEEF0098AEF70097AD + F700829DF5007894F4006D8CF30011172D0000000000161B2B002C51CE002146 + C400163BBA000328A30003269B00687CBE000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005A6488007E92D400042FBF00042FBF00042F + BF00042FBF00042FBF00042FBF007C90D2000000000000000000000000000000 + 000000000000000000000000000000000000364B99001D46D100224AD2002149 + D1000A2DA3005F7CDC001A43CD001640CB00153FCA0016359B00EDEDEC00ECEC + EB00EBEBEA00DBDCE20005258E000530C100042FBF00042FBF0003269800042F + BD00042EBC00042EBB004362CB0031458A0000000000607AD1005873CF00627C + D2005873D000526ECD004D6ACC004261C9004F6CCC00586FBA00000000000000 + 0000000000000000000000000000000000000000000000000000556EC3004D67 + BC003F5FC8008596D00000000000000000000000000099ADF00097ADF70097AD + F700829DF5007894F4006D8CF3001F1F1F000C0C0C001F1F1F002C51CE002146 + C400163BBA000328A30003269B00687CBE000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005E678B007F92D5000531C4000531C3000531 + C3000531C3000531C3000531C4007D91D4000000000000000000000000000000 + 000000000000000000000000000000000000394F9E00264FD8002C53D8002C53 + D7000D31A8006884E100254DD400214AD2002049D2001D45CC001639AF000826 + 8B004E67BA001034AC00113AC5000F3AC8000C37C7000A35C50004279C000632 + C3000531C200042FC0004262CF0033478F00000000006580D700637ED6006F88 + DA00647FD700607BD6005A76D4004E6CD1004766CF005C77D2005871C5000000 + 000000000000000000000000000000000000CCD6F700455EB10044599E003255 + CA00385ACB008392C20000000000000000000000000098ACF00094ABF60096AC + F700829DF5007894F4006D8CF3003A405600333333003F4454002C51CE002146 + C400163BBA000328A30003269B00687CBE000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000606A8F008295D800113CCB00153FCC00153F + CC00153FCC00153FCC00123DCC008094D7000000000000000000000000000000 + 0000000000000000000000000000000000003D55A800375EE2004166E3004267 + E3001338B0007691E9003B61E000375DDE00355CDD00345BDD003057DB000F33 + AB006C87E4002951D800274FD700264ED6001834940017349400072074001330 + 9200122F91001338B3004869D800384E9800000000006C86E0007891E300889E + E6007E96E4007992E300748EE2006984E0006480DE005977DC006580D8005269 + B900485EA600445BAA004359A600455BA5005570CC004F6FDA003459D5002F55 + D40095A5D9004960AE000000000000000000000000008EA4EE00859FF50089A2 + F600859FF5007E99F5007592F4006283F000597AE9005072E1003E60D2003457 + C9002C4EC0001C3DAC003652AF007181BA000000000000000000000000000000 + 0000000000008282820080808000828282000000000000000000000000000000 + 0000000000000000000000000000657097008C9EE000365CDB003F64DC003F64 + DC003F64DC003F64DC00365CDB008A9DDF000000000000000000000000000000 + 0000000000000000000000000000000000004059AD003F66E7004B70E8004D71 + E900163BB3007E98ED00456AE5004368E4004166E3003F64E2003C62E1001237 + AF00748FE900345BDD003259DC003158DC00B6B6BA00BFBDBB00BDBBB900BAB8 + B600AEAEB200173494004C6DDC003A509D00000000006E89E5007E96E70094A8 + EB008BA1EA00869DE8008199E8007690E600718BE5006B86E3006683E3006B86 + E300607EE2005270D3005A76D5005A78DE004A6CDE003158D900264FD8006D88 + E2008090C500879CE1000000000000000000000000006E84D0008AA1EE0090A6 + F00091A7F0008FA5F0008CA3EF00879FED00849BE8008097E3007B91DA00788D + D400758ACF007083C5007283BE00576798000000000000000000000000000000 + 0000000000008080800040404000808080000000000000000000000000000000 + 00000000000000000000000000006973990091A4E300466AE1005475E4005475 + E4005475E4005475E400466AE1008FA1E1000000000000000000000000000000 + 000000000000000000000000000000000000425CB200486DEC004D6CD2003D55 + A600122C80005E6FA8003851A4004362CA004B70E800496EE700456AE600153A + B3007A95EC003F64E3003E64E3003C62E200D7D5D400CDCCCA00CBCAC800C7C5 + C300CECCCB001F3B99005071E0003D54A200000000006D89E7007C96EA0097AB + EE009DB0F00093A8EE008DA3ED00839BEC007D97EB007792E9006D89E8006381 + E7006482E700607FE6005E7DE6005072E3004065E1003D62E100335ADF00A8B6 + E400566BB80000000000000000000000000000000000718BE2005771C8005771 + C8005771C8005771C8005771C800556EC400516ABD004E66B600485EA7006D71 + 7D00717170005E616D003A4A83005068B8000000000000000000000000000000 + 0000000000008080800045454500808080000000000000000000000000000000 + 00000000000000000000000000006B769E0096A8E5005879E7006684E9006684 + E9006684E9006684E9005879E70094A5E4000000000000000000000000000000 + 0000000000000000000000000000000000004760B700587CF2005166AD00D7D5 + D400CBCAC800C9C7C600C7C5C300465DA9006283F2006082F1005C7EEF001B40 + BB008AA2F3005477ED005377ED005175EC004361C7004261C70014339B003D5C + C5003C5CC5004166E2005678E8004259AC00000000005F80EE00A0B3F500ACB9 + E700B9C6F100A5B7F500A0B3F5009DB1F40097ACF40092A9F400869FF200819B + F1007D97F100728FF0006C8AF0006786EF005B7DED005074EC007F99F0005C76 + CC00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000008080 + 8000CCCCCC008080800000000000000000000000000000000000000000000000 + 000000000000808080005050500080808000000000000000000000000000717F + AF00889FE90091A6EA009AACEB00A8B8ED00B0C0F4008BA3F20087A0F20087A0 + F20087A0F20087A0F200849EF200AFBFF4009DAEE90097AAE90090A4E8008E9A + C200616D9500CDD7F70000000000000000004861B8006082F2005E73BB00E4E5 + EA00ECECEB00EBEBEA00EAEAE9005269B4006D8CF3006B8AF3006888F3001E43 + BE0092A9F5006082F1005F81F1005C7EF000597CEF00577AEF001A3FBB005175 + ED005074EC004A6FEB00597BEB00455DB10000000000859FF400A6B6E8005E76 + C700768BD200BDCAF600A4B7F700A8BAF700A4B7F7009FB3F60094ABF6008EA6 + F50088A1F500809BF5007A96F4007592F4006384F300839DF400B3C1ED00D3DB + F900000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000008080 + 8000D1D1D1008080800000000000000000000000000000000000000000000000 + 000000000000808080005555550080808000000000000000000000000000BAC6 + F40093A2D8008BA4F5007693F30092A9F500A0B4F6009AAFF60098AEF60098AE + F60098AEF60098AEF60097ADF6009FB3F6007E99F4007592F3008CA4F5006571 + 9900869CE0000000000000000000000000004962B9006888F3007D97F0007086 + D000213FA3008D9DD2006A81CF007893F0007894F4007794F4007391F4002146 + BE009BB0F7006C8BF3006A8AF3006888F3006586F3006384F3001D42BE005D7F + F1005C7FF1005478F0005C7EEF004761B70000000000A3B3E8006078C800B4C1 + F2005974CF007D91D600BBC9F800A2B6F800AEBFF800ACBDF800A1B5F7009CB1 + F70097ADF7008BA4F600859FF5007E99F50097ADF700B6C2EE006A80CD000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000008080 + 8000D5D5D5008080800000000000000000000000000000000000000000000000 + 0000000000008A8A8A0059595900808080000000000000000000000000000000 + 00007684B5009BA9D90099AFF7009AAFF700A6B9F800A7B9F800A7B9F800A7B9 + F800A7B9F800A7B9F800A7B9F800A6B9F80087A1F50099AFF70092A0D100879C + E100000000000000000000000000000000004B65BC00708EF40089A2F60097AD + F70097ADF70095ACF70093AAF60090A8F6008EA6F6008CA5F60088A2F60087A1 + F500859FF500829CF500809BF5007F9AF5007B97F4007995F4007894F4007491 + F4006F8DF3006283F2006987ED004B65BC000000000000000000000000000000 + 00000000000000000000647EDA0096A8E300C1CEF800C3D0FA00B1C1F900A9BB + F800A5B8F800ABBDF800BAC9F900C1CCF400627BCE00BBC9F500000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000008080 + 8000D8D8D80084848400C6C6C600000000000000000000000000000000000000 + 0000C6C6C6009898980067676700868686000000000000000000000000000000 + 000000000000BAC6F4007683B400B3C3F900B2C2F900BDCBFA00C0CEFA00C0CE + FA00C0CEFA00C0CEFA00BDCBFA00B2C2F9009DA9D5006A76A000889CE2000000 + 0000000000000000000000000000000000004D66BF007995F400829CF50091A8 + F6009AAFF70099AFF70097ADF70096ACF70094ABF60092A9F6008FA7F6008DA5 + F6008BA4F60088A2F60086A0F500849EF500819BF5007F9AF5007C97F4007592 + F4006D8CF3005E80F2006C86E0004F6AC5000000000000000000000000000000 + 00000000000000000000000000005874CF00657DCD008497DB00B9C7F300C1CD + F600C0CDF600A7B6E700889AD900667FCC000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000009090 + 9000C3C3C3008E8E8E008A8A8A00000000000000000000000000000000000000 + 00008A8A8A00B5B5B5006E6E6E00969696000000000000000000000000000000 + 00000000000000000000BAC6F400A1AEDA00B2C2F900B6C6F900CBD6FB00CBD6 + FB00CBD6FB00C8D4FB00B8C7F900B2C2F9006C77A100889DE200000000000000 + 0000000000000000000000000000000000007990E200839CF0007E99F5007C97 + F400839EF500839EF500839EF500829CF500819BF5007F9AF5007C97F4007B97 + F4007A96F4007794F4007592F4007491F400718FF4006F8DF3006C8BF3006485 + F3005F81F2006485F3005C73C70091A5EB000000000000000000000000000000 + 0000000000000000000000000000000000009FB1F0006B85DE005771C8005771 + C8005771C800647EDA0093A8ED00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000B0B0 + B000A6A6A600B0B0B0008B8B8B00868686000000000000000000000000008686 + 860092929200ACACAC0078787800BBBBBB000000000000000000000000000000 + 00000000000000000000000000007482B2009EABD900B4C4F900D1DBFB00D5DE + FC00D5DEFC00C5D1FA00B6C6F9009AA8D5008A9DE30000000000000000000000 + 000000000000000000000000000000000000000000007991E300506AC3005069 + C0005069C0005069C0005069C0005069C0005069C0005069C0005069C0005069 + C0005069C0005069C0005069C0005069C0005069C0005069C0005069C0005069 + C0005069C000506AC30000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D3D3D300D7D7D700DFDFDF00CECECE00AEAEAE009D9D9D0099999900C0C0 + C000C5C5C500B7B7B700D3D3D300000000000000000000000000000000000000 + 000000000000000000000000000000000000BAC6F4007381B200C1CEFA00C1CE + FA00C1CEFA00A7B2D900717DA7008A9EE3000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000080808000B3B3B300E1E1E100F3F3F300EFEFEF00E9E9E900CDCD + CD00A7A7A7008080800000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000BAC6F300A6B1DA00B3C3 + F900B3C3F900737EA8008B9EE400000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000B0B0B0008A8A8A008080800080808000808080008A8A + 8A00B0B0B0000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000007181B0009DAA + D8009CA9D7008B9FE40000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000CED8F7000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000D3D3D300C2C2 + C2003D4E860029355F0027335E0027335E0027335E0027335E0027335E002733 + 5E0027335E0027335E0027335E0027335E0029355F003D4E860098A7D800C2C2 + C200D4D4D4000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000293973008C99C6008897C9004963B7001F3E + A60003269C001F3EA6004963B7006A7EC2008C99C60029397300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000B9C6F1002C3C + 75003D55A4003D55A4003D55A4003D55A4003D55A4003D55A4003D55A4003D55 + A4003D55A4003D55A4003D55A4003D55A4003D55A4003D55A40040518F00AFBD + EC00000000000000000000000000000000000000000000000000000000004053 + 93003F64DE002A54DF004368E5007D97ED0099ADF0009EB1F000849BE700768F + E2006984DB00506CCB004360C2003553B700213EA0003E57A900415187000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005871C0003D54A2002C4082005165A9004A65 + BD000328A3004661BC005165A9004A598E002C3C7A005871C000000000000000 + 000000000000000000000000000000000000D6D6D600384A880023315C002331 + 5C0023315C0023315C0023315C0023315C0023315C0023315C0023315C002331 + 5C0023315C0023315C0023315C0023315C0023315C0023315C0023315C002331 + 5C0023315C0023315C00C0C0C000CECECE000000000000000000465DAD004055 + 99001336AC001034AB001034AB001034AB001034AB001034AB001034AB001034 + AB001034AB001034AB001034AB001034AB001034AB001336AC002C4BB4003D54 + A300000000000000000000000000000000000000000000000000000000002B3D + 79001945D7001F42B5005466A300A7B7ED00A3B5F100AABAF2007781A4009AA3 + C30096A7E0004D6ACB0038509E004B5A8C00576CB3001B3898004A5EA1000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000042528C00516B + C200042AAA00506AC40042528C008397DE000000000000000000000000000000 + 0000000000000000000000000000000000000000000026356E005A6CAB00566A + B000566AB000566AB000566AB000566AB000566AB000566AB000566AB000566A + B000566AB000566AB000566AB000566AB000566AB000566AB000566AB000566A + B000566AB000566AB00000000000000000000000000000000000324791003E59 + B400042BAC00042BAC00042BAC00042BAC00042BAC00042BAC00042BAC00042B + AC00042BAC00042BAC00042BAC00042BAC00042BAC00042BAC001338B1002D40 + 8100000000000000000000000000000000000000000000000000000000002D3E + 7D000938D4001E378A004864C100CED6F000A3B5F100AABAF2007E8EC40090A0 + D700C7CFEB004D6ACB002F407900384F9D00A9B3D50013319500495EA4000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000034488D005771 + C600042EB9005771C60034488D00000000000000000000000000000000000000 + 000000000000000000000000000000000000000000002D4289005771CA00173F + C500042FC000042FC000042FC000042FC000042FC000042FC000042FC000042F + C000042FC000042FC000042FC000042FC000042FC000042FC000042FC000042F + C000042FC0004F6DD30000000000000000000000000000000000364B95003F5C + BD00042DB800042DB800042DB8001037BB001037BB001037BB001037BB001037 + BB001037BB001037BB001037BB000D35BB00042DB800042DB8001037BB003246 + 8B00000000000000000000000000000000000000000000000000000000003143 + 84000535D4001E378A004066E500CED6F000A3B5F100AABAF2008BA1E9007A92 + E300C7CFEB004D6ACB002F4079002D4CB400A9B3D50013319500495EA4000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000374C93005873 + CB00042FC0005873CB00374C9300000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000324793005873D0001842 + CF000533CC000533CC000533CC000533CC000533CC000533CC000533CC000533 + CC000533CC000533CC000533CC000533CC000533CC000533CC000533CC000533 + CC000533CC005171DB0000000000000000000000000000000000384E9900405D + C200042FBF00042FBF00042FBF00405EC200405EC200405EC200405EC200405E + C200405EC200405EC200405EC2003859C800042FBF00042FBF00113AC2003549 + 9000000000000000000000000000000000000000000000000000000000003346 + 87000535D4001E378A004066E500CED6F000A3B5F100AABAF2008BA1E9007A92 + E300C7CFEB004D6ACB002F4079002D4CB400A9B3D50013319500495EA4000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000003A509A005974 + D0000431C7005974D0003A509A00000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000364C9D00607CDA002851 + DC001643D9001643D9001643D9001643D9001643D9001643D9001643D9001643 + D9001643D9001643D9001643D9001643D9001643D9001643D9001643D9001643 + D9001643D9005C7BE400000000000000000000000000000000003A509D00405F + C7000430C4000430C4000430C400374C9700374C9700374C9700374C9700374C + 9700374C9700374C9700374C9700405FC7000430C4000430C400103AC700374C + 9700000000000000000000000000000000000000000000000000000000003447 + 8B000535D4001E378A004066E500CED6F000A3B5F100AABAF2008BA1E9007A92 + E300C7CFEB004D6ACB002F4079002D4CB400A9B3D50013319500495EA4000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000004057A7005B77 + DA000636D6005B77DA004057A700000000000000000000000000000000000000 + 000000000000000000000000000000000000000000003E57AF00748FEA004F74 + F000426AEF00426AEF00426AEF00426AEF00426AEF00426AEF00426AEF00426A + EF00426AEF00426AEF00426AEF00426AEF00426AEF00426AEF00426AEF00426A + EF00426AEF007B97F400000000000000000000000000000000003F57A7004162 + D1000434D1000434D1000434D1003C54A1000000000000000000000000000000 + 000000000000000000003C54A1004162D1000434D1000434D100113ED3003C54 + A10000000000000000000000000000000000000000000000000000000000384D + 94000535D4001E378A004066E500CED6F000A3B5F100AABAF2008BA1E9007A92 + E300C7CFEB004D6ACB002F4079002D4CB400A9B3D50013319500495EA4000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000435BAE005F7D + E0000E3EDF005F7DE000435BAE00000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000405AB1007D97EB006384 + F300587CF200587CF200587CF200587CF200587CF200587CF200587CF200587C + F200587CF200587CF200587CF200587CF200587CF200587CF200587CF200587C + F200587CF20089A2F600000000000000000000000000000000004058AC004567 + D6000E3DD8000E3DD8000C3BD8003F57A8000000000000000000000000000000 + 000000000000000000003F57A8004567D6000E3DD8000E3DD8001946DA003F57 + A800000000000000000000000000000000000000000000000000000000003A4F + 98000535D4001E378A004066E500CED6F000A3B5F100AABAF2008BA1E9007A92 + E300C7CFEB004D6ACB002F4079002D4CB400A9B3D50013319500495EA4000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000465FB4006381 + E5001747E7006381E500465FB400000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000425BB300869DED007894 + F4006E8DF3006E8DF3006E8DF3006E8DF3006E8DF3006E8DF300637EDB00637E + DB00637EDB00637EDB006C8AF0006E8DF3006E8DF3006E8DF3006E8DF3006E8D + F3006E8DF30097ADF70000000000000000000000000000000000435CAF004B6C + DB001E4BE1001D4AE0001947E000425AAD000000000000000000000000000000 + 00000000000000000000425AAD004A6CDB001E4BE1001E4BE1002853E200425A + AD00000000000000000000000000000000000000000000000000000000003C51 + 9C000535D4001E378A004066E500CED6F000A3B5F100AABAF2008BA1E9007A92 + E300C7CFEB004D6ACB002F4079002D4CB400A9B3D50013319500495EA4000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000004B65BC006B88 + EB002755EE006B88EB004B65BC00000000000000000000000000000000000000 + 000000000000000000000000000000000000000000003B519A00465898003A4D + 9000364A8E00364A8E00364A8E00364A8E00364A8E00364A8E00C7CCDD009BA0 + AF00999EAD005967980035488A00364A8E00364A8E00364A8E00364A8E00364A + 8E00364A8E00465898003D55A5000000000000000000000000004862B9005576 + E5003D66EE003D66EE00325DED004761B9000000000000000000000000000000 + 000000000000000000004761B9005475E5003D66EE003D66EE00436AEE004761 + B900000000000000000000000000000000000000000000000000000000004157 + A3000535D4001E378A004066E500CED6F000A3B5F100AABAF2008BA1E9007A92 + E300C7CFEB004D6ACB002F4079002D4CB400A9B3D500133195004A5FA4000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000004C66BD006E8B + EB00305CEE006E8BEB004C66BD00000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006179CC005A75D1005A75 + D1005A75D1005A75D1005A75D1005A75D1005A75D1005A75D100D0D7ED00D0D6 + E700CED4E5006A7FC7005873CD005A75D1005A75D1005A75D1005A75D1005A75 + D1005A75D1005A75D1004B5FA5000000000000000000000000004A64BB005A7B + E8004D72F1004D72F1004068F0004A64BB000000000000000000000000000000 + 000000000000000000004A64BB00597AE8004D72F1004E73F1005176F1004A64 + BB0000000000000000000000000000000000000000000000000000000000435A + A7000535D4001E378A004066E500CED6F000A3B5F100AABAF2008BA1E9007A92 + E300C7CFEB004D6ACB002F4079002D4CB400A9B3D500133195004A5FA5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000004D67BE00728E + EC003862EF00728EEC004D67BE00000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000738CE000466AE2003B61 + E0003B61E0003B61E0003B61E0003B61E0003B61E0003B61E0004665CE005773 + D3005773D3003557C9003A5FDC003B61E0003B61E0003B61E0003B61E0003B61 + E0003B61E0003B61E000566AB3000000000000000000000000004B65BC005F7F + E8005C7FF2005C7FF2004D72F1004B65BC000000000000000000000000000000 + 000000000000000000004B65BC005D7DE8005C7FF2005D80F2005F81F2004B65 + BC0000000000000000000000000000000000000000000000000000000000455C + AB000535D4001E378A004066E500CED6F000A3B5F100AABAF2008BA1E9007A92 + E300C7CFEB004D6ACB002F4079002D4CB400A9B3D500133195004A5FA5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000005069C0007B95 + ED004A70F0007B95ED005069C000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000B8C6F6009BB0F70093AA + F60093AAF60093AAF60093AAF60093AAF60093AAF60093AAF60093AAF60093AA + F60093AAF60093AAF60093AAF60093AAF60093AAF60093AAF60093AAF60093AA + F60093AAF60093AAF6006C80C9000000000000000000000000004D67BE006A87 + E9007C97F4007C97F4006686F3004D67BE0000000000000000005A74CB004D67 + BE004D67BE004D67BE004D67BE00728DEA007D98F5007D98F5007F9AF5004D67 + BE004D67BE004D67BE004D67BE005A74CB000000000000000000000000004961 + B3000535D4001E378A004066E500CED6F000A3B5F100AABAF2008BA1E9007E95 + E200C7CFEB004D6ACB002F4079002D4CB400A9B3D500133195004A5FA5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000516AC1007D97 + EE005176F1007D97ED00516AC100000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D7DFF900D5DEFC00D5DE + FC00D5DEFC00D5DEFC00D5DEFC00D5DEFC00D5DEFC00D5DEFC00D5DEFC00D5DE + FC00D5DEFC00D5DEFC00D5DEFC00D5DEFC00D5DEFC00D5DEFC00D5DEFC00D5DE + FC00D5DEFC00D5DEFC007387CC000000000000000000000000004E68BF006E8A + EA008BA4F6008AA3F6007391F4004E68BF0000000000000000004E68C100607A + D0004E71E7006382E900738EEA0089A2F4008CA5F6008CA5F6008CA5F600738D + EA006483E9005A7BE800607AD0004E68C1000000000000000000000000004C65 + B8000535D4001E378A004864C100CED6F000A3B5F100AABAF2007E8EC40090A0 + D700C7CFEB004D6ACB002F407900384F9D00A9B3D500133195004A5FA5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000526BC200809A + EE005A7DF200809AEE00526BC200000000000000000000000000000000000000 + 000000000000000000000000000000000000000000007185CC007589CE007589 + CE007589CE007589CE007589CE007589CE007589CE007589CE007589CE007589 + CE007589CE007589CE007589CE007589CE007589CE007589CE007589CE007589 + CE007589CE007589CE005870C6000000000000000000000000004F69C000738E + EB009BB0F7009AAFF700809BF5004F69C0000000000000000000BFCDF600516A + C3005A78E0006384F300819BF50098AEF7009CB1F7009CB1F7009CB1F700829D + F5006686F3006183F200516AC300BFCDF6000000000000000000000000004E66 + BC000535D4001F42B5005466A300A7B7ED00A3B5F100AABAF2007882A5009AA3 + C30096A7E0004D6ACB0038509E004B5A8C00576CB300133195004A5FA5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00009FAFE9005671CC0000000000000000000000000000000000546EC50088A0 + EF006B8AF30088A0EF00546EC500000000000000000000000000000000005A72 + C600A1B1E900546EC50000000000000000000000000000000000000000000000 + 0000000000000000000000000000C7C5C500AFADAC00898685007D7A78007D7A + 78007D7A78007D7A78007D7A7800AFADAC008F8D8B0000000000000000000000 + 0000000000000000000000000000000000000000000000000000516BC2007B95 + EC00BAC9FA00B9C8F90097ADF700516BC2000000000000000000000000000000 + 000092A5EC00738EEB0098AEF700B4C4F900BBCAFA00BBCAFA00BAC9FA0097AD + F7007892EC005A73C6000000000000000000000000000000000000000000536D + C4000425940015349B002C469F005B6CA500727FA9007682A9006070A2005666 + 9F004B5D990035498D002A3F86001F357E00091F6A000D226800344374000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00008AA1EC006B81CD00AFBEF300000000000000000000000000556FC6008BA2 + F0007290F4008BA2F000556FC600000000000000000000000000000000007589 + D200879FEF00556FC60000000000000000000000000000000000000000000000 + 0000000000000000000000000000E0DEDE00D7D5D500D3D1D000D3D1D000D3D1 + D000D3D1D000D3D1D000D3D1D000D5D3D2009C9A990000000000000000000000 + 0000000000000000000000000000000000000000000000000000526CC3007A95 + EC00C4D1FA00C3D0FA009CB1F700526CC3000000000000000000000000000000 + 0000000000006179CB00809AEE00ABBDF800C9D5FB00C9D5FB00C1CEFA007B96 + EE006179CB007991E20000000000000000000000000033437C0027376D002737 + 6D0027376D0027376D0027376D0027376D0027376D0027376D0027376D002737 + 6D0027376D0027376D0027376D0027376D0027376D0027376D0027376D002737 + 6D00374780000000000000000000000000000000000000000000000000000000 + 00007993EE00748EE5005870C8000000000000000000000000005670C7008FA6 + F1007A96F4008FA6F1005670C70000000000000000000000000093A7ED007791 + E7007C96EE005E79D50000000000000000000000000000000000000000000000 + 0000000000000000000000000000DEDDDC00E4E3E200E4E3E200E4E3E200E4E3 + E200E4E3E200E4E3E200E4E3E200E4E3E2009A97960000000000000000000000 + 0000000000000000000000000000000000000000000000000000536DC600738E + E900AFC0F900B0C0F9008FA7F600536DC4000000000000000000000000000000 + 0000000000006883DC00637BCD00869FF200BAC9FA00BAC9FA00A7B9F8006179 + CC006883DC00000000000000000000000000000000002E3F7B004662BF004F6C + CD005F7DE3006685ED006988F1006382EB005F7FE8005B7BE4005474DD005070 + D9004C6CD5004564CC004463CA004766CC004D6BD100506ED400516FD500536F + CC00364A91000000000000000000000000000000000000000000000000000000 + 0000819AEB006183F2005579F100486DE8004469E8004469E8005174E9006585 + F1007894F4006484F1005074E900466BE8004469E8004A6EE8004E73EF006586 + F3007992E500607AD70000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000CED8F7005770 + C8006D8AEB006D8AEB006A83DA00C1CDF6000000000000000000000000000000 + 00000000000000000000000000005973CF007390F2007592F2006E86D6000000 + 000000000000000000000000000000000000000000003E539B00566EBF004463 + CA005B7AE2007490EE007E99F3006987EC005D7DE7005273E2003B60D8002F54 + D200244ACB000C35BE000831BA001239BE00254AC6002B50C9003256CD005D77 + CE004458A0000000000000000000000000000000000000000000000000000000 + 000095A8E600A8B9F300AABBF300A5B7F300A4B6F300A4B6F300A9B9F300AFBF + F500B1C1F500AEBEF500A8B9F300A5B7F300A4B6F300A6B8F300AABAF300A8B9 + F30095A8E600607AD70000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000C1CD + F6005670C7005670C700647ED900000000000000000000000000000000000000 + 0000000000000000000000000000000000006580DC006681DD005D77CF000000 + 000000000000000000000000000000000000000000006079C700566CB6005D77 + CB006D87DD00748EE5007892E800708BE3006E88E1006A84DE00637DD8005E79 + D5005B76D200536DCA00516CC9005570CC005B75CE005E78D1005E78D100556B + B2006880D2000000000000000000000000000000000000000000000000000000 + 00005872C9005872C9005872C9005872C9005872C9005872C9005872C9005872 + C9005872C9005872C9005872C9005872C9005872C9005872C9005872C9005872 + C9005872C900879CE90000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000005972CA005972CA00C1CDF6000000 + 0000000000000000000000000000000000000000000000000000677FD1005068 + BC005068BC005068BC005068BC005068BC005068BC00485EA900485EA900485E + A900485EA9005068BC005068BC005068BC005068BC005068BC005068BC006E85 + D300000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000879BE00044589E004458 + 9E00475A9E000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000CBCBCB00C7C7C70095A4D9002B3A6A002B3A6A002B3A6A002B3A6A002B3A + 6A002B3A6A002B3A6A002B3A6A002B3A6A003040790095A4D900C5C5C500D3D3 + D300000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000B2BFEE002D407D003758C6003758C6003758C6003758C6003758 + C6003758C6003758C6003758C6003758C6003C53A1002E407C00B1BFED000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000DADADA00C7C7C700C0C0 + C000C0C0C000253566002A396E00AFBCE400C8C8C800D5D5D500DEDEDE000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000031458E003E58AF003358D600042CB300042CB300042CB300042CB300042C + B300042CB300042CB300042CB300042CB3000D34B9003358D6003E58AF00BAC6 + F200000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000032458D00DDE2 + F600DFE4F700DFE4F700E0E5F700E0E6F700E0E6F700E1E7F800E3E8F800E3E8 + F800E4E9F800E4E9F800E5EAF800E5EAF800E6EBF800E7EBF900E7EBF900E8EC + F900E9EDF900E9EDF90032458D00000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000B9C6 + F1002C3F7D003E58AE003F58AA00425287000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000BAC7 + F2004059B200345AD9000D36BE00042DB700042DB700042DB700042DB700042D + B700042DB700042DB700042DB700042DB700042DB7000D36BE00345AD9003348 + 9100BAC7F2000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000035499400D8DF + F600C9D2F200C9D2F200CAD3F200CCD5F400CDD6F400CED7F400CFD7F400D0D8 + F400D0D8F400D2DAF500D3DBF500D4DBF500D6DDF500D6DDF500D7DEF500D9E0 + F600DAE0F600DBE1F70035499400000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000B9C6F1002E42 + 81004A5D9D000F309D000F2F9A003F58AA003044890000000000000000000000 + 0000000000000000000000000000000000000000000000000000BCC8F300354A + 95003359DA000D37C200042EBC00042EBC00042EBC00042EBC00042EBC00042E + BC00042EBC00042EBC00042EBC00042EBC00042EBC00042EBC000D37C200415B + B500354A9500BCC8F30000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000384E9A00D5DC + F600C3CEF300C4CFF300C4CFF300C5D0F300C5D0F300C6D0F300C8D2F400C9D3 + F400C9D3F400CBD4F400CCD5F400CCD5F400CED7F500CFD8F600D0D9F600D2DA + F600D2DAF600D3DBF600384E9A00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000304285004B5F + A1003F5AB70003269B00032698000F2F9A004453880031458A00000000000000 + 00000000000000000000000000000000000000000000384F9E00435DBA00335A + DE000431C5000431C5000431C5000431C5000431C5000431C5000431C5000431 + C5000431C5000431C5000431C5000431C5000431C5000431C5000431C5000D39 + CB00335ADE00435DBA00BDC9F400000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000003F56AA00D7DF + F9000537DD00C6D1F700C6D1F700C6D1F700C5D1F7000537DD00C5D1F700C4D0 + F700C4D0F700C4D0F700C4D0F700C3CFF7000537DD00C3CFF700C3CFF700C4D0 + F7000537DD00C4D0F7003F56AA00000000000000000000000000000000000000 + 000000000000000000000000000000000000BAC7F20035498F003E5BBE000F33 + AB000429A50003279F0003279D0003269B000F2F9A003F58AA00445489000000 + 000000000000000000000000000000000000BDC9F400435FBD00335BE0000D3A + CE000432CB000432CB000432CB000432CB000432CB000432CB000432CB000432 + CB000432CB000432CB000432CB000432CB000432CB000432CB000432CB000432 + CB000D3ACE00335BE0003A52A100BDC9F4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000425AB000D8E0 + FA000538E500C7D3F900C7D3F900C7D3F900C6D2F9000538E500C6D2F900C6D2 + F900C6D2F900C6D2F900C6D2F900C5D1F9000538E500C5D1F900C4D0F800C4D0 + F8000538E500C4D0F800425AB000000000000000000000000000000000000000 + 0000000000000000000000000000BAC7F200374B93005165AD001035B100042A + AA00A0AEDE000328A20003279F0003279D00032698000F2F9A003F58AA003247 + 8B00000000000000000000000000000000004159AD00345CE3000D3BD3000433 + CF000433CF000433CF000433CF000433CF000433CF000433CF000433CF000433 + CF000433CF000433CF000433CF000433CF000433CF000433CF000433CF000433 + CF000433CF000D3BD3004561C0004159AD000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000455EB600DAE2 + FC00053AEB00CAD5FB00CAD5FB00C9D5FB00C9D5FB00053AEB00C8D4FB00C8D4 + FB00C8D4FB00C7D3FB00C7D3FB00C7D3FB00053AEB00C7D3FB00C6D2FA00C6D2 + FA00053AEB00C6D2FA00455EB600000000000000000000000000000000000000 + 0000000000000000000000000000394E9700546AB2004A67CA000C32B200052C + AD0099A6D000A0AEDD000328A20003279F0003269B00032698000F2F9A004555 + 890033478C000000000000000000000000004159A9000535D9000535D9000535 + D9000535D9000535D9000535D9000535D9000535D9000535D9000535D9000535 + D9000535D9000535D9000535D9000535D9000535D9000535D9000535D9000535 + D9000535D9000535D9003760E8004159A9000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000004861B900DEE5 + FC000F42EC00D0DAFB00D0DAFB00CFD9FB00CFD9FB000F42EC00CED8FB00CED8 + FB00CED8FB00CDD8FB00CDD8FB00CDD8FB000F42EC00CCD7FB00CCD7FB00CCD7 + FB000F42EC00CBD6FB004861B900000000000000000000000000000000000000 + 000000000000BDC9F4003D54A0005C78D500395BCB002B4FC600A7B5E5001439 + B8000C32B200939FC600FFFFFF00A0AEDD0003279F0003279D0003269B000F2F + 9A003F58AA0046568A000000000000000000435BAF000537DD000537DD000434 + D200042CB100042CB100042EB9000537DD000537DD00042CB1000537DD000537 + DD000430C400042CB100042CB1000430C4000537DD00042CB1000537DD000537 + DD000537DD000537DD00365FE900435BAF0000000000364C97002B3C76002B3C + 76002B3C76002B3C76002B3C76002B3C76002B3C76002B3C76002B3C76002B3C + 76002B3C76002B3C76002B3C76002B3C76002B3C76002B3C76002B3C76002B3C + 76002B3C76002B3C7600000000000000000000000000000000004963BA00DFE6 + FC001949ED00D3DCFB00D3DCFB00D3DCFB00D3DCFB001A4AED00D2DBFB00D2DB + FB00D2DBFB00D2DBFB00D2DBFB00D1DBFB001A4AED00D1DBFB00D1DBFB00D0DA + FB001A4AED00CFD9FB004963BA00000000000000000000000000000000000000 + 0000BDC9F4003F57A3005F76C0004767D2003A5CCD003255C900FFFFFF00A7B5 + E5001439B80004269800939FC600FFFFFF000328A20003279F0003279D000326 + 98000F2F9A003F58AA0033488D0000000000455EB300093BE300093BE2003B5A + C000FFFFFF00FBFBFB00BCC3DD00093BE200093BE200F2F2F200093BE2000835 + CC007F90CB00FFFFFF00F5F5F5007F90CB00093BE200F2F2F200093BE200093B + E200093BE200093BE2003861EB00455EB300000000003F559E004E6CD000274D + CD002B50CD002B50CD002B50CD002C51CD002C51CD002C51CD002C51CD002C51 + CD002C51CD002C51CD002C51CD002C51CD002C51CD002B50CD002B50CD002A4F + CD00274DCD004E6CD000000000000000000000000000000000004A64BB00E2E8 + FD002251ED00D7DFFC00D6DFFC00D6DFFC00D6DFFC002453EE00D6DFFC00D6DF + FC00D5DEFC00D5DEFC00D5DEFC00D5DEFC002453EE00D4DDFC00D4DDFC00D4DD + FC002352ED00D2DBFB004A64BB00000000000000000000000000000000000000 + 00004259AA006379C4006883DF004A6AD5004364D2003B5DCD00A5B0D300FFFF + FF00A7B5E5000C32B20004269800939FC600A0AEDD000328A20003279F000326 + 9B00032698000F2F9A0046568B003A4F99004A64BB001949ED001B4BED001B4B + ED001B4BED003761EF00C4D0F9001B4BED001B4BED00FFFFFF001B4BED00C2C9 + E2007F9AF5001B4BED001B4BED00708EF4001B4BED00F5F5F5004F6CCE003A5A + C3001741CF001B4BED004068F0004A64BB00000000005A75D1005771C8006472 + A8006A80CA005771C8005771C8005771C8005771C8005771C8005771C8005771 + C8005771C8005771C8005771C8005771C8005771C8005771C8005771C8007684 + B4006472A8005771C800000000000000000000000000000000004D66BE00E5EA + FD003761EF003862EF003862EF003862EF003862EF003862EF003862EF003862 + EF003862EF003862EF003862EF003862EF003862EF003862EF003862EF003862 + EF003761EF00D8E0FC004D66BE00000000000000000000000000BECCF500465E + B2007590E7006D88E5006985E200BDC7E700FFFFFF00B9C5EE003B5DCD003250 + B600A5B0D300A7B5E5001439B8000C32B200939FC600FFFFFF00A0AEDD000327 + 9F000F31A100405AB000364B9300000000004B65BD002050ED002352ED00315D + EF00E3E9FD00FFFFFF00C8D4FB002352ED002352ED00FFFFFF002352ED00FBFB + FB005A7DF2002352ED002352ED005A7DF2002352ED00FFFFFF00C9D5FB00EDF0 + FA0092A0D0002352ED00446BF0004B65BD000000000000000000000000005A74 + C7002247C100042FBF00042FBF00042FBF00042FBF00042FBF00042FBF00042F + BF00042FBF00042FBF00042FBF00042FBF00042FBF00042FBF00042FBF004A60 + AA005A74C70000000000000000000000000000000000000000004E68BF00E6EC + FD004169F000E1E7FD00E1E7FD00E1E7FD00E1E7FD00436BF000E0E6FC00E0E6 + FC00E0E6FC00DFE6FC00DFE6FC00DFE6FC00436BF000DEE5FC00DEE5FC00DEE5 + FC004169F000DBE2FC004E68BF000000000000000000BECCF5004961B7006D84 + D0007892E9007892E800728CE600617BCF00BAC3E100FFFFFF004364D2003B5D + CD003250B600FFFFFF00A7B5E5001439B80004269800939FC60099A5CE000F32 + A700415BB5004B5B950000000000000000004C66BD002957EE002C59EE00BCCA + FA007D98F500486FF0002C59EE002C59EE002C59EE00FFFFFF002C59EE00D8E0 + FC0088A2F6002C59EE002C59EE007B97F4002C59EE00FFFFFF002C59EE00476E + F000F8F8F8002C59EE00486FF0004C66BD000000000000000000000000007D93 + E0003457CD000432CA000432CA000432CA000432CA000432CA000432CA000432 + CA000432CA000432CA000432CA000432CA000432CA000432CA000432CA004B61 + AF007D93E00000000000000000000000000000000000000000004F69C000E7EC + FD004B71F100E4E9FD00E4E9FD00E4E9FD00E4E9FD004D72F100E3E9FD00E3E9 + FD00E3E9FD00E3E9FD00E3E9FD00E3E9FD004D72F100E2E8FD00E2E8FD00E1E7 + FD004B71F100DEE5FC004F69C00000000000000000004B67C0006A83D30089A1 + F000889FED00819AEB007993E8006A85E200617BCF00BAC3E100B9C5EE004364 + D2003B5DCD00A5B0D300FFFFFF00A7B5E5000C32B2000426980003259500415C + B9004C5E9A003B519B0000000000000000004E68BF003963EF003E67F0006384 + F300FFFFFF00FFFFFF00CFD9FB00FFFFFF00FFFFFF00FFFFFF00FFFFFF003E67 + F000ACBDF800FFFFFF00FFFFFF00ACBDF8003E67F000FFFFFF00FFFFFF00F2F5 + FE009FB3F7003E67F0004F74F1004E68BF000000000000000000000000000000 + 00005E7BDD00234FE100234FE100234FE100234FE100234FE100234FE100234F + E100234FE100234FE100234FE100234FE100234FE100234FE100224EE0004E64 + B500000000000000000000000000000000000000000000000000526CC300EBF0 + FD005D80F2006183F2006183F2006183F2006183F2006183F2006183F2006183 + F2006183F2006183F2006183F2006183F2006183F2006183F2006183F2006183 + F2005E80F200E4E9FD00526CC30000000000000000004C66BD00728FF20095AB + F30099AEF20091A7F0008AA1EE007993E800728CE6006A85E200BAC3E100FFFF + FF00B9C5EE003B5DCD003250B600A5B0D3001B40BC001B40B9004562C1003E56 + A200000000000000000000000000000000004F69C0003F68F000476EF000486F + F000486FF000486FF000486FF000486FF000486FF000486FF000486FF000486F + F000486FF000486FF000486FF000486FF000486FF000486FF000486FF000486F + F000486FF000476EF0005075F1004F69C0000000000000000000000000000000 + 00006984E1003E66EE003862ED003B64ED003B64ED003B64ED003B64ED003B64 + ED003B64ED003B64ED003B64ED003B64ED003B64ED003862ED003E66EE004F68 + C300000000000000000000000000000000000000000000000000536DC400ECF0 + FE00EBF0FD00EBF0FD00EBF0FD00EBF0FD00EBF0FD00EBF0FD00EAEFFD00EAEF + FD00EAEFFD00EAEFFD00EAEFFD00EAEFFD00E9EEFD00E9EEFD00E9EEFD00E8ED + FD00E8EDFD00E6EBFD00536DC40000000000000000004D67BF007693F300A1B4 + F600A1B4F40099AEF20091A7F000819AEB007993E800728CE600617BCF00BAC3 + E100FFFFFF004364D2003B5DCD003250B600274BC2004A67C7005366A8000000 + 000000000000000000000000000000000000506AC100466DF0004E73F1005075 + F1005075F1005075F1005075F1005075F1005075F1005075F1005075F1005075 + F1005075F1005075F1005075F1005075F1005075F1005075F1005075F1005075 + F1005075F1004E73F1004F74F100566FC3000000000000000000000000000000 + 00006781DA005378F100496FF0005176F1005176F1005176F1005176F1005176 + F1005176F1005176F1005176F1005176F1005075F100496FF0005378F1005975 + D100000000000000000000000000000000000000000000000000546EC500EDF1 + FE00EDF1FE00EEF2FE00EEF2FE00EDF1FE00EDF1FE00EDF1FE00EDF1FE00EDF1 + FE00EDF1FE00ECF0FE00ECF0FE00ECF0FE00ECF0FE00ECF0FE00ECF0FE00ECF0 + FE00EAEFFD00E7ECFD00546EC50000000000000000004E68C0007A96F400A9BB + F700A3B4F1006078C7004B63B600506BC6007C95E7007993E8006A85E200617B + CF00BAC3E100B9C5EE004364D2003A5CCD00516DCD00566AAB00445AAA000000 + 000000000000000000000000000000000000BFCDF6008499E0006686F3005A7D + F2006283F2006283F2006283F2006283F2006283F2006283F2006283F2006283 + F2006283F2006283F2006283F2006283F2006283F2006283F2006283F2006082 + F2005A7DF2006686F300526CC500BFCDF6000000000000000000000000000000 + 0000647AC900728FF100577BF2005C7FF2005E80F2005F81F2006082F2006082 + F2006082F2006082F2005F81F2005E80F200567AF200587CF200728FF1009FB1 + F0000000000000000000000000000000000000000000000000005770C700F0F3 + FE007B97F40087A1F5008AA3F6008AA3F6008AA3F6008AA3F6008AA3F6008AA3 + F6008AA3F6008AA3F6008AA3F6008AA3F6008AA3F6008AA3F6008AA3F60087A1 + F5007A96F400EBF0FD005770C7000000000000000000506AC1007A96F400B1C1 + F900506AC100D2DBF80000000000A9BAF0004B63B6008AA1EE007993E800728C + E6006A85E2005771CB004B6BD7005D79D7004960B30000000000000000000000 + 00000000000000000000000000000000000000000000536DC60090A2E200718F + F4006787F3006B8AF3006C8BF3006C8BF3006C8BF3006C8BF3006C8BF3006C8B + F3006C8BF3006C8BF3006C8BF3006C8BF3006C8BF3006C8BF3006C8BF3005D80 + F200718FF40090A2E200BFCDF600000000000000000000000000000000000000 + 00005A75D1006E84D2007690EA007D97EB007F98EB007F98EB008099EB008099 + EB008099EB008099EB007F98EB007F98EB007A94EA007790EA006E84D2000000 + 00000000000000000000000000000000000000000000000000005871C800F0F3 + FE00F1F4FE00F2F5FE00F3F6FE00F3F6FE00F3F6FE00F3F6FE00F2F5FE00F2F5 + FE00F2F5FE00F2F5FE00F2F5FE00F2F5FE00F2F5FE00F1F4FE00F1F4FE00F0F3 + FE00EEF2FE00EBF0FD005871C8000000000000000000516BC2006F8DF300A9BB + F800516BC200D3DBF90000000000BFCDF5004D66BA007F99ED00819AEB007993 + E800728CE6005776DD00637FDC005F73BA000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFCDF600536EC70091A4 + E2006384F300708EF4007592F4007592F4007592F4007592F4007592F4007592 + F4007592F4007592F4007592F4007592F4007592F4007592F4007290F4007491 + F40091A4E200536EC70000000000000000000000000000000000000000000000 + 000000000000647EDB005872C9005872C9005872C9005872C9005872C9005872 + C9005872C9005872C9005872C9005872C9005872C9005872C900647EDB000000 + 00000000000000000000000000000000000000000000000000005872C900F1F4 + FD00F4F6FD00F5F7FD00F6F8FD00F6F8FD00F6F8FD00F6F8FD00F6F8FD00F5F7 + FD00F5F7FD00F5F7FD00F5F7FD00F5F7FD00F5F7FD00F5F7FD00F4F6FD00F4F6 + FD00F3F6FD00F1F4FD005872C9000000000000000000546FCB006680D90099AF + F7006E84D1005E78D100D3DBF900556FCB00647BCA0099AEF2008AA1EE00819A + EB00748FE7006984E0006277BF004D65BA000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000C1CD + F60099A9E3008CA5F6007894F40086A0F50086A0F50086A0F50086A0F50086A0 + F50086A0F50086A0F50086A0F50086A0F500839EF5007894F40093AAF6005670 + C800C1CDF6000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000BFCDF600536E + C7009EB3F700B6C6F900C3D0FA00B7C6F800B1C1F800A8BAF50092A8F100809A + EE00758FE900526BC20000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005771C9009AAAE300ABBDF8008AA3F6008EA6F6008FA7F6008FA7F6008FA7 + F6008FA7F6008FA7F6008FA7F6008EA6F6007E99F500ABBDF8009DACE500C1CD + F600000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000C1CD + F600748DDD0099AFF700ACBDF800B5C5F900AFBFF800A6B8F600869FF100809A + EE006B81CC000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000C1CDF6005771C9009DACE50090A8F60099AFF7009DB2F7009FB3F7009FB3 + F7009FB3F7009EB3F7009DB2F70098AEF700ABBDF8009DACE5005771C9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005670C8006982DC007C96ED0089A0EE00869EEE00839BED00738EE9006C83 + D0005671CA000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000C1CDF6005771C8005771C8005771C8005771C8005771 + C8005771C8005771C8005771C8005771C8005874CF00C1CDF600000000000000 + 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 + 000000000000000000000000000000000000DBDBDB00D1D1D100C9C9C900C7C7 + C700C7C7C700C5C5C500C5C5C500C5C5C50029386D0030417800C5C5C500D3D3 + D300000000000000000000000000000000000000000000000000000000000000 + 00007789C8002C375F0033458000C3C3C300C5C5C500D1D1D100DCDCDC000000 + 00000000000000000000DADADA00D5D5D500C3C3C300B1BCE500394B89007587 + C600DADADA000000000000000000000000000000000000000000000000000000 + 000000000000000000006E85CF00273773002534690025346900364D96006E85 + CF00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000028387100032698000326 + 98004E66B6000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000007F92D80029396C008494C80025346900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000CED7F60031417A00536BBC002D3D7800647BC90000000000000000000000 + 0000000000000000000000000000000000002D3D780041569B004B66BE00B7C5 + F100000000000000000000000000000000000000000000000000000000000000 + 00007287D100293B7900233576000C2A8F000C2A8F000C2A8F00172F82002335 + 7600293B79000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000002C3D79000328A2000328 + A2004F69BE000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000008093D900324273005466A5008393C80027366B00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000354C98003C529C00425DB400384984003D54A200000000000000 + 00000000000000000000000000003D54A200425CB0002245B8003E55A1000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000293B7B00143090000328A1001638A8001638A8001638A8000328A1000328 + A100143090004F67B60000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000002F418200042BAD00042B + AD00506BC6000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000036457A005568AA00324DAA008494CC00293A7300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000007389D500495991001338B2003A59C0004054960094A6E5000000 + 000000000000A5B6EC002F42860040549600163BB400092EA9004B5B95000000 + 0000000000000000000000000000000000000000000000000000788DD9002F44 + 8D002045BD004B68CA00566FBF003E509000374D9A00374D9A004D609F00566F + BF002045BD002648B70044569700788DD9000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000364B94005C76CD00183DB800183DB800183DB8000D37C3000D37 + C3000D37C300183DB800183DB800183DB800364B940000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000003850 + 9D00455690002042B300042AA900042AA9008496D4002F428100000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000003B54A200042CB100042CB100042CB100435EBE003E51 + 9500344890004660BD002146C200072EB300042CB1004961AE00384D98000000 + 0000000000000000000000000000000000000000000000000000374D98001E3F + AD00506ED3005C75C60042559800D0D8F70000000000000000006B83D3004255 + 98005C75C6000B35C000546EC1003A509A000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003A509B005B79DD001540CF001540CF001540CF001540CF001540 + CF001540CF001540CF001540CF001540CF003A509B0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000003C54A3005365 + A400516CC700042CB200042CB200042CB2008497D90033468700000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000788ED900163CBB00062FB700062FB700133ABE003C5C + C900465EAF00163DBF00062FB700062FB7001138BA005062A2005E76C9000000 + 000000000000000000000000000000000000000000007B92DD00354EA200113C + CC005F78CF004559A100889DE30000000000000000000000000000000000889D + E3004559A100133ECC003156D3005165AC000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003E54A5006782DD006A84DD006A84DD006A84DD001D49DA001D49 + DA00617FE5006A84DD006A84DD006A84DD003E54A50000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000CED7F6006179C7004258A50033488F005568AA004D6A + CC001239BE00042EBB00042EBB00042EBB008499DD00364A9000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000D0D8F7004762C1001139BE001139BE001139BE00143B + C0002E53CD001139BE001139BE001139BE003959C30040539600BCC8F3000000 + 00000000000000000000000000000000000000000000435AB000254DD4003059 + E2004D63B000D1DAF80000000000000000000000000000000000000000000000 + 0000D1DAF800355BDC001E4BE0006682E0000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000008197E500455FB6002D59ED002D59 + ED00587BF1008197E50000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00004C5F9F005971BF004A66C5002447BA001237B4007288D2004F6FDB000432 + CD000432CD000432CD000432CD000432CD00849BE6003D53A0007087D9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005669AA003458D0002B50CE002B50CE002B50 + CE002B50CE002B50CE002B50CE002B50CE00596DAF00647CD000000000000000 + 00000000000000000000000000000000000000000000465EB400355BE0003660 + EB004A64BE000000000000000000000000000000000000000000000000000000 + 000000000000355CE1002250E9006986E7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000004A62BC00526AC4004D6DD5003560EF003560 + EF003560EF00526AC4004A62BC008198E5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005A74C9001C43C500042FC000042FC000042FC000728ADB005273E2000D3C + D7000E3DD8000E3DD8000E3DD8000E3DD800869DEB004058A800576EB8000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000465BA500395BCB00385CD400385CD400385C + D400385CD400385CD400385CD400385CD4004B60A7004D66BC00D1DAF7000000 + 000000000000000000000000000000000000000000004962B9004167E700305C + EE004D68C2000000000000000000000000000000000000000000000000000000 + 0000000000003059E2003661EF006D8AEB000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000005C76D2005171DE003D66EF003D66EF003D66EF003D66 + EF003D66EF003D66EF005171DE00526BC1000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005071DE000433CF000433CF000433CF000433CF00728DE4005779E9001A48 + E1001C4AE1001C4AE1001C4AE1001C4AE10089A1EF00445DB0004E71E500738C + DE00000000000000000000000000000000000000000000000000000000000000 + 000000000000ABBBF0004159AB006580DD004B6DDD004669DC004669DC004669 + DC004669DC004669DC004669DC004669DC006480DE00576EB8004159AB000000 + 000000000000000000000000000000000000000000005772CE006C85DE003C65 + EF006A80CD007990E20000000000000000000000000000000000000000000000 + 00007990E2003F68F0006989F300748CDF000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000839AE6006279C7006A88EE004D72F1005879E5005D76CA004E68C3004E68 + C3004F68BD005879E5004D72F1004D72F1006279C700839AE600000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00006384F300456CF0004C72F1004C72F100466DF00088A1F5005E80F200335E + EF003862EF003862EF003862EF003862EF008EA6F6004A64BC00093DEB00516A + BE0000000000000000000000000000000000000000000000000000000000BFCC + F5005A70BB00728BDF006D8AEA006180E7006180E7006180E7006180E7006180 + E7006180E7006180E7006180E7006180E7006180E700607FE7006B88EA005E73 + BD004A63BA00ABBBF100000000000000000000000000839AE600667DCC00577B + F2005B7BE800576EC10091A4EB000000000000000000000000000000000091A4 + EB00516ABF00597CF2007E99F500677ECC000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005169C2008A9FE9005378F100617FE500536CBF007990E200000000000000 + 0000D2DBF800536CBF00617FE5005378F1008A9FE9005169C200000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00006F8DF3006787F3006F8DF3006F8DF3006888F30095ACF7006283F2004068 + F000466DF000466DF000466DF000466DF00091A8F6004B65BD00093DEB004B65 + BD00000000000000000000000000000000000000000000000000768EDF004C64 + B7007D97EB007590ED006D8AEB006D8AEB006D8AEB006D8AEB006D8AEB006D8A + EB006D8AEB006D8AEB006D8AEB006D8AEB006D8AEB006D8AEB006D8AEB007C96 + ED006F85D0004C64B70000000000000000000000000000000000526BC3008199 + E8005075F1005475E200526BC000D3DBF80000000000000000007990E300526B + C0005878E3007290F4008AA0E900526BC30000000000000000004E67C1005C74 + C4004E67C1000000000000000000000000000000000000000000000000000000 + 00007288D000718FF4005B7EF200566EC10091A4EB0000000000000000000000 + 00000000000091A4EB00566EC1006684E700718FF4007288D000839AE7000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00007995F400839EF50090A8F60090A8F600859FF500A0B4F7006586F3004D72 + F1005378F1005378F1005378F1005378F10094ABF6004C66BE002553EE004F6A + C50000000000000000000000000000000000000000005672CE00586FBE00738C + DE007D97F1007C97F1007C97F1007C97F1007C97F1007C97F1007C97F1007C97 + F1007C97F1007C97F1007C97F1007C97F1007C97F1007C97F1007C97F1007D97 + F1007E99F1007790E200526DC700BFCCF5000000000000000000000000006881 + DA00869FF1006D8CF3005F81F2005679EB004C70E8004D71E7005C7FF2006D8C + F300708EF4006586F300577BF2004E6CD500BFCDF600000000005069C1006384 + F3005069C1000000000000000000000000000000000000000000000000000000 + 00009EB1F2006B8AF300738FEE00D3DBF8000000000000000000000000000000 + 00000000000000000000D3DBF800566EC2006B8AF3009EB1F2004F69C2000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000089A0EC009FB3F700AFC0F900B8C7F900A6B9F800ACBDF8006C8BF3006485 + F3006F8DF3006F8DF3006F8DF3006F8DF30099AFF7004E68C000667DCB000000 + 00000000000000000000000000000000000000000000516BC200516BC200516B + C200516BC200516BC200516BC200516BC200516BC200516BC20094ABF60095AC + F70095ACF70093AAF600879DE600516BC200516BC200516BC200516BC200516B + C200516BC200516BC200516BC2005671CD000000000000000000000000000000 + 0000657CCC008FA3EA00839EF5006283F2005277F1005C7FF20086A0F50097AD + F700A1B3F1006D8CF3006C8BF3005479F100516BC400BFCDF600516BC2006586 + F300516BC2000000000000000000000000000000000000000000000000000000 + 0000A4B6F3007391F4007C97ED00000000000000000000000000000000000000 + 0000000000000000000000000000526DC8007391F400A4B6F3005069C1000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000768CD400B1C0F200B5C5F900B4C4F9009EB3F700A7B9F800718FF4006D8C + F3007C97F4007D98F5007D98F5007D98F5009CB1F7004F69C1007991E3000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000007189E000A3B6F800A2B6 + F800A2B6F800A0B4F7007A8FD6006882DC000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000849AE800576FC7007085D100859DEF00849CEF00849CEF00859AE4007389 + D3005770C500839EF5007592F4006F8DF3005270D600526CC500526CC3006A8A + F300526CC3000000000000000000000000000000000000000000000000000000 + 0000A9BAF300809BF500839CEF00000000000000000000000000000000000000 + 0000000000000000000000000000536EC900809BF500A9BAF300516BC2000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00006881DB00506AC200657BC9008196DB008FA2E5008EA5F0008FA7F6007794 + F400859FF5008AA3F6008AA3F6008AA3F6009FB3F700506AC200000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFCDF600AFBFF500B0C0 + F900B0C0F900ACBDF6006078C9009FB1F0000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000556EC700768EDE0087A1F500829DF5007290F4006A83DB007C97 + F400556EC5000000000000000000000000000000000000000000000000000000 + 0000A5B5EA00A2B6F8008AA3F6007A92E4000000000000000000000000000000 + 000000000000000000007A92E4007D90D600A2B6F800A5B5EA005C77D4000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000005871CF008A9C + DC00A8B9F6009BB0F700A4B7F800A5B8F800A3B6F800536DC400000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000007F94D800C4D1 + FA00C9D5FB008DA0DF006983DD00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000C1CDF600566FC7007A91DF008DA5F6008DA5F60086A0F500839E + F500566FC6000000000000000000000000000000000000000000000000000000 + 00008597D800B3C3F90097ADF700637ACA0092A7EC0000000000000000000000 + 00000000000092A7EC00637ACA0096AAEE00B3C3F9008597D800849BE8000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000005872 + CF00758BD20097ADF70097ADF700A0B4F700A1B5F700546EC500000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000667DCD00BCCA + F700CDD8FB006D84CF009FB1F000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000005E79 + D6005771C8005771C8005771C8005771C80095ACF70095ACF70095ACF70086A0 + F5005771C8000000000000000000000000000000000000000000000000000000 + 00005B74C900B9C6F200B2C2F9009FB1EF00657BCB007C92E500000000000000 + 0000D3DBF900657BCB009FB1EF009AAFF700B9C6F2005B74C900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00006883DC00A7B9F40098AEF700849EF5009EB3F700556FC600000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000005771C900A9B8 + EC00CAD5FB005771C80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000005872 + C9006E8BED007C96EE007F99EF00859EF00098ADF2009AAEF20097ACF2007C96 + EE005872C9000000000000000000000000000000000000000000000000000000 + 0000000000006B84DE008093D600BCCAFA00ACBDF800A7B9F800AFBFF500AFBF + F500ADBDF600ACBDF800BCCAFA00C5D1F9006B84DE0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000093A7ED00677ECD009DAFEE0094ABF6005771C800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000009FB1F000667D + CD009AAFF40093A8ED0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000005B76 + D2005872C9005872C9005872C9005872C9005872C9005872C9005872C9005872 + C9005B76D2000000000000000000000000000000000000000000000000000000 + 000000000000000000006B85DE00C2CEF400C2CFFA00B7C7F900A9BBF800A9BB + F800B0C0F900C2CFFA00C2CEF400798ED5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000093A8ED005D76CA008DA5F6005771C800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000005771 + C9008297E1000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005E76CC008D9EDB00B5C2ED00C6D2F800C6D2 + F800C6D2F8008D9EDB005E76CC00879CE9000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000C1CDF6008FA2E5005771C800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000647E + DA00667DCD000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D6D6D600CDCDCD00C7C7C7007487C6002938 + 6D0025346A00C5C5C500C7C7C700CBCBCB000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000C7C7C70045599A0026336000B2BDE500C7C7C700D2D2D200000000000000 + 0000000000000000000000000000DADADA00C2C2C200475C9D002633620096A6 + DB000000000000000000000000000000000000000000000000005E72B6002632 + 5B0026325B0026325B0026325B0026325B0026325B0026325B0026325B002632 + 5B0026325B0026325B0026325B0026325B0026325B0026325B00687BBC00CFCF + CF0000000000000000000000000000000000000000000000000000000000D3D3 + D300C0C0C00025346D0027315900273159002731590027315900273159002731 + 590027315900273159002731590027315900273159002E3D7300C0C0C000CBCB + CB00DEDEDE000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000DFE5F90032406C005261 + 970046568B00455AA500DFE5F900000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000029387000364FA0008697D0002C3E8000758AD60000000000000000000000 + 0000000000000000000000000000000000002E4286004359A5008596D0002739 + 78007185D000000000000000000000000000000000004C64B4003F59AE002C52 + D2000D35BA000E36BB000E36BB000E36BB000E36BB000E36BB000E36BB000E36 + BB000E36BB000D35BA000C34BA00284ECE00142A74002240A6003C54A5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000293973004E67B80003269B0003269B0003269B0003269B000326 + 9B0003269B0003269B0003269B0003269B004E67B80029397300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000B7C5F100293C7A0045548D0017369D001C3A + 9E00032083003F57A70043528600283873000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000263A7E007082BE00505F92003A53A60033478E0000000000000000000000 + 000000000000000000000000000000000000294091007789C700505F94002942 + 96003B529E0000000000000000000000000000000000354C97004A68CE003358 + D600355AD200365AD200365AD200365AD200365AD200365AD200365AD200365A + D200365AD2003358D2002C52D1004166DF000A2479001335A500425FC0000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000002B3C77004E68BC0003279F0003279F0003279F0003218700021C + 700003228A0003279F0003279F0003279F004E68BC002B3C7700000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000334685006F7EB1003F5AB20003269B002946 + A900032288000F2F99003F58A90048599300B6C5F10000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000243E92006676A8005169BB007488CD002E459600576EC300000000000000 + 0000000000000000000000000000A4B3EB00526CBF005F6EA4005B72BF003A54 + A9002F407C00000000000000000000000000000000002E407F005271DE004166 + E2005374E3005677E4005777E4005777E4005777E4005777E4005777E4005777 + E4005777E4005072E3004267E0005275EA0003218700092EA9004160CA000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000002D3E7C004E68BF000328A4000328A4000328A40003238C00FFFF + FF0003238F000328A4000328A4000328A4004E68BF002D3E7C00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000007483B4003D59B800072CA4000328A1002947 + AD000321870003269A00072999003751AA003244840000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005C6FB200354A9100A3B3EB004258A100657ECF002F4CB000000000000000 + 00000000000000000000708ADA003953A6005668A70098AAE90000000000586D + B800374C9100000000000000000000000000000000003C54A30033468A003346 + 8A0033468A003A4C8B0030438400304384003043840030438400304384003043 + 84003043840030438400304384003043840003249100042DB500365BD9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000031448500506BC700042BAE00042BAE00042BAE00042BAE00042B + AE00042BAE00042BAE00042BAE00042BAE00506BC70031448500000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000006880D0006170A400173CB7001036B5001237B5000F34B1003D5B + BF0006258B00062BA7000429A3000328A000465FB0003D4D81006179C7000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00006373AC00435BA8005A72C600647ED1004A63B7001F48D1007D93DE000000 + 000000000000D1DAF800455BAC00294EC700445CAD000000000098AAE9007485 + C100485FB2000000000000000000000000000000000000000000000000000000 + 0000364A8F003358D30003279F0003279F0003279F0003279F0003279F000327 + 9F0003279F0003279F0003279F0003279F00042AA900042EBB00375DDC000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000034468900506CCA00042CB300042CB300042CB300042CB300042C + B300042CB300042CB300042CB300042CB300506CCA0034468900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000BAC7F200455796008496D300153BBC00183EBD00193EBC001F44BC004361 + C60008278E000D32AE000A2FAB00052AA6001F3FAA00485FAA00324279000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00004B5EA0007A8DCC004157A1004760B3003D5BBD003158DC004A62B800D2DB + F800000000005671CB00425EBF003058DE00465CA9006680D400435DB3006778 + B3008699DF000000000000000000000000000000000000000000000000000000 + 0000384D9500375DDE000430C2000430C2000430C2000430C2000430C2000430 + C2000430C2000430C2000430C2000430C2000430C2000430C200375DDE000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000036498E004F6CCD00042DB800042DB800042DB800042DB800042D + B800042DB800042DB800042DB800042DB8004F6CCD0036498E00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000465FB2008B98C8004968D0001E44C4002147C6002146C500284CC4004866 + CC000B2B94001439B7001035B2000D32AE000429A500324FB2004D5E98000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D1DAF8004D64B2008596D3007E98EC00819BEF006D8BEE0098AAEA00536D + C4004F4E4E008699DD00728FF2006D8BF0007994EC008FA4EB008C9EDD008CA0 + E600000000000000000000000000000000000000000000000000000000000000 + 00003D54A000375EE3000433CE00829DF500829DF500829DF500829DF500829D + F500829DF500829DF500829DF500829DF5000433CE000433CE00375EE3000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003A4F9700506ED4000430C2000430C2000430C2000430C2000430 + C2000430C2000430C2000430C2000430C200506ED4003A4F9700000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000091A0D1004769D800234BD1003055D4003055D4002F54D3004062D4005371 + D7001132A0002146C5001D42C100193EBC001035B3000A2FAD002C4BB4003F55 + A200000000000000000000000000000000000000000000000000000000000000 + 000000000000BFCCF5005F79CD006E82C900788DD7008297DE00667DCC00BCC5 + E300D7D6D6005F75C3008095DA008A9EE4007689D1006278C300526BC1000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00004057A600375FE6000636D4000737D4000737D4000737D4000737D4000737 + D4000737D4000737D4000737D4000737D4000737D5000636D400375FE6000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003C529C004F6ED7000431C7000431C7000431C7000431C7000431 + C7000431C7000431C7000431C7000431C7004F6ED7003C529C00000000000000 + 000000000000000000000000000000000000000000000000000000000000D1DA + F8008EA2E6002A52D7002F56D800375CDB00375CDB00365BDA004668DA005876 + DC001334A300274CCB002348C7001F44C300163BB9000F34B3001035AF003B4C + 8400CED7F7000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000AEBEF300859BE900788DD900CAD1E900EEEE + ED00EBEAEA00C2C6D6007382B6007289D900AFBEF300D3DBF900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000435BAD003961E8000D3DDB00103FDB00103FDB00103FDB00103FDB00103F + DB00103FDB00103FDB00103FDB00103FDB000F3EDB000D3DDB003A62E8000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F55A0004F6FDB000432CC000432CC000432CC000432CC000432 + CC000432CC000432CC000432CC000432CC004F6FDB003F55A000000000000000 + 000000000000000000000000000000000000000000000000000000000000677F + D4006683E6002E56DD00395FDF003F64E1003E63E0003D62DF005777E2005E7C + E2001638A9002D52D100294ECD00254AC9001B40BF00153AB9000E34B3004A5C + 9D005B74C3000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000A6A6A5006E6D6D00DAD9 + D900E8E7E700BFBDBC009A9897009D9D9D000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00004962B8003E66EE001B4BE80092A9F60092A9F60092A9F60092A9F60092A9 + F60092A9F60092A9F60092A9F60092A9F6002250E9001C4BE8004169EE000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000435AAA005576E3001441D8001542D8001542D8001542D8001542 + D8001542D8001542D8001542D8001441D8005576E300435AAA00000000000000 + 0000000000000000000000000000000000000000000000000000D2DBF8005C71 + BB00365FE800446AEA004B70EC004C71EC004B70EB004B70EB006785EB006987 + EA001B3EB200395EDC003459D8003055D400264BCA002045C400183EBE004A65 + C0003F508C00CED7F70000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000807E7E00ACABAA00A0A0 + 9F00F1F0F000BCBAB900AEACAB0082807F000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00004B65BD004068F0002352ED002E5AED002E5AED002E5AED002E5AED002E5A + ED002E5AED002E5AED002E5AED002E5AED002C59ED002352ED00446BF0000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000465EAF005879E7001E4ADE001F4BDE001F4BDE001F4BDE001F4B + DE001F4BDE001F4BDE001F4BDE001E4ADE005879E700465EAF00000000000000 + 00000000000000000000000000000000000000000000000000008EA3E9007E90 + D1003D65ED004D72F0005277F0005378F0005277F0005176EF00708DF0006E8B + EE001E41B7003F64E1003A5FDD00355AD9002B50CF00254AC9001D43C3003858 + C200495C9E008499DF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000009796960094929100BFBDBC00EAEA + E9008A898900C0BEBC00A8A6A400989694000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00004D67BE00426AF0002A57EE003862EF003862EF003862EF003862EF003862 + EF003862EF003862EF003862EF003862EF003560EF002B58EE00476EF0000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000004861B4005B7CEA002853E4002954E4002954E4002954E4002954 + E4002954E4002954E4002954E4002853E4005B7CEA004861B400000000000000 + 00000000000000000000000000000000000000000000000000006D87DD0091A3 + DF00476EF000567AF2005A7DF2005B7EF2005A7DF200587CF2007794F4007390 + F2002044BB004469E5004065E2003A5FDD002F54D3002A4FCE002248C8002C4F + C1004D62AB005E76C70000000000000000000000000000000000000000000000 + 00000000000000000000000000008B8A8900ABAAA900BAB9B800CBCAC9008786 + 860000000000D2D2D100E7E6E500B6B5B4008987870000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00004F69C000466DF0003963EF00A6B9F800A6B9F800A6B9F800A6B9F800A6B9 + F800A6B9F800A6B9F800A6B9F800A6B9F800496FF0003A64EF004E73F1000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000004D67BE006182F1003C65EE003E66EE003E66EE003E66EE003E66 + EE003E66EE003E66EE003E66EE003B64ED006182F1004D67BE00000000000000 + 0000000000000000000000000000000000000000000000000000516CC700AEBE + F300567AF2006586F3006989F3006989F3006888F3006686F3007D98F5007D98 + F5002549BF004E73ED00486DE9004469E500385DDB003257D6002A50CF002348 + C400506BC3003D539D0000000000000000000000000000000000000000000000 + 00000000000000000000000000009F9E9D00C0BFBE00E5E4E4008F8D8C000000 + 0000000000008F8F8D00E2E2E100E4E3E3009E9C9B00B3B1B100000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000506AC100486FF0004068F0005579F1005579F1005579F1005579F1005579 + F1005579F1005579F1005579F1005579F1005176F1004169F0005075F1000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000005069C0006485F300466DF000496FF000496FF000496FF000496F + F000496FF000496FF000496FF000466DF0006485F3005069C000000000000000 + 00000000000000000000000000000000000000000000000000004F69C000AFBF + F4005A7DF2006989F300708EF400718FF4006F8DF3006D8CF3007E99F500829C + F500274ABF005378F0004D72ED00476CE8003B60DE00355AD9002D53D3001940 + C300526CC5003C4F910000000000000000000000000000000000000000000000 + 0000000000000000000000000000C8C8C700DFDFDF00F2F2F100C7C7C6000000 + 000000000000D3D3D300A3A2A100F2F2F200C1C0BF00908E8D00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000516BC2004A70F000486FF0005F81F2005F81F2005F81F2005F81F2005F81 + F2005F81F2005F81F2005F81F2005F81F2005A7DF200496FF0005378F1000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000516AC1006888F3005075F1005277F1005277F1005277F1005277 + F1005277F1005277F1005277F1005075F1006888F300516AC100000000000000 + 0000000000000000000000000000000000000000000000000000506AC100AFBF + F400577BF2006787F300708EF4007794F4007693F4007491F4007C97F40086A0 + F500294CBF00577BF2005176EF004B70EB003E63E100355BDB002C53D400163E + C500536DC7003D50940000000000000000000000000000000000000000000000 + 000000000000000000009A989700F8F8F800C9C8C80094949400000000000000 + 000000000000000000000000000098979700F8F8F800E2E2E2009F9E9C000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000556FC5004D72F1005378F100B8C7F900B9C8F900B9C8F900B9C8F900B9C8 + F900B9C8F900B9C8F900B9C8F900B9C8F9006C8BF3005579F1005C7EF000536D + C400536DC400536DC40000000000000000000000000000000000000000000000 + 000000000000536CC3006E8DF30092A9F60094ABF60094ABF60094ABF60094AB + F60094ABF60094ABF60094ABF60091A8F6006E8DF300536CC300000000000000 + 0000000000000000000000000000000000000000000000000000526CC300ADBD + F4008BA4F60099AFF7009EB3F7008BA4F6007491F4007290F4007D98F5008DA5 + F6002C4EBF005A7DF2004F74F1004269EE005D7DE9007993E900869DE8007B92 + E0008397D8004054980000000000000000000000000000000000000000000000 + 00000000000095959400C6C5C400E3E3E20092918F0000000000000000000000 + 000000000000000000000000000000000000E9E9E900EEEEEE00C5C5C4000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005670C6005C7DEA005579F1007C97F4007D98F5007D98F5007D98F5007D98 + F5007D98F5007D98F5007D98F5007D98F5007290F4005A7DF2005E80F0003761 + ED003761ED00456AE50000000000000000000000000000000000000000000000 + 000000000000546DC400708EF400042DB5000429A80003269C0003208300031E + 79000320810003269A000429A700042CB300708EF400546DC400000000000000 + 0000000000000000000000000000000000000000000000000000536DC400ABBB + ED008295D7006F84CE008599DA00B3C2F300B4C4F90091A8F6006B8AF30089A2 + F6002A4DBF004B71F100466DF0006787F30093A4DD008092CF00677ABC008797 + CD00A7B3DC0041569A0000000000000000000000000000000000000000000000 + 0000C7C7C700A8A7A500DDDDDC009C9A9900D3D3D30000000000000000000000 + 0000000000000000000000000000000000009C9B9900F3F2F200DFDFDE00BDBD + BD00000000000000000000000000000000000000000000000000000000000000 + 0000556FC7005B7CEA00587CF2007F9AF500849EF50086A0F50086A0F50086A0 + F50086A0F50086A0F50086A0F500859FF5007592F4005B7EF2005B7EF2000834 + C5000A36CA004568DA0000000000000000000000000000000000000000000000 + 000000000000556EC5007391F4009EB3F700A3B6F800A3B6F800A3B6F800A3B6 + F800A3B6F800A3B6F800A3B6F8009EB3F7007391F400556EC500000000000000 + 00000000000000000000000000000000000000000000000000005873CF00536E + C7009FB1F000AEBEF3009FB1F0005A74C9008E9FDD00B4C3F5006888F3007995 + F4002448BF004E73F1007C97F200889BDC006680D9009CAFEE00ACBCF1006780 + D400445AA6004860B10000000000000000000000000000000000000000000000 + 0000A19F9D00EBEBEA00C0BFBE00000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000A6A5A500C4C3C200A2A0 + 9E00000000000000000000000000000000000000000000000000000000000000 + 00006B85DE005B78DB005479F1006283F2006B8AF3006F8DF3007391F4007391 + F4007391F4007391F400718FF4006D8CF3005C7FF2004A70F0004A70F000324B + 9C002648B700506BC20000000000000000000000000000000000000000000000 + 0000000000005770C7007693F400A6B9F800AFC0F900B1C1F900B1C1F900B1C1 + F900B1C1F900B1C1F900AFC0F900A5B8F8007592F4005770C700000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000859BE900ACBCF1009CB1 + F7002A4FC8005E77CA00859BE900000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A4A2A000D2D1D0009A999800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000009C9A9900A5A3 + A100000000000000000000000000000000000000000000000000000000000000 + 0000AFBFF3005D76CA005879E5005277F1005579F100577BF200587CF200587C + F200587CF200587CF200587CF200567AF2005075F1004C72F100446BF0006379 + C500526AB9005B72C40000000000000000000000000000000000000000000000 + 0000000000005871C8007491F400042DB5000429A80003269C0003208300031E + 79000320810003269A000429A700042CB3007391F4005871C800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000008497D900AEBF + F8007189DA007C93E50000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00009C9A99009D9B9A0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000009C9A + 9900000000000000000000000000000000000000000000000000000000000000 + 000000000000859CE9005771C8005771C8005771C8005771C8005771C8005771 + C8005771C8005771C8005771C8005771C8005771C8005771C8005771C8005771 + C8005771C90093A8ED0000000000000000000000000000000000000000000000 + 0000000000005872C9006D8CF3006686F3007391F4007A96F4007E99F5007F9A + F5007E99F5007A96F4007290F4006485F3006D8CF3005872C900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000005A76D200A1B0 + E80094A4DA000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000004E6ACE005872C9005872C9005872C9005872C9005872C9005872 + C9005872C9005872C9005872C9005872C9005872C9005B76D200000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000005A76 + D2005A76D2000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DEDE + DE00D3D3D300CECECE00CECECE00C0C0C00097A7D7005769A700293462002530 + 5800253058002934620032427B005769A700C0C0C000C7C7C700CECECE00D6D6 + D600DEDEDE00DEDEDE000000000000000000000000000000000000000000DEDE + DE00D3D3D300CECECE00CECECE00C0C0C00097A7D7005769A700293462002530 + 5800253058002934620032427B005769A700C0C0C000C7C7C700CECECE00D6D6 + D600DEDEDE00DEDEDE0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000004259A70046589700455EAF002F4BAB001333A0000326 + 9900032699001333A0001E3DA4002F4BAB004658970035447A004259A7000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000004259A70046589700455EAF002F4BAB001333A0000326 + 9900032699001333A0001E3DA4002F4BAB004658970035447A004259A7000000 + 00000000000000000000000000000000000000000000000000004A60AE003544 + 7900485EA900435BAC00435BAC00435BAB00435BAB00435BAA00435BA900435A + A8004259A7004259A600435AA6004259A500435AA500435AA500435AA5004556 + 910033406D00455BA5000000000000000000000000000000000000000000AEBD + EC007A87B4008E9ED100808EBC00F0EFEF00EFEEEE00EDEDEC00EBEAEA00E9E9 + E800E8E7E700E5E5E400E4E3E3008E99BE008E9AC3008E9AC300808EBC008293 + CC008293CC008293CE0000000000000000000000000000000000000000000000 + 0000B9C6F1002E42880042538E002B49AE000B2EA10003279F0003279F000327 + 9F0003279F0003279F0003279F0003279F002B49AE004760B10042538E00B9C6 + F100000000000000000000000000000000000000000000000000000000000000 + 0000B9C6F1002E42880042538E002B49AE000B2EA10003279F0003279F000327 + 9F0003279F0003279F0003279F0003279F002B49AE004760B10042538E00B9C6 + F1000000000000000000000000000000000000000000647BCB00364784004761 + B500072BA3000328A1000328A00003279F0003279F0003279F0003279D000326 + 9C0003269C0003269A0003269A00032699000325970003259700032596002643 + A3004A5FA6003342760000000000000000000000000000000000BAC6F2002E42 + 8700798ED2002446B60003228900031E7B000322890003228900BCBAB900B7B5 + B400B2B0AF00A7A5A400A2A09E00031E7B00032289000322890003228900042A + AB00042AAB008194D50000000000000000000000000000000000000000000000 + 00002F4284004D5F9E00415CB7000328A3000328A3000328A3000328A3000328 + A3000328A3000328A3000328A3000328A3000328A3001336A900415CB7002F42 + 8400B9C6F1000000000000000000000000000000000000000000000000000000 + 00002F4284004D5F9E00415CB7000328A3000328A3000328A3000328A3000328 + A3000328A3000328A3000328A3000328A3000328A3001336A900415CB7002F42 + 8400B9C6F1000000000000000000000000000000000033478A004B61AA002748 + B5000429A7000429A7000429A6000429A5000328A4000328A3000328A2000328 + A1000328A00003279F0003279F0003279E0003279D0003269C0003269B000326 + 9A002745A8004B5E9E00000000000000000000000000BAC6F20031458C006A79 + B2001B40B8001D41B90003238D00031F7F0003238D0003238D00CAC8C700C5C3 + C200C0BEBD00B6B4B300B1AFAD00031F7F0003238D0003238D0003238D00042C + B100042CB1008195D7000000000000000000000000000000000000000000475F + B100415DBD00082EAE00042BAC00042BAC00042BAC00042BAC00042BAC00042B + AC00042BAC00042BAC00042BAC00042BAC00042BAC00042BAC00042BAC00415D + BD0046589A00475FB1000000000000000000000000000000000000000000475F + B100415DBD00082EAE00042BAC00042BAC00042BAC00042BAC00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00042BAC00042BAC00042BAC00042BAC00042BAC00415D + BD0046589A00475FB100000000000000000000000000314588004361C700042C + B300042CB2003252BF00DEE3F400C0CAEA003353BD00042BAD00042BAC00425F + C000FFFFFF008194D400042AA900042AA900BFC8E800FFFFFF00FFFFFF000328 + A4000328A300435EBB0000000000000000000000000034488F00879BDD00264B + C3001038BD00284CC4000D2D98000C2888000D2D98000D2D9800E0DFDF00DDDB + DB00D9D7D700D1CFCE00CDCBCA000C2888000D2D98000D2D98000D2D98001038 + BD001038BD00869ADE0000000000000000000000000000000000A8B7ED003E50 + 8E001439B600042CB100042CB100042CB100042CB100042CB100042CB100042C + B100042CB100042CB100A0AFE100042CB100042CB100042CB100042CB1001439 + B6004964BF003E508E0000000000000000000000000000000000A8B7ED003E50 + 8E001439B600042CB100042CB100042CB100042CB100042CB100FFFFFF00FFFF + FF00FFFFFF00FFFFFF00042CB100042CB100042CB100042CB100042CB1001439 + B6004964BF003E508E0000000000000000000000000034488C004362CA00042D + B800042DB600DEE4F500FFFFFF00FFFFFF00AFBBE200042BAF00042CB100617A + CE00FFFFFF008191CA000429A800042BAD00C0CAEA00FFFFFF00FFFFFF00042A + AA00042AA900425EBD00000000000000000000000000364B9400889DE100183F + C300183FC3002F53CA0013339C00112D8C0013339C0013339C00EBEAE900E7E6 + E600E3E2E200DCDBDA00D8D7D600112D8C0013339C0013339C0013339C00183F + C300183FC300889DE10000000000000000000000000000000000455BAE004C62 + AD00042DB600042DB600042DB600042DB600042DB600042DB600042DB600042D + B600042DB60003279F00FFFFFF009FAFE200042DB600042DB600042DB600042D + B6002B4EC2004C62AD0000000000000000000000000000000000455BAE004C62 + AD00042DB600042DB600042DB600042DB600042DB600042DB600FFFFFF00FFFF + FF00FFFFFF00FFFFFF00042DB600042DB600042DB600042DB600042DB600042D + B6002B4EC2004C62AD00000000000000000000000000364A91004363CE000530 + BE00042EBC00FFFFFF00FFFFFF00FFFFFF00FFFFFF000429A700042DB60091A3 + DE00FFFFFF006177BF00042BAC00042CB300EEF1F900FFFFFF00DEE3F100042B + AE00042BAE00425FC100000000000000000000000000394F99008A9FE3002047 + CA002047CA003559CF001938A100173391001733910017339100F4F3F300F1F0 + F000EDEDEC00E6E5E500E3E2E100173391001938A1001938A1001938A1002047 + CA002047CA008A9FE300000000000000000000000000788DD7004F63AA00395B + CD00173FC400173FC400173FC400173FC400173FC400173FC400173FC400173F + C400173FC40012329D00FFFFFF00FFFFFF00A6B6E800173FC400173FC400173F + C400153DC400395BCD00788DD7000000000000000000788DD7004F63AA00395B + CD00173FC400173FC400173FC400173FC400173FC400173FC400FFFFFF00FFFF + FF00FFFFFF00FFFFFF00173FC400173FC400173FC400173FC400173FC400173F + C400153DC400395BCD00788DD70000000000000000003A509A004768D700133D + CA00153EC9004062D300E0E5F600C3CCEA001A3CAD000A32B700647ED800FFFF + FF00FFFFFF000429A700042FBE00042FBD00FFFFFF00FFFFFF008F9FD400042D + B800042DB8004362C9000000000000000000000000003E55A30091A6EA003157 + D6003157D6004668D8003350B2002D4BAE002D4BAE002D4BAE002D4BAE002D4B + AE002D4BAE002D4BAE002D4BAE002D4BAE002D4BAE002D4BAE003350B2003157 + D6003157D60090A5EA000000000000000000000000004963B600546DC0003357 + CF00234ACB00234ACB00234ACB00234ACB00234ACB00234ACB00234ACB00234A + CB00234ACB001C3BA300FFFFFF00FFFFFF00FFFFFF00ABBAEB00234ACB00234A + CB002148CB003357CF004963B60000000000000000004963B600546DC0003357 + CF00234ACB00234ACB00234ACB00234ACB00234ACB00234ACB00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00234ACB00234ACB00234ACB00234ACB00234ACB00234A + CB002148CB003357CF004963B60000000000000000003C52A000496BDA001C46 + D1002149D1001F48D0001D44C900173CB600173DBD001640CB00E1E6F800FFFF + FF00FFFFFF000B33B8000A35C4000833C300FFFFFF00FFFFFF00516BBF00042F + BE00042FBD004363CD000000000000000000000000004058A90094A9ED003A5F + DD003A5FDD004669DF004E70E0004E70E0004E70E0004E70E0004E70E0004E70 + E0004E70E0004E70E0004E70E0004E70E0004E70E0004E70E0004E70E0003A5F + DD003A5FDD0093A8ED000000000000000000000000003D54A2005C76D0003257 + D3002E53D2002E53D2002B4FC700FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00AFBEEE002E53 + D2002D53D2003257D3003D54A20000000000000000003D54A2005C76D0003257 + D3002E53D2002E53D2002E53D2002E53D2002E53D2002E53D200FFFFFF00FFFF + FF00FFFFFF00FFFFFF002E53D2002E53D2002E53D2002E53D2002E53D2002E53 + D2002D53D2003257D3003D54A20000000000000000003F56A5004C6EDF00244D + D7002C53D7002A51D6002951D600254DD400234BD3002F55D500FFFFFF00FFFF + FF00EFF2F900163FCA00153FCB00133DCA00FFFFFF00FFFFFF00193CAE000833 + C4000632C3004364D100000000000000000000000000435CAF0097ACF0004368 + E3004368E3004368E3004368E3004368E3004368E3004368E3004368E3004368 + E3004368E3004368E3004368E3004368E3004368E3004368E3004368E3004368 + E3004368E30097ACF0000000000000000000000000004158A600627CD900365C + DC004569DF004569DF003854B200FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF008BA1 + EB004468DF003A5FDC004158A60000000000000000004158A600627CD900365C + DC004569DF004569DF004569DF004569DF004569DF004569DF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF004569DF004569DF004569DF004569DF004569DF004569 + DF004468DF003A5FDC004158A6000000000000000000445CAF005073E700345C + E2004267E3006F8BE9006D89E800DAE1F900FFFFFF00FFFFFF00FFFFFF007A8F + D4002B4FC7002D54D900385DDA00F0F3FC00FFFFFF005771C8002147C8001C46 + D1001540D0004668D9000000000000000000000000004862B9009EB2F600587B + F000587BF0005070D9004F6ED7004F6ED7004F6ED7004F6ED7004F6ED7004F6E + D7004F6ED7004F6ED7004F6ED7004F6ED7004F6ED7004F6ED7004F6ED700587B + F000587BF0009DB2F600000000000000000000000000435BAB006681DE003F64 + E1005173E3005173E300415CB600FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF005173 + E3004F71E3004368E100435BAB000000000000000000435BAB006681DE003F64 + E1005173E3005173E3005173E3005173E3005173E3005173E300FFFFFF00FFFF + FF00FFFFFF00FFFFFF005173E3005173E3005173E3005173E3005173E3005173 + E3004F71E3004368E100435BAB000000000000000000465FB4005275EA003D64 + E7004D71E900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF008296D800375A + CD003C62E100385EDF00BFCBF400FFFFFF00BBC6E900284BBE002D55DA002750 + D9001D48D600486BDD000000000000000000000000004A64BB00A1B5F7006183 + F2006183F2005876DA00BDC9F100BDC9F100BDC9F100BDC9F100BDC9F100BDC9 + F100BDC9F100BDC9F100BDC9F100BDC9F100BDC9F100BDC9F100BDC9F1006183 + F2006183F200A0B4F700000000000000000000000000475EB4006C86E0005275 + E7005C7CE8005C7CE8004963B900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C2CEF6005C7C + E800597AE8005375E700475EB4000000000000000000475EB4006C86E0005275 + E7005C7CE8005C7CE8005C7CE800FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00E1E7FB005C7CE8005C7C + E800597AE8005375E700475EB40000000000000000004963B9005478EE00456B + EB00587BED00FFFFFF00FFFFFF00FFFFFF00FFFFFF00B9C5EB004567D900486D + E700456AE60094A9F000FFFFFF00FFFFFF004D69C800365BD400395FE0003058 + DE00244EDB004A6DE1000000000000000000000000004B65BC00A4B7F8006A8A + F3006A8AF300607CDA00C4CEF1009DAEE8009DAEE8009DAEE8009DAEE8009DAE + E8009DAEE8009DAEE8009DAEE8009DAEE8009DAEE8009DAEE8009DAEE8006A8A + F3006A8AF300A3B6F8000000000000000000000000007790E100687FCD006E8C + F0007491F1007491F1007491F1007491F1007491F1007491F1007491F1007491 + F1007491F1005C73C000FFFFFF00FFFFFF00CAD5F9007491F1007491F1007491 + F1006988EF006E8CF0007790E10000000000000000007790E100687FCD006E8C + F0007491F1007491F100738FEE00677DC500E0E5F300FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF007D98F2007491F1007491F1007491 + F1006988EF006E8CF0007790E10000000000000000004D67BE00597CF2005579 + F1006E8DF3006B8AF0006785EA006585EE006686F3006384F2006082F1006888 + F100C0CDF800FFFFFF00FFFFFF00AEBBE7005074EA005074EC004D72EA00456A + E900345DE6004E72E9000000000000000000000000004D67BE00AABCF8007C97 + F4007C97F4006F88DC00D1D9F400B2C0EC00B2C0EC00B2C0EC00B2C0EC00B2C0 + EC00B2C0EC00B2C0EC00B2C0EC00B2C0EC00B2C0EC00B2C0EC00B2C0EC007C97 + F4007C97F400A9BBF800000000000000000000000000BFCDF6005971C3007E98 + F1007E99F500819BF500819BF500819BF500819BF500819BF500819BF500819B + F500819BF500677CC400FFFFFF00FFFFFF00819BF500819BF500819BF5007E99 + F5007290F4007E98F100CED8F7000000000000000000BFCDF6005971C3007E98 + F1007E99F500819BF500819BF5006B82CD007084C700E2E6F400FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00E7ECFD00819BF500819BF500819BF5007E99 + F5007290F4007E98F100CED8F70000000000000000004E68BF005B7EF2005D80 + F2007A96F4007894F4007693F4007391F400718FF4006F8DF300A1B5F700EBF0 + FD00FFFFFF00FFFFFF00B4C0E9005370D0005C7EF0005B7EF000597CEF004E73 + ED003B63EB005074EC000000000000000000000000004E68BF00ADBEF800849E + F500849EF500778EDC00D7DEF400BCC8EE00BCC8EE00BCC8EE00BCC8EE00BCC8 + EE00BCC8EE00BCC8EE00BCC8EE00BCC8EE00BCC8EE00BCC8EE00BCC8EE00849E + F500849EF500ACBDF800000000000000000000000000000000005975D100768D + DD00829CF5008BA4F6008BA4F6008BA4F6008BA4F6008BA4F6008BA4F6008BA4 + F6008BA4F6006F83C500FFFFFF00D4DDFC008BA4F6008BA4F6008BA4F600829C + F500809BF500768DDD00000000000000000000000000000000005975D100768D + DD00829CF5008BA4F6008BA4F60089A2F3007489CD00788AC800FFFFFF00FFFF + FF00FFFFFF00FFFFFF00E9EEFD0092A9F6008BA4F6008BA4F6008BA4F600829C + F500809BF500768DDD000000000000000000000000004F69C0005D80F2006586 + F300849EF500829DF500819BF5007E99F50093AAF600C3D0FA00FFFFFF00FFFF + FF00FFFFFF009BABE1005E78D1006987ED006888F3006686F3006586F300597C + F200436AEF005277F0000000000000000000000000004F69C000B0C0F9008DA5 + F6008DA5F6007F95DD00DDE2F600C6D0F000C6D0F000C6D0F000C6D0F000C6D0 + F000C6D0F000C6D0F000C6D0F000C6D0F000C6D0F000C6D0F000C6D0F0008DA5 + F6008DA5F600AFC0F9000000000000000000000000000000000000000000607A + D70095ABF50092A9F600A0B4F700A2B6F800A2B6F800A2B6F800A2B6F800A2B6 + F800A2B6F8008E9FD800A2B6F800A2B6F800A2B6F800A2B6F8009FB3F70094AA + F500758AD500607AD7000000000000000000000000000000000000000000607A + D70095ABF50092A9F600A0B4F700A2B6F800A2B6F800A0B3F4008998C900E7EA + F400FFFFFF00A8BAF800A2B6F800A2B6F800A2B6F800A2B6F8009FB3F70094AA + F500758AD500607AD700000000000000000000000000516BC2006082F200708E + F4009AAFF700FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00D5DBF10098A8 + DC00758BD300859FF500839EF500829CF5007F9AF5007D98F5007B97F4006989 + F3004F74F1005579F100000000000000000000000000516BC200B5C5F9009EB3 + F7009EB3F7008EA0DE00E5EAF700D5DCF200D5DCF200D5DCF200D5DCF200D5DC + F200D5DCF200D5DCF200D5DCF200D5DCF200D5DCF200D5DCF200D5DCF2009EB3 + F7009EB3F700B4C4F90000000000000000000000000000000000000000000000 + 000090A2E2009CB1F7009CB1F700AEBFF800AEBFF800AEBFF800AEBFF800AEBF + F800AEBFF800AEBFF800AEBFF800AEBFF800AEBFF800A9BBF8009CB1F7008EA1 + E300546FCA000000000000000000000000000000000000000000000000000000 + 000090A2E2009CB1F7009CB1F700AEBFF800AEBFF800AEBFF80091A0D000929F + CA00DBE0F300AEBFF800AEBFF800AEBFF800AEBFF800A9BBF8009CB1F7008EA1 + E300546FCA0000000000000000000000000000000000526CC3005F81F200718F + F400A2B6F800FFFFFF00FFFFFF00E8EBF600D9DEF000B2BDE3008598D9008CA1 + E60092A9F40090A8F6008EA6F6008CA5F60089A2F60087A1F500859FF5006E8D + F3005075F1005579F100000000000000000000000000526CC300B8C7F900A7B9 + F800A7B9F80096A6DF00E9EDF800DCE1F400DCE1F400DCE1F400DCE1F400DCE1 + F400DCE1F400DCE1F400DCE1F400DCE1F400DCE1F400DCE1F400DCE1F400A7B9 + F800A7B9F800B6C6F90000000000000000000000000000000000000000000000 + 00005870C70092A5E300A3B6F700ACBDF800B5C5F900B9C8F900B9C8F900B9C8 + F900B9C8F900B9C8F900B9C8F900B9C8F900ACBDF800A2B6F800A1B5F7005870 + C700BFCDF6000000000000000000000000000000000000000000000000000000 + 00005870C70092A5E300A3B6F700ACBDF800B5C5F900B9C8F900B6C5F600A1AE + D900B6C5F600B9C8F900B9C8F900B9C8F900ACBDF800A2B6F800A1B5F7005870 + C700BFCDF60000000000000000000000000000000000536DC4006685EC006C8B + F300A3B6F800A4B5EE0092A1D30097A7DD0098A8E1009BACE700A2B6F800A1B5 + F7009FB3F7009BB0F70099AFF70097ADF70094ABF60091A8F6008CA5F6006B8A + F3005075F1005E7EEC00000000000000000000000000536DC400BAC9FA00B0C0 + F900B0C0F9009DADDF00EDF0F900E3E8F600E3E8F600E3E8F600E3E8F600E3E8 + F600E3E8F600E3E8F600E3E8F600E3E8F600E3E8F600E3E8F600E3E8F600B0C0 + F900B0C0F900B9C8F90000000000000000000000000000000000000000000000 + 00000000000000000000627DD900879BE300A0B3F500A3B6F800A4B7F8009FB3 + F7009FB3F700A2B6F800A3B6F800A0B4F700879BE300677ECC00627DD9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000627DD900879BE300A0B3F500A3B6F800A4B7F8009FB3 + F7009FB3F700A2B6F800A3B6F800A0B4F700879BE300677ECC00627DD9000000 + 000000000000000000000000000000000000000000007A92E5006079CC00728E + EE007794F400829DF5008AA3F6008DA5F6008DA5F6008BA4F60089A2F60088A2 + F60087A1F500839EF500829DF500819BF5007B97F4007693F4006C8BF3005E80 + F2006786ED005F78CC00000000000000000000000000556FC600BECCFA00C0CE + FA00C0CEFA00ADB9E100F4F6FA00EDF0F800EDF0F800EDF0F800EDF0F800EDF0 + F800EDF0F800EDF0F800EDF0F800EDF0F800EDF0F800EDF0F800EDF0F800C0CE + FA00C0CEFA00BDCBFA0000000000000000000000000000000000000000000000 + 00000000000000000000000000005E79D500637BCC007C91DA0092A8F00091A7 + F10092A8F10092A8F000879DE7007B90D9005E79D500AFBFF300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005E79D500637BCC007C91DA0092A8F00091A7 + F10092A8F10092A8F000879DE7007B90D9005E79D500AFBFF300000000000000 + 00000000000000000000000000000000000000000000000000005974CF00617A + CD005F81F2006586F3006888F3006A8AF3006A8AF3006A8AF3006A8AF3006989 + F3006989F3006888F3006888F3006787F3006586F3006384F3006082F2005E7D + E5006079CD006984DD000000000000000000000000005670C700A6B9F800C1CE + FA00C3D0FA00BCC8EE00F9FAFE00F4F6FC00F4F6FC00F4F6FC00F4F6FC00F4F6 + FC00F4F6FC00F4F6FC00F4F6FC00F4F6FC00F4F6FC00F4F6FC00F4F6FC00C3D0 + FA00C0CEFA00A4B7F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000CED8F8007C93E5005771C9005871 + C8005871C8005771C9005E79D6007C93E5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000CED8F8007C93E5005771C9005871 + C8005871C8005771C9005E79D6007C93E5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000007C93 + E5005771C8005771C8005771C8005771C8005771C8005771C8005771C8005771 + C8005771C8005771C8005771C8005771C8005771C8005771C8005771C8005D76 + CC007C93E500000000000000000000000000000000005771C9005771C8005771 + C8005771C8005771C800ABB8E300ABB8E300ABB8E300ABB8E300ABB8E300ABB8 + E300ABB8E300ABB8E300ABB8E300ABB8E300ABB8E300ABB8E300ABB8E3005771 + C8005771C8005771C80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DEDE + DE00D3D3D300CECECE00CECECE00C0C0C00097A7D7005769A700293462002530 + 5800253058002934620032427B005769A700C0C0C000C7C7C700CECECE00D6D6 + D600DEDEDE00DEDEDE000000000000000000000000000000000000000000DEDE + DE00D3D3D300CECECE00CECECE00C0C0C00097A7D7005769A700293462002530 + 5800253058002934620032427B005769A700C0C0C000C7C7C700CECECE00D6D6 + D600DEDEDE00DEDEDE000000000000000000000000000000000000000000DEDE + DE00D3D3D300CECECE00CECECE00C0C0C00097A7D7005769A700293662002531 + 5800253158002633600032427B005769A700C0C0C000C7C7C700CECECE00D6D6 + D600DEDEDE00DEDEDE0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000004259A70046589700455EAF002F4BAB001333A0000326 + 9900032699001333A0001E3DA4002F4BAB004658970035447A004259A7000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000004259A70046589700455EAF002F4BAB001333A0000326 + 9900032699001333A0001E3DA4002F4BAB004658970035447A004259A7000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000004259A70046599700455EAF002F4BAB001333A0000326 + 9900032699001333A0001E3DA4002F4BAB004659970035457A004259A7000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000A3B3EA002F3E73003F4F840044579700495DA100495D + A100495DA100445797003F4F86002F3F7400A3B3EA0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B9C6F1002E42880042538E002B49AE000B2EA10003279F0003279F000327 + 9F0003279F0003279F0003279F0003279F002B49AE004760B10042538E00B9C6 + F100000000000000000000000000000000000000000000000000000000000000 + 0000B9C6F1002E42880042538E002B49AE000B2EA10003279F0003279F000327 + 9F0003279F0003279F0003279F0003279F002B49AE004760B10042538E00B9C6 + F100000000000000000000000000000000000000000000000000000000000000 + 0000B9C6F1002E42880042538E002B49AE000B2EA10003279F0003279F000327 + 9F0003279F0003279F0003279F0003279F002B49AE004760B10042538E00B9C6 + F100000000000000000000000000000000000000000000000000000000000000 + 0000000000004159A70035447A00455EAF002F4BAB001E3DA400032699000326 + 9900032699001E3DA4002F4BAB00455EAF0035447A004159A700000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00002F4284004D5F9E00415CB7000328A3000328A3000328A3000328A3000328 + A3000328A3000328A3000328A3000328A3000328A3001336A900415CB7002F42 + 8400B9C6F1000000000000000000000000000000000000000000000000000000 + 00002F4284004D5F9E00415CB7000328A3000328A3000328A3000328A3000328 + A3000328A3000328A3000328A3000328A3000328A3001336A900415CB7002F42 + 8400B9C6F1000000000000000000000000000000000000000000000000000000 + 00002F4284004D609E00415CB7000328A3000328A3000328A3000328A3000328 + A3000328A3000328A3000328A3000328A3000328A3001336A900415CB7002F42 + 8400B9C6F1000000000000000000000000000000000000000000000000000000 + 00002E42880042538E004760B1000B2EA10003279F0003279F0003279F000327 + 9F0003279F0003279F0003279F000B2EA1004760B10042538E002E4288000000 + 000000000000000000000000000000000000000000000000000000000000475F + B100415DBD00082EAE00042BAC00042BAC00042BAC00042BAC001338B100CFD6 + EE00FFFFFF001338B100042BAC00042BAC00042BAC00042BAC00042BAC00415D + BD0046589A00475FB1000000000000000000000000000000000000000000475F + B100415DBD00082EAE00042BAC00042BAC00042BAC00042BAC00042BAC00042B + AC00042BAC00042BAC00042BAC00042BAC00042BAC00042BAC00042BAC00415D + BD0046589A00475FB1000000000000000000000000000000000000000000475F + B100415DBD00082EAE00042BAC00042BAC00042BAC00042BAC00042BAC00042B + AC00042BAC00042BAC00042BAC00042BAC00042BAC00042BAC00042BAC00415D + BD0046599A00475FB10000000000000000000000000000000000000000003147 + 8F003654B900082DA9000429A8000429A8000429A8000429A8000429A8000429 + A8000429A8000429A8000429A8000429A8000429A800082DA9003654B9003147 + 8F00000000000000000000000000000000000000000000000000A8B7ED003E50 + 8E001439B600042CB100042CB100042CB100042CB100042CB100CFD6EF00FFFF + FF00FFFFFF00CFD6EF001439B600042CB100042CB100042CB100042CB1001439 + B6004964BF003E508E0000000000000000000000000000000000A8B7ED003E50 + 8E001439B600042CB100042CB100042CB100042CB100042CB1001439B600CFD6 + EF00042CB100042CB100042CB100042CB100042CB100042CB100042CB1001439 + B6004964BF003E508E0000000000000000000000000000000000A8B7ED003E50 + 8E001439B600042CB100042CB100042CB100042CB100042CB100A0AFE100A0AF + E100042CB100042CB100042CB100042CB100042CB100042CB100042CB1001439 + B6004964BF003E508E0000000000000000000000000000000000475FB1004658 + 9A00082EAE00042BAC00042BAC00042BAC00042BAC00042BAC00042BAC00042B + AC00042BAC00042BAC00042BAC00042BAC00042BAC00042BAC00082EAE004658 + 9A00475FB1000000000000000000000000000000000000000000455BAE004C62 + AD00042DB600042DB600042DB600042DB600042DB600143ABA00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00D0D7F100143ABA00042DB600042DB600042DB600042D + B6002B4EC2004C62AD0000000000000000000000000000000000455BAE004C62 + AD00042DB600042DB600042DB600042DB600042DB600042DB600D0D7F100FFFF + FF00042DB600042DB600042DB600042DB600042DB600042DB600042DB600042D + B6002B4EC2004C62AD0000000000000000000000000000000000455CAE004C63 + AD00042DB600042DB600042DB600042DB600042DB600042DB600FFFFFF00FFFF + FF009FAFE200042DB600042DB600042DB600042DB600042DB600042DB600042D + B6002B4EC2004C63AD00000000000000000000000000A8B7ED003E508E004964 + BF00042CB100042CB100042CB100042CB100042CB100042CB100042CB100042C + B100042CB100042CB100042CB100042CB100042CB100042CB100042CB1004964 + BF003E508E00A8B7ED00000000000000000000000000788DD7004F63AA00395B + CD00173FC400173FC400173FC400264BC800D2D9F300FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00264BC800173FC400173FC400173F + C400153DC400395BCD00788DD7000000000000000000788DD7004F63AA00395B + CD00173FC400173FC400173FC400173FC400264BC800D2D9F300FFFFFF00FFFF + FF00173FC400173FC400173FC400173FC400173FC400173FC400173FC400173F + C400153DC400395BCD00788DD7000000000000000000788DD7004F63AA00395B + CD00173FC400173FC400173FC400173FC400A6B6E800FFFFFF00FFFFFF00FFFF + FF00FFFFFF00A6B6E800173FC400173FC400173FC400173FC400173FC400173F + C400153DC400395BCD006C83D40000000000000000003F5194004966C8001139 + BF000C35BE000C35BE000C35BE000C35BE000C35BE000C35BE000C35BE000C35 + BE000C35BE000C35BE000C35BE000C35BE000C35BE000C35BE000C35BE001139 + BF004966C8003F5194000000000000000000000000004963B600546DC0003357 + CF00234ACB00234ACB00234ACB00D4DBF400FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00D4DBF4002F54CE00234ACB00234A + CB002148CB003357CF004963B60000000000000000004963B600546DC0003357 + CF00234ACB00234ACB00234ACB002F54CE00D4DBF400FFFFFF00FFFFFF00FFFF + FF00234ACB00234ACB00234ACB00234ACB00234ACB00234ACB00234ACB00234A + CB002148CB003357CF004963B60000000000000000004963B600546DC0003357 + CF00234ACB00234ACB00234ACB00ABBAEB00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00ABBAEB00234ACB00234ACB00234ACB00234ACB00234A + CB002148CB003357CF004963B60000000000000000004D62A9003659CC00123B + C300173FC400173FC400173FC400173FC400173FC400173FC400173FC400173F + C400173FC400173FC400173FC400173FC400173FC400173FC400173FC400123B + C4003558CC004D62A9000000000000000000000000003D54A2005C76D0003257 + D3002E53D2002E53D2002E53CF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00D6DDF5002E53D2002E53 + D2002D53D2003257D3003D54A20000000000000000003D54A2005C76D0003257 + D3002E53D2002E53D2002E53D200D6DDF500FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF002E53 + D2002D53D2003257D3003D54A20000000000000000003D54A2005C76D0003257 + D3002E53D2002E53D2002E53D200FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00AFBEEE002E53D2002E53D2002E53D2002E53 + D2002D53D2003257D3003D54A20000000000000000005069BE002E53CE001D45 + CA00234ACB00234ACB00234ACB00234ACB00234ACB00234ACB00234ACB00234A + CB00234ACB00234ACB00234ACB00234ACB00234ACB00234ACB00234ACB001D45 + CA002D52CE005069BE000000000000000000000000004158A600627CD900365C + DC004569DF004569DF004569DF004569DF004569DF004569DF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF004569DF004569DF004569DF004569DF004569DF004569 + DF004468DF003A5FDC004158A60000000000000000004158A600627CD900365C + DC004569DF004467DC00B6C2EA00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF004569 + DF004468DF003A5FDC004158A60000000000000000004158A600627DD900365C + DC004569DF003C5BC200B4BFE200FFFFFF00FFFFFF00FFFFFF003D5CC3003854 + B200B4BFE200FFFFFF00FFFFFF00FFFFFF00B8C6F2004569DF004569DF004569 + DF004468DF003A5FDC004158A60000000000000000005774D4002850D5003459 + D700395ED800395ED800395ED800FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00395ED800395ED800395ED8003459 + D700224BD4005773D300000000000000000000000000435BAB006681DE003F64 + E1005173E3005173E3005173E3005173E3005173E3005173E300FFFFFF00FFFF + FF00FFFFFF00FFFFFF005173E3005173E3005173E3005173E3005173E3005173 + E3004F71E3004368E100435BAB000000000000000000435BAB006681DE003F64 + E1005173E3004764C7004C66BA00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF005173 + E3004F71E3004368E100435BAB000000000000000000435BAB006681DE003F64 + E1005173E3004764C700415CB600FFFFFF00FFFFFF00BECBF5005173E3004764 + C700415CB600FFFFFF00FFFFFF00FFFFFF00FFFFFF00BCC9F4005173E3005173 + E3004F71E3004368E100435BAB0000000000000000005A77D8003057DA003E63 + DD004569DF004569DF003E5EC800FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF004569DF004569DF004569DF003E63 + DD002B53DA005975D700000000000000000000000000475EB4006C86E0005275 + E7005C7CE8005C7CE8005C7CE8005C7CE8005C7CE8005C7CE800FFFFFF00FFFF + FF00FFFFFF00FFFFFF005C7CE8005C7CE8005C7CE8005C7CE8005C7CE8005C7C + E800597AE8005375E700475EB4000000000000000000475EB4006C86E0005275 + E7005C7CE8005B7BE5004E69C300DCE1F100FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF005C7C + E800597AE8005375E700475EB4000000000000000000475EB4006C86E0005275 + E7005C7CE8005C7CE800526ECB00BCC5E500C2CEF6005C7CE8005C7CE8005C7C + E800526ECB00BCC5E500FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0CCF5005C7C + E800597AE8005375E700475EB40000000000000000005C79DB00375EDF00486C + E3005173E3005173E3004967CD00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF005173E3005173E3005173E300486C + E3003058DE005B78DB000000000000000000000000007790E100687FCD006E8C + F0007491F1007491F1007491F1007491F1007491F1007491F100FFFFFF00FFFF + FF00FFFFFF00FFFFFF007491F1007491F1007491F1007491F1007491F1007491 + F1006988EF006E8CF0007790E10000000000000000007790E100687FCD006E8C + F0007491F1007491F1007491F1006078C900677DC500E0E5F300FFFFFF00FFFF + FF007491F1007491F1007491F1007491F1007491F1007491F1007491F1007491 + F1006988EF006E8CF0007790E10000000000000000007790E100687FCD006E8C + F0007491F1007491F1007491F1007491F1007491F1007491F1007491F1007491 + F1007491F100657FD3005C73C000C3CBE800FFFFFF00FFFFFF00FFFFFF007491 + F1006988EF006E8CF0007790E10000000000000000005C78D5005074EA005477 + EA006886EC006886EC006886EC006886EC006886EC006886EC006886EC006886 + EC006886EC006886EC006886EC006886EC006886EC006886EC006886EC005477 + EA004A6FE9005D78D500000000000000000000000000BFCDF6005971C3007E98 + F1007E99F500819BF500819BF500819BF500819BF500819BF500FFFFFF00FFFF + FF00FFFFFF00FFFFFF00819BF500819BF500819BF500819BF500819BF5007E99 + F5007290F4007E98F100CED8F7000000000000000000BFCDF6005971C3007E98 + F1007E99F500819BF500819BF5007E98F1006B82CD007084C700FFFFFF00FFFF + FF00819BF500819BF500819BF500819BF500819BF500819BF500819BF5007E99 + F5007290F4007E98F100CED8F7000000000000000000CED8F7005971C3007E98 + F1007D98F500819BF500819BF500819BF500819BF500819BF500819BF500819B + F500819BF500819BF5007088D600677CC400FFFFFF00FFFFFF00CFD9FA007E99 + F5007290F4007E98F100CED8F70000000000000000005D76C900597CEE005578 + EE007390F0007491F1007491F1007491F1007491F1007491F1007491F1007491 + F1007491F1007491F1007491F1007491F1007491F1007491F1007390F0005679 + EE005377EE005D77CA00000000000000000000000000000000005975D100768D + DD00829CF5008BA4F6008BA4F6008BA4F6008BA4F6008BA4F600FFFFFF00FFFF + FF00FFFFFF00FFFFFF008BA4F6008BA4F6008BA4F6008BA4F6008BA4F600829C + F500809BF500768DDD00000000000000000000000000000000005975D100768D + DD00829CF5008BA4F6008BA4F6008BA4F60089A2F3007489CD00E3E7F400FFFF + FF008BA4F6008BA4F6008BA4F6008BA4F6008BA4F6008BA4F6008BA4F600829C + F500809BF500768DDD00000000000000000000000000000000005975D100758C + DD007F9AF5008BA4F6008BA4F6008BA4F6008BA4F6008BA4F6008BA4F6008BA4 + F6008BA4F6008BA4F6008BA4F6007A8FD700C9D0E800D4DDFC008BA4F600819B + F500809BF500768DDD00000000000000000000000000566FC2006685EE00567A + F1007C97F400809BF500819BF500819BF500819BF500819BF500819BF500819B + F500819BF500819BF500819BF500819BF500819BF500819BF5007D98F500587B + F1006081ED00566FC2000000000000000000000000000000000000000000607A + D70095ABF50092A9F600A0B4F700A2B6F800A2B6F800A2B6F800FFFFFF00FFFF + FF00FFFFFF00FFFFFF00A2B6F800A2B6F800A2B6F800A2B6F8009FB3F70094AA + F500758AD500607AD7000000000000000000000000000000000000000000607A + D70095ABF50092A9F600A0B4F700A2B6F800A2B6F800A2B6F8008898CF00A2B6 + F800A2B6F800A2B6F800A2B6F800A2B6F800A2B6F800A2B6F8009FB3F70094AA + F500758AD500607AD7000000000000000000000000000000000000000000607A + D7008CA4F4008BA4F6009DB2F700A2B6F800A2B6F800A2B6F800A2B6F800A2B6 + F800A2B6F800A2B6F800A2B6F800A2B6F800A2B6F800A2B6F8009CB1F70092A9 + F400758AD500607AD700000000000000000000000000AEBEF3005B73C5006886 + EC007391F40088A2F60093AAF60096ACF70096ACF70096ACF70096ACF70096AC + F70096ACF70096ACF70096ACF70096ACF70095ACF7008AA3F6007693F4006B89 + ED005B72C500AEBEF30000000000000000000000000000000000000000000000 + 000090A2E2009CB1F7009CB1F700AEBFF800AEBFF800AEBFF8008B99C7008B99 + C7008B99C700AEBFF800AEBFF800AEBFF800AEBFF800A9BBF8009CB1F7008EA1 + E300546FCA000000000000000000000000000000000000000000000000000000 + 000090A2E2009CB1F7009CB1F700AEBFF800AEBFF800AEBFF800AEBFF800AEBF + F800AEBFF800AEBFF800AEBFF800AEBFF800AEBFF800A9BBF8009CB1F7008EA1 + E300546FCA000000000000000000000000000000000000000000000000000000 + 00008599E00094ABF60097ADF700AEBFF800AEBFF800AEBFF800AEBFF800AEBF + F800AEBFF800AEBFF800AEBFF800AEBFF800AEBFF800A5B8F80095ACF7008CA0 + E100546FCA000000000000000000000000000000000000000000607AD600647D + D0006384F3007F9AF50093AAF600A2B6F800A2B6F800A2B6F800A2B6F800A2B6 + F800A2B6F800A2B6F800A2B6F800A2B6F80095ACF700829CF5006686F300657E + D200607AD6000000000000000000000000000000000000000000000000000000 + 00005870C70092A5E300A3B6F700ACBDF800B5C5F900B9C8F900B9C8F900B9C8 + F900B9C8F900B9C8F900B9C8F900B9C8F900ACBDF800A2B6F800A1B5F7005870 + C700BFCDF6000000000000000000000000000000000000000000000000000000 + 00005870C70092A5E300A3B6F700ACBDF800B5C5F900B9C8F900B9C8F900B9C8 + F900B9C8F900B9C8F900B9C8F900B9C8F900ACBDF800A2B6F800A1B5F7005870 + C700BFCDF6000000000000000000000000000000000000000000000000000000 + 0000576FC80090A3E300A0B4F600ACBDF800B5C5F900B9C8F900B9C8F900B9C8 + F900B9C8F900B9C8F900B9C8F900B9C8F900A9BBF8009CB1F70098ADF5005870 + C700BFCDF600000000000000000000000000000000000000000000000000536F + CA006989F3006A8AF300849EF500A8BAF800ADBEF800AEBFF800AEBFF800AEBF + F800AEBFF800AEBFF800ADBEF800A9BBF80087A1F5006D8CF3006B8AF300536F + CA00000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000627DD900879BE300A0B3F500A3B6F800A4B7F8009FB3 + F7009FB3F700A2B6F800A3B6F800A0B4F700879BE300677ECC00627DD9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000627DD900879BE300A0B3F500A3B6F800A4B7F8009FB3 + F7009FB3F700A2B6F800A3B6F800A0B4F700879BE300677ECC00627DD9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000627DD900879BE3009FB3F500A3B6F800A4B7F8009FB3 + F7009FB3F700A2B6F800A3B6F800A0B4F700859BE200667DCC00627DD9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005570CB006780D400718EEE00819BF50090A8F6009FB3F700AFC0F900B1C1 + F900AFC0F900A1B5F70093AAF600849EF5007490ED006981D4005570CB000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005E79D500637BCC007C91DA0092A8F00091A7 + F10092A8F10092A8F000879DE7007B90D9005E79D500AFBFF300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005E79D500637BCC007C91DA0092A8F00091A7 + F10092A8F10092A8F000879DE7007B90D9005E79D500AFBFF300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005E79D500637BCC007C91DA0092A8F00091A7 + F10092A8F10092A8F000869CE7007B90D9005E79D500AFBFF300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000627DD8006179CA007A95F1007D98F500849EF5008BA4F6008EA6 + F6008BA4F60086A0F5007F9AF5007D97F1006179CA00627DD800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000CED8F8007C93E5005771C9005871 + C8005871C8005771C9005E79D6007C93E5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000CED8F8007C93E5005771C9005871 + C8005871C8005771C9005E79D6007C93E5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000CED8F8007C93E5005771C9005871 + C8005871C8005771C9005E79D6007C93E5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000AFBFF3005E77CA006881D4006B85E2007691ED007792 + ED007691ED006C86E2006881D4005E77CA00AFBFF30000000000000000000000 + 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 + 0000000000000000000000000000000000000000000000000000253671003E4D + 8200495991008699DD0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000002737730027377300B6C5F0000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000A3B3EA002F3E73003F4F840044579700495DA100495D + A100495DA100445797003F4F86002F3F7400A3B3EA0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000008197DC0044579500405B + B8005B73C4005A679400293D8500B9C6F100000000000000000000000000293D + 8500293D8500B9C6F10000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000273770003F519200283B7A000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000004159A70035447A00455EAF002F4BAB001E3DA400032699000326 + 9900032699001E3DA4002F4BAB00455EAF0035447A004159A700000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000008197DD002A3C7B003755BB003E5B + BD008798D100465BA000465BA0002A3E83000000000000000000BAC6F200465B + A000465BA0002A3E830000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000002A3C7800435EB90040549800B9C6F10000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00002E42880042538E004760B1000B2EA10003279F0003279F0003279F000327 + 9F0003279F0003279F0003279F000B2EA1004760B10042538E002E4288000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000354787004963B7002B4EC0007188D4006273 + B0004B64B500123DCC00123DCC004A6BD80032499A0032499A004B64B500123D + CC00123DCC004A6BD800384FA200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000304486004260C5001E42BA00445AA50032468E00BAC7F2000000 + 0000000000000000000000000000000000000000000000000000000000003147 + 8F003654B900082DA9000429A8000429A8000429A8000429A8000429A8000429 + A8000429A8000429A8000429A8000429A8000429A800082DA9003654B9003147 + 8F00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000005169BE004A64BA002A4EC400042EB9007289D7006677 + B8004F69C0001240DA000535D8001240DA004E69BF004E69BF004B6EE3000535 + D8001240DA004B6EE3003D55AC00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000034488E004363CC00143BBF003F5FCB00455DAC00354A95000000 + 0000000000000000000000000000000000000000000000000000475FB1004658 + 9A00082EAE00042BAC00042BAC00042BAC00042BAC00042BAC00042BAC00042B + AC00042BAC00042BAC00042BAC00042BAC00042BAC00042BAC00082EAE004658 + 9A00475FB1000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000546CC000384C90002B50C800042FBE00042FBE002B4FC700869A + DC005E74BB004C71ED001344E7000539E600476DED00476DED001344E7001344 + E7004C71ED00536DCA00BECCF5000000000000000000374C9500374C9500374C + 9500374C9500374C9500374C9500374C9500374C9500374C9500374C9500374C + 9500374C9500374C95004364D300143DC700103AC6003E60D1004760B300BDC9 + F4000000000000000000000000000000000000000000A8B7ED003E508E004964 + BF00042CB100042CB100042CB100042CB100042CB100042CB100042CB100042C + B100042CB100042CB100042CB100042CB100042CB100042CB100042CB1004964 + BF003E508E00A8B7ED0000000000000000000000000026356E0026356E002635 + 6E0026356E0026356E0026356E0026356E0026356E0026356E0026356E002635 + 6E0026356E0026356E0026356E0026356E0026356E0026356E0026356E002635 + 6E0026356E0026356E0031458E00000000000000000000000000000000000000 + 0000394E97004D68C5002C52D1000431C7000431C7000431C6000431C6000431 + C5003358D0006478C2005C76D2005378F1001748EC001748EC001748EC005C76 + D200435CB600BECCF5000000000000000000000000004D6DD6001441D8001441 + D8001441D8001441D8001441D8001441D8001441D8001441D8001441D8001441 + D8001441D8001441D8001441D8000838D5000535D5000535D500103ED7004C67 + C1003F57AA00BECCF5000000000000000000000000003F5194004966C8001139 + BF000C35BE000C35BE000C35BE000C35BE000C35BE000C35BE00FFFFFF00FFFF + FF00FFFFFF000C35BE000C35BE000C35BE000C35BE000C35BE000C35BE001139 + BF004966C8003F519400000000000000000000000000435FBC00435FBC00435F + BC00435FBC00435FBC00435FBC00435FBC00435FBC00435FBC00435FBC00435F + BC00435FBC00435FBC00435FBC00435FBC00435FBC00435FBC00435FBC00435F + BC00435FBC00435FBC002C3E7B0000000000000000000000000000000000BCC9 + F400536BBD00385DD7000C39CE000E3ACE000E3ACD000E3ACD000E3ACC000E3A + CC003B5FD600667BC4006981D5006787F300315DEF00315DEF00315DEF006981 + D500455FB800BFCCF5000000000000000000000000004F70DD000637DD000738 + DD000738DD000738DD000738DD000738DD000738DD000738DD000738DD000738 + DD000738DD000738DD000738DD000738DD000738DD000738DD000738DD004167 + E6004F6AC700435BB1000000000000000000000000004D62A9003659CC00123B + C300173FC400173FC400173FC400173FC400173FC400173FC400FFFFFF00FFFF + FF00FFFFFF00173FC400173FC400173FC400173FC400173FC400173FC400123B + C4003558CC004D62A9000000000000000000000000004361C700042CB400042C + B400042CB400042CB400042CB400042CB400042CB400042CB400042CB400042C + B400042CB400042CB400042CB400042CB400042CB400042CB400042CB400042C + B400042CB400042CB40032468800000000000000000000000000000000003E55 + AB004266DD001A45D6001944D5001D47D5001C46D4001C46D4001D47D4004669 + DB0092A4E6006F87D6007F9AF500567AF2004C72F1004C72F1004C72F1007F9A + F5006F87D6004761BA000000000000000000000000005677E4001848E7001D4C + E8001D4CE8001D4CE8001D4CE8001D4CE8001D4CE8001D4CE8001D4CE8001D4C + E8001D4CE8001D4CE8001D4CE8001D4CE8001D4CE8001D4CE8001D4CE8002552 + E9004B70ED00536FCE00BFCCF50000000000000000005069BE002E53CE001D45 + CA00234ACB00234ACB00234ACB00234ACB00234ACB00234ACB00FFFFFF00FFFF + FF00FFFFFF00234ACB00234ACB00234ACB00234ACB00234ACB00234ACB001D45 + CA002D52CE005069BE000000000000000000000000004568DE000D3BD5000E3C + D5000E3CD5000E3CD5000E3CD5000E3CD5000E3CD5000E3CD5000E3CD5000E3C + D5000E3CD5000E3CD5000E3CD5000E3CD5000E3CD5000E3CD5000E3CD5000E3C + D5000E3CD5000C3AD5003F57A5000000000000000000ABBCF100435AA9005B78 + D9002E57E000345CE100385FE200385FE100385FE100385FE0008FA5EE00778B + CE007F93DA0088A2F600819BF50087A1F500899BDD00899BDD00A5B8F800819B + F50088A2F600A5B8F8004E68C30000000000000000006785EA00496FF0005479 + F1005579F1005579F1005579F1005579F1005579F1005579F1005579F1005579 + F1005579F1005579F1005579F1005579F1005579F1005579F1005579F1005176 + F1004B71F1005A7DF2004A64BD0000000000000000005774D4002850D5003459 + D700395ED800395ED800395ED800FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00395ED800395ED800395ED8003459 + D700224BD4005773D3000000000000000000000000004D72EA002652E6002A56 + E7002A56E7002A56E7002A56E7002A56E7002A56E7002A56E7002A56E7002A56 + E7002A56E7002A56E7002A56E7002A56E7002A56E7002A56E7002A56E7002A56 + E7002955E700224FE500465FB40000000000000000004E68C3007B8DCC006383 + EC003E65E6004469E700456AE700466BE700456AE600456AE60096ABF000798C + D0008699DD00A1B5F700A1B5F700B7C7F9006E82CB006E82CB00899CDE00A1B5 + F700A1B5F700B7C7F9004F6AC50000000000000000006E8AEA005E80F200708E + F400718FF400718FF400718FF400718FF400718FF400718FF400718FF400718F + F400718FF400718FF400718FF400718FF400718FF400718FF400718FF4006989 + F3006E8DF300607AD600BFCCF50000000000000000005A77D8003057DA003E63 + DD004569DF004569DF003E5EC800FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF004569DF004569DF004569DF003E63 + DD002B53DA005975D7000000000000000000000000005579F1003F68F000456C + F000456CF000456CF000456CF000456CF000456CF000456CF000456CF000456C + F000456CF000456CF000456CF000456CF000456CF000456CF000456CF000456C + F000446BF0003761EF004C66BD000000000000000000475FB200B8C5EF005175 + ED004E73EB005376EC005376EC005376EC005477EC005376EB006F8CEE00A9B9 + F1006F84CD00C0CEFA00C0CEFA008FA0DF00A9B9F000A9B9F0006F84CD00C0CE + FA00C0CEFA008FA0DF00BFCDF6000000000000000000738EEB006D8CF30087A1 + F5008CA5F6008CA5F6008CA5F6008CA5F6008CA5F6008CA5F6008CA5F6008CA5 + F6008CA5F6008CA5F6008CA5F6008CA5F6008CA5F6008CA5F6008BA4F6007F9A + F500657FD7004C66C0000000000000000000000000005C79DB00375EDF00486C + E3005173E3005173E3004967CD00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF005173E3005173E3005173E300486C + E3003058DE005B78DB000000000000000000000000005D80F2006586F3007491 + F4007B97F4007B97F4007B97F4007B97F4007B97F4007B97F4007B97F4007B97 + F4007B97F4007B97F4007B97F4007B97F4007B97F4007B97F4007B97F4007995 + F4006F8DF300597CF200516BC20000000000000000008095DE00A9BBF800577B + F2006F8DF3006F8DF3006F8DF3006F8DF3006F8DF3006F8DF3006F8DF300708E + F4008AA3F5007F91D3007F91D300B4C3F4006F8DF2006F8DF2008AA3F4007D91 + D2007D8FD300AFBFF3006982D90000000000000000006985E300738EEB007C96 + EC00829BED00829BED00829BED00829BED00829BED00829BED00829BED00829B + ED00839CED0096ABEF00B8C7F900C5D1FA00C1CEFA00ACBDF8008CA5F6004F69 + C200BFCDF600000000000000000000000000000000005C78D5005074EA005477 + EA006886EC006886EC006886EC006886EC006886EC006886EC00FFFFFF00FFFF + FF00FFFFFF006886EC006886EC006886EC006886EC006886EC006886EC005477 + EA004A6FE9005D78D5000000000000000000000000005E7DEA00718DEC007792 + ED007A95EC007A95EC007A95EC007A95EC007A95EC007A95EC007A95EC007A95 + EC007A95EC007A95EC007A95EC007A95EC007A95EC007A95EC007A95EC007993 + ED007590EC006D8AEC00546EC500000000000000000099ACEE00B1C1F9007290 + F400839EF5007F9AF5007D98F5007D98F5007D98F5007D98F5007D98F5007D98 + F5007D98F500BBCAFA00BBCAFA0097ADF7007F9AF5007D98F5007D98F500B0C0 + F800A5B8F7007995F400536ECA000000000000000000506AC100506AC100506A + C100506AC100506AC100506AC100506AC100506AC100506AC100506AC100506A + C100506AC100506AC1009BB0F700BDCBFA00B5C5F90096ACF7006882D800BFCD + F60000000000000000000000000000000000000000005D76C900597CEE005578 + EE007390F0007491F1007491F1007491F1007491F1007491F100FFFFFF00FFFF + FF00FFFFFF007491F1007491F1007491F1007491F1007491F1007390F0005679 + EE005377EE005D77CA000000000000000000000000005771C8005771C8005771 + C8005771C8005771C8005771C8005771C8005771C8005771C8005771C8005771 + C8005771C8005771C8005771C8005771C8005771C8005771C8005771C8005771 + C8005771C8005771C8005A75D1000000000000000000A4B4EE00D3DCFB0087A1 + F50097ADF70092A9F6008EA6F6008AA3F6008AA3F6008AA3F6008AA3F6008AA3 + F6008AA3F60097ADF70096ACF70094ABF6008FA7F6008DA5F6008BA4F6007F9A + F5006C8BF3005B7EF2004760B900000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000516BC20088A2F600A3B6F80098AEF7006F87DA00516BC4000000 + 00000000000000000000000000000000000000000000566FC2006685EE00567A + F1007C97F400809BF500819BF500819BF500819BF500819BF500FFFFFF00FFFF + FF00FFFFFF00819BF500819BF500819BF500819BF500819BF5007D98F500587B + F1006081ED00566FC20000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000096AAEC00DFE6FC00D2DB + FB00B5C5F900B7C7F900B4C4F900ADBEF800AABCF800A6B9F800A0B4F700B3C3 + F800DCE3F900DDE4FC00B6C6F900B3C3F900AFC0F900AEBFF800ACBDF80097AD + F7007F9AF5006787F3004861B800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000536DC4006A8AF3007693F400536DC600BFCDF600000000000000 + 00000000000000000000000000000000000000000000AEBEF3005B73C5006886 + EC007391F40088A2F60093AAF60096ACF70096ACF70096ACF700798AC500798A + C5007F92D10096ACF70096ACF70096ACF70095ACF7008AA3F6007693F4006B89 + ED005B72C500AEBEF30000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000798FD900DCE3FC00E6EB + FD00BECCFA00C1CEFA00C1CEFA00BBCAFA00B4C4F900ACBDF800A4B7F800A4B4 + EA0093A3DB00E7ECFD00D9E1FC00BBCAFA00BCCAFA00BBCAFA00B6C6F9009DB2 + F700839EF5006F8DF300516AC700000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000556FC600577BF200657FDB00BFCDF60000000000000000000000 + 0000000000000000000000000000000000000000000000000000607AD600647D + D0006384F3007F9AF50093AAF600A2B6F800A2B6F800A2B6F800A2B6F800A2B6 + F800A2B6F800A2B6F800A2B6F800A2B6F80095ACF700829CF5006686F300657E + D200607AD6000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000637AC700B8C7F800E6EB + FD00DDE4FC00C6D2FA00C3D0FA00BBCAFA00B3C3F900A5B8F800A7B8F3006177 + C4005068BE00E6ECFD00E7ECFD00E0E6FC00BCCAFA00BBCAFA00B6C6F9009BB0 + F700819BF5007B97F400657FD800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000005670C7005B78DA005670C8000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000536F + CA006989F3006A8AF300849EF500A8BAF800ADBEF800AEBFF800AEBFF800AEBF + F800AEBFF800AEBFF800ADBEF800A9BBF80087A1F5006D8CF3006B8AF300536F + CA00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFCDF600516AC3008699 + DD00DBE2FC00E7ECFD00E6ECFD00E4E9FD00D0DAFB00A6B6EB00536ECA000000 + 0000000000005C73C400A3B3EB00CBD6F900E2E8FD00E0E6FC00DEE5FC00C3D0 + FA008AA0EE006177C80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005570CB006780D400718EEE00819BF50090A8F6009FB3F700AFC0F900B1C1 + F900AFC0F900A1B5F70093AAF600849EF5007490ED006981D4005570CB000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000BFCDF600516B + C7008499DE009CAEEF00A7B8F2008BA0E7007489D100526AC000000000000000 + 000000000000839AE7004F69C2006D82CD0091A7EE009FB2F10094A9EF006C85 + D9005870C3005E79D30000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000627DD8006179CA007A95F1007D98F500849EF5008BA4F6008EA6 + F6008BA4F60086A0F5007F9AF5007D97F1006179CA00627DD800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005975D1005069C0004F69C000526CC7006680DA00D3DBF800000000000000 + 0000000000000000000000000000839AE7004F68BF004F68BF004F68BF005E79 + D5009FB0EF000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000AFBFF3005E77CA006881D4006B85E2007691ED007792 + ED007691ED006C86E2006881D4005E77CA00AFBFF30000000000000000000000 + 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 + 000000000000000000008D8B8B00918F8D00918F8D00918F8D00918F8D00918F + 8D00918F8D00918F8D00918F8D00918F8D00918F8D008D8B8B00000000000000 + 00000000000000000000000000000000000000000000808080007D7D7D009D9D + 9D00C5C5C500C5C5C500C5C5C500C5C5C500C7C7C700C7C7C700C8C8C800CECE + CE00CFCFCF000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000082807F00F7F7F700B2B2B200B2B2B200B2B2B200B2B2 + B200B2B2B200B2B2B200B2B2B200B2B2B200F7F7F70082807F00000000000000 + 00000000000000000000000000000000000000000000B0B0B000A6A6A600F9F8 + F800838382009E9E9E0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000273465007287CC005971 + C3005971C3005971C3005971C3005971C3005971C3005971C3005971C3005971 + C3005971C3005971C3005971C3005971C3002734650000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000030458D0025356E004B494900717170007171700071717000717170007171 + 700071717000717170007171700071717000717170004B49490025356E000000 + 000000000000000000000000000000000000000000000000000086868600DCDC + DC00ACABA9008988870080808000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000002A3A73006B86E1001639 + AC001639AC001639AC001639AC001639AC001639AC001639AC001639AC001639 + AC001639AC001639AC001639AC002446B7002A3A730000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000029386E00283564004D4C4B00767675006261600062616000626160006261 + 600062616000626160006261600062616000767675004D4C4B0028356400768C + CF00000000000000000000000000000000000000000000000000000000008F8F + 8F00DCDCDB00A5A4A2008A898800D3D3D3000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000002C3E7B006984E1000328 + A4000328A4000328A4000328A4000328A4000328A4000328A4000328A4000328 + A4000328A4000328A4000328A400163AB2002C3E7B0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000344892004358A100425F + BF00425FBF0041528C0076757500ACACAC00ACACAC00ACACAC00ACACAC00ACAC + AC00ACACAC00ACACAC00ACACAC00ACACAC00ACACAC007675750041528C00425F + BF00425FBF004358A10000000000000000000000000000000000000000000000 + 0000CECECE00EBEBEA00C0BFBE008A8988007E7E7E00D3D3D300000000000000 + 0000000000000000000000000000B6C3F0003E55A10000000000000000000000 + 0000000000000000000000000000000000000000000033458900738DE7000A32 + B8000A32B800375BD2006B86E0006480DE00163CBC000A32B8000A32B8000A32 + B8000A32B8000A32B8000A32B8001C42C2003345890000000000000000003449 + 9100334589005E76C90000000000000000000000000037477F00CDD6F6000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000324588004260C5001036 + B600042CB200021A6B00021A6B00021A6B00021A6B00021A6B00021A6B00021A + 6B00021A6B00021A6B00021A6B00021A6B00021A6B00021A6B00021A6B00042C + B2001036B6004260C50000000000000000000000000000000000000000000000 + 00007E7E7E00CECECE00EBEBEA00A5A4A2008A8988007E7E7E00000000000000 + 00000000000000000000B6C3F000273872002E417F0000000000000000000000 + 00000000000000000000000000000000000000000000364A91007E95E3002349 + C8002C51CF00607BD80044589B007A8CCE006884E200143CC300113AC200113A + C200113AC200113AC200113AC2001E45C800364A910000000000869BE100627C + D600607CDA004D62A4000000000000000000000000006D789F004B62B1000000 + 000000000000000000000000000000000000000000000000000000000000293C + 7A00283871002838710028387100283871002838710028387100283871002838 + 71002838710028387100293C7A000000000000000000354A8F004362CB00042E + B900042EB900042EB900042EB900042EB900042EB900042EB900042EB900042E + B900042EB900042EB900042EB900042EB900042EB900042EB90003269C000325 + 940003269C004362CB0000000000000000000000000000000000000000000000 + 0000D3D3D3007E7E7E00CECECE00C0BFBE00A5A4A2008A898800D3D3D3000000 + 000000000000B6C5F100283873006472A000364E960000000000000000000000 + 000000000000000000000000000000000000000000005068BE00788DD3005B7A + E0005375E400586DB4006D85D6004559A0007F96E1004063D8001841CA001841 + CA001841CA001841CA001841CA001841CA0042579E00000000003D55A8003B60 + DB002F55D600607EE200BDC9F40000000000000000007D89B10035447D00A3B4 + EB00000000000000000000000000000000000000000000000000000000003447 + 8400949DBE00435DB600435DB600435EB6004761B7004963B8004A64B8004E67 + BB004E67BB004C66BA002B3C760000000000000000003C529D004C6CD8002048 + CE00234ACF00234ACF00234ACF00234ACF00234ACF00234ACF00234ACF00234A + CF00234ACF00234ACF00234ACF00234ACF00234ACF00234ACF002243B2002343 + AC001F41B1004B6BD80000000000000000000000000000000000000000000000 + 00000000000000000000D3D3D300CECECE00EBEBEA00C0BFBE00706F6E005C5C + 5C009DADE2006979AE008192CC007E8EC7006077C40000000000000000000000 + 00000000000000000000000000000000000000000000000000005D76CF006073 + BB00798ED200556FC70000000000BDCBF400576CB300859EF0002751DE002751 + DE002751DE002751DE002751DE002751DE00667CCB004058A8006B82D0002751 + DE002751DE003D63E3004E68C0000000000000000000707DAA004B66C0004959 + 9400000000000000000000000000000000000000000000000000000000000000 + 0000BAC6F20094A0C8007A8ED1002647B6002C4CB8003150B9003755BB00415E + BF00435FBF003856BC003143830000000000000000004157A4005373DE00385D + D9003C61D9003C61D9003C61D9003C61D9003C61D9003C61D9003C61D9003C61 + D9003C61D9003C61D9003C61D9003C61D9003C61D9003C61D9003C61D9003C61 + D900365BD8005272DE0000000000000000000000000000000000000000000000 + 00000000000000000000000000007E7E7E00CECECE00EBEBEA00737271006367 + 74003D5093008195D7005871C3007A8CCA00A2B3E90000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000738B + DD004760BA00BECCF5000000000000000000445CB0008AA1EC002F59E6002F59 + E6002F59E6002F59E6002F59E6002F59E6006A88EE00748DE1006A88EE002F59 + E6002F59E6003C63E800516CC700000000000000000054639C006980CC004964 + BF00546CC0000000000000000000000000000000000000000000000000000000 + 0000000000003C5094006E7FBC00516CC9003858C1003E5CC2004462C5004F6B + C800536ECA004764C600344789000000000000000000445BAB005B7BE4005072 + E2005676E3005676E3005676E3005676E3005676E3005676E3005676E3005676 + E3005676E3005676E3005676E3005676E3005676E3005676E3005676E3005676 + E3004C6FE1005979E40000000000000000000000000000000000000000000000 + 0000000000000000000000000000D3D3D3007E7E7E00A7A7A70081859400455B + A6007084C7005A75D2004F6AC7008496D300B7C5F10000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000005570CC008EA4EF00355FED00355F + ED00355FED00355FED00355FED00355FED003E67EF00456CEF003962ED00355F + ED00355FED00436AEF004761BA0000000000000000003D5196008596D0003F5F + C80040539500556EC30000000000000000000000000000000000000000000000 + 000000000000384D9600586FBA00516DCD004563C9004C69CC00516DCD005C76 + D0005F7AD100536FCD00374C8F0000000000000000004C65BA006A89EF007E99 + F100A4B6F500A8BAF500A8BAF500A8BAF500A8BAF500A8BAF500A8BAF500A8BA + F500A8BAF500A8BAF500A8BAF500A8BAF500A8BAF500A8BAF500A8BAF50090A7 + F3007A95F1006786EF0000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000A2B1E600788ED9008CA4 + F5006B8AF0005071DF003257D000123ABF004E5F9B00465CAC00000000000000 + 00000000000000000000000000000000000000000000000000006D87DD00637A + C7007087D8005D77D30000000000D2DBF8005B72C10089A2F300456CF000456C + F000456CF000456CF000456CF000456CF0007F98EA00647AC40090A3E400456C + F000456CF000587CF2005671CE000000000000000000B3C0EF006475B0007089 + DA002D52CE004E6CCF004F64AF005E77CC009CAEED0000000000000000009CAE + ED004C65BC005E78D1005C78D8005371D700607CD9006681DB006A85DC00758E + DF007A92E0006883DB003E539D000000000000000000506AC1006F8DF30090A7 + F5008C90A3006C6A6A006C6A6A006C6A6A006C6A6A006C6A6A006C6A6A006C6A + 6A006C6A6A006C6A6A006C6A6A006C6A6A006C6A6A006C6A6A006C6A6A00B6C6 + F8008AA3F5006B8AF30000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000BFCCF5004862BC0095ACF7007C97 + F400718FF4003D63E3000534D1000431C600556EC200475890004F67B7000000 + 00000000000000000000000000000000000000000000AEBEF2005B72C200869F + F0007B95EF00536CBF00D2DBF8007990E2007C8FD4007995F4004C72F1004C72 + F1004C72F1004C72F1004C72F1004C72F1006C83CD005771CE00687DC7005277 + F1004C72F1006C8BF3007990E2000000000000000000000000004960AE0095A5 + D900113DCE002F55D4004B6CDA004D64B200455BA5004359A6004258A500485E + A6005269B9006480DE005A78DD00627EDE006E88E100728CE1007790E3008299 + E400869CE600718BE1004158A3000000000000000000526CC3006C8BF3009CB1 + F700959392009593920095939200959392009593920095939200959392009593 + 920095939200959392009593920095939200959392009593920095939200C6D2 + FA0092A9F6006787F30000000000000000000000000000000000000000000000 + 0000000000000000000000000000BFCCF5004963BD007E92DA008AA3F600859F + F5007E99F5002250E9000F3FDD000534D1002146C400556FC20042538B000000 + 00000000000000000000000000000000000000000000657FD9008195DD006F8D + F3007794F400738AD5005D78D300556DC10089A0EC006686F3005277F1005277 + F1005277F1005277F1005277F1005277F1005E75C300D2DBF8004F69C5007B97 + F4005E80F200879FEF00D2DBF800000000000000000000000000889CE2008090 + C5001F49D600244DD7003057D9005A79E0005A78DE005976D6005C78D600617F + E2006B86E300617FE2006B87E400708BE5007993E7007F97E800849BE80092A7 + EB0090A5EA007690E500455CAA000000000000000000000000005974CF006782 + DB009C9A9900A09D9C0096939200969392009693920096939200969392009693 + 9200969392009693920096939200969392009693920096939200A09D9C007A94 + ED006681DB005974CF0000000000000000000000000000000000000000000000 + 00000000000000000000BFCDF500889BDD00AFC0F900B4C4F900D1DBFB00B6C6 + F9006A8AF300476EF000345FEF002250E9000534D1000431C6003356C900394C + 8E00B9C6F200000000000000000000000000000000004E68BF008FA6F3005B7E + F2006183F2007693F40094A9F300829CF5006485F3006183F2006183F2006183 + F2006183F2006183F2006183F2006A8AF3004E68BF0000000000000000004F68 + C1004E68BF006F89DF00000000000000000000000000000000000000000098AB + EA0098ABED004066E600466BE7005376E900587AE9005D7DEA006987EC006E8B + EC00738FEC007E98EE00839CEF0089A1EF0094A9F10099ADF10098ADF100CCD5 + F400B2C2F5006886EB004C65B900000000000000000000000000000000005A75 + D1006B6968009D9A9900615F5F00BFBFBE00BCBCBB00BAB9B800B4B3B200B1B0 + AE00ADACAB00A6A5A400A2A1A0009F9D9C0097959300615F5F009D9A99005771 + C8005A75D1000000000000000000000000000000000000000000000000000000 + 000000000000000000004F6BC600B9C5EF00ABB9E9008E9FD9006F83CB0096A6 + DD00B2C2F8005579F100466DF000345FEF001040DD000534D1000935C8005B6F + B2003A4D8F00CED7F7000000000000000000000000004F69C0008CA5F6006082 + F2006989F3006989F3006989F3006989F3006989F3006989F3006989F3006989 + F3006989F3006989F3006989F3006C8BF3004F69C00000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A2B0E0007E99F0004E73EC005F80EE006686EF006B89EF007692F0007B96 + F100809AF1008BA3F30091A8F30096ACF400A1B4F500A0B3F500A5B7F500677D + C800ABB9E8009BB0F4005069BF00000000000000000000000000000000000000 + 000074727100A3A09F0067656500E2E1E100DFDFDE00DDDCDC00D7D7D600D5D4 + D300D1D1D000CBCAC900C8C7C600C4C3C200BCBBBA0067656500A3A09F000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000546FCB005975D1006580D9007990E300BFCDF600546F + CB008FA0DA007491F4005479F100466DF0002250E9001040DE000534D1004161 + CC00596BAC0037488700314075003C539C0000000000506AC1008AA3F6006A8A + F3007D98F5007E99F5007B97F400708EF400708EF400708EF400708EF400708E + F400708EF4007A96F4007995F4007491F400506AC10000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005A74C900B4C1EC00829DF4006C8BF3007391F4007995F400829DF40087A1 + F5008DA5F50098AEF6009DB2F600A3B6F700A1B5F700A5B8F700BECBF600617C + D8005A74C900A4B4E800546EC500000000000000000000000000000000000000 + 000085838200AFADAB0073717000F2F2F200F1F1F000F0EFEF00EDECEC00EBEB + EA00E9E9E900E5E5E500E3E3E200E1E0E000DCDBDB0073717000AFADAB000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000007488CF00B1BFF000829DF500466DF000345FEF002250E900042D + B600082BA100788AC60040539300B8C5F200000000005B76D300526CC300526C + C300526CC300526CC300526CC3007388CF00A2B2E700B3C3F900A0B4F6008FA1 + E0006D82CC00526CC300526CC300526CC300607BD70000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000093A8ED006D82CE00B1C1F8008AA3F600829DF5009AAFF700A1B5 + F700A6B9F800ACBDF800A8BAF800AFC0F900B5C4F4007E93D6005A76D2000000 + 000000000000C1CDF6005771C900000000000000000000000000000000000000 + 00008E8C8A00B5B3B10079777600F6F6F600F5F5F500F5F5F400F3F3F300F2F2 + F200F1F0F000EEEEEE00ECECEC00EBEAEA00E7E7E60079777600B5B3B1000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000007991E400687DCA00B3C1F1005277F100466DF000345FEF001035 + B200788CCF009CA8CF00BAC7F300000000000000000000000000000000000000 + 0000000000000000000000000000718AE0006178C900B5C4F500A0B3F300546D + C40092A7EC000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000BBC9F50095A6DE00C2CEF300B9C8F900A8BAF800A4B7 + F800A7B9F800B6C6F900C2CFFA00C1CEF800647CCD00647EDA00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000908F8E00959391007F7D7C00F7F7F700F7F7F700F7F7F700F6F6F600F6F6 + F600F5F5F500F4F4F400F3F3F200F2F1F100EFEFEF007F7D7C00959391000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000092A7EC006179CA009CB1F7004F74F100385CD2008196 + DA009FACD6004F67B50000000000000000000000000000000000000000000000 + 000000000000000000009FB1F0006F84CF00A2B2E900A9BBF800AABCF7008C9F + DF00647ACA009FB1F00000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000007C93E400667FCC008799D900BDC9F100C0CD + F600C1CDF600A5B5EA008497DB00657DCD009DB1EF0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000008B898800EBEBEA00EDECEC00EEEEED00F1F1F100F3F2 + F200F4F4F400F6F6F600F7F7F700F7F7F700F7F7F7008B898800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000005670C700647ED2008A9DDC005B74 + CA00C1CDF6000000000000000000000000000000000000000000000000000000 + 0000000000005770C800A1B3EF009BB0F7009BB0F7009BB0F7009BB0F7009BB0 + F7009BB0F7008DA2EB005770C800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000918F8D00E4E4E300E6E5E400E7E7E600EAEAE900ECEB + EB00EDEDEC00F0EFEF00F1F1F100F3F2F200F5F5F500918F8D00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000005771C8008EA0DF00A5B2DD00C1CD + F600000000000000000000000000000000000000000000000000000000000000 + 0000000000005871C800A5B7F300A3B6F800A3B6F800A3B6F800A3B6F800A3B6 + F800A3B6F80095AAF1005871C800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000908F8E00959391009593910095939100959391009593 + 91009593910095939100959391009593910095939100908F8E00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000005771C800A3B0DE005C75CB000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000647EDB008D9FDF00B4C4F900ADBEF800A8BAF800A6B9F800AABC + F800ACBDF800879ADC006B85DE00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000006B85DE005A74CF005872C9005872C9005B76 + D2006B85DE000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D3D3D300C2C2C200C0C0 + C000263159002631590026315900263159002631590026315900263159002631 + 5900263159002631590026315900263159002631590026315900263159002631 + 59002E3D7100C0C0C000D6D6D600000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005065A9005065A9005065A9005065A9005065A9005065A9005065A9005065 + A9005065A9005065A9005065A9005065A9005065A9005065A9005065A9005065 + A9002736660000000000000000000000000000000000C4C4C4004E63A6003D51 + 93003D5193003D5193003D5193003D5193003D5193003D5193003D5193003D51 + 93003D5193003D5193003D5193003D5193003D5193003D5193003D5193003D51 + 93003D5193004E63A600DBDBDB00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000002F448B002E3F7B002A3B78002A3B78002A3B + 78002A3B78002A3B78002A3B78002A3B78002A3B78002A3B78002A3B78002A3B + 78002A3B7800354B970000000000000000000000000000000000000000000000 + 00004F69BF000328A300FFFFFF00E5E9F600E5E9F600E5E9F600E5E9F600E5E9 + F600E5E9F600E5E9F600E5E9F600E5E9F600E5E9F600E5E9F600E5E9F6004F69 + BF002C3D7B0000000000000000000000000000000000000000003D57AE00435D + B30007299A0007299A0007299A0007299A0007299A0007299A0007299A000729 + 9A0007299A0007299A0007299A0007299A0007299A0007299A0007299A000628 + 9A00435DB3003D57AE0000000000000000000000000000000000000000000000 + 00005972C900374D9E0034499400425AAE00768DD80000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000BAC6F2004F609F002C3D7B004E66B700506AC400506A + C400506AC400506AC400506AC400506AC400506AC400506AC400506AC400506A + C400506AC4002D3F7F0000000000000000000000000000000000000000000000 + 0000506AC400042AAA00FFFFFF00E6EAF700E6EAF700E6EAF700E6EAF700E6EA + F700E6EAF700E6EAF700E6EAF700E6EAF700E6EAF700E6EAF700E6EAF700506A + C4002F40800000000000000000000000000000000000000000003E58AF004660 + B9000F32A4001032A4001032A4001032A4001032A4001032A4001032A4001032 + A4001032A4001032A4001032A4001032A4001032A4001032A4001032A4000D30 + A3004661B9003E58AF0000000000000000000000000000000000000000005C75 + CF00536CC2005B77D4005874D200566EC1004C60A100354A9300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000BAC6F20031458D00526ECE002F4183000328A000042CB200042C + B200042CB200042CB200042CB200042CB200042CB200042CB200042CB200042C + B200506CC9003043850000000000000000000000000000000000000000000000 + 0000506BC800042CB100FFFFFF009397A5009397A5009397A5009397A5009397 + A5009397A5009397A5009397A5009397A5009397A500E6EAF800E6EAF800506B + C8003245860000000000000000000000000000000000000000003F59B0004863 + BF00173AAE0015359F0015349C0015349C0015349C0015349C0015349C001534 + 9C0015349C0015349C0015349C0015349C0015349C0015349C0015359F001538 + AE004A65C0003F59B000000000000000000000000000000000005E79D3005269 + B900345CE4001744DB000434D200254CCF004666D300586DB6008499DF000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000374D9A002C459A000732C1006582E30035498F00042BAE000430C2000430 + C2000430C2000430C2000430C2000430C2000430C2000430C2000430C2000430 + C2004F6DD300364B930000000000000000000000000000000000000000000000 + 0000506ED200042FBF00FFFFFF00E6EBF800E6EBF800E6EBF800E6EBF800E6EB + F800E6EBF800E6EBF800E6EBF800E6EBF800E6EBF800E6EBF800E6EBF800506E + D200374B92000000000000000000000000000000000000000000415BB2004D6A + CA002649BF002343AC00E0DFDE00E0DFDE00E0DFDE00E0DFDE00E0DFDE00E0DF + DE00E0DFDE00E0DFDE00E0DFDE00E0DFDE00E0DFDE00E0DFDE002343AC002246 + BE00506CCB00415BB200000000000000000000000000607AD1006881D5005176 + F1001344E8000639E3000537DD000434D2000433CE000935C900586EB700374A + 8D00849BE0000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000BDC9 + F4002E489F000833C5000D3AD0007791EB00374C9700042DB6000432CA000432 + CA000432CA000432CA000432CA000432CA000432CA000432CA000432CA000432 + CA004F6FD9003A4F990000000000000000000000000000000000000000000000 + 00004F6ED6000431C500FFFFFF009398A6009398A6009398A6009398A6009398 + A6009398A6009398A6009398A6009398A6009398A600E6EBF900E6EBF9004F6E + D6003A4F99000000000000000000000000000000000000000000425CB3004F6D + D0002E52C8002949B300DCDBDA00F3F4F800F3F4F800F3F4F800F3F4F800F3F4 + F800F3F4F800F3F4F800F3F4F800F3F4F800DCDBDA00DCDBDA002949B300284D + C500526FD100425CB300000000000000000000000000455EB7007C96EA004D72 + F1002856EE001445E8000639E3000535D8000434D2000433CE004162D100596E + B700384A8E000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000425A + AE005271D9005676E1006583E800859EEF003B509D00042EBC000434D1000434 + D1000434D1000434D1000434D1000434D1000434D1000434D1000434D1000434 + D1004F70DF003C53A10000000000000000000000000000000000000000000000 + 00004F6FDB000432CD00FFFFFF00E5EAF900E5EAF900E5EAF900E5EAF900E5EA + F900E5EAF900E5EAF900E5EAF900E5EAF900E5EAF900E5EAF900E5EAF9004F6F + DB003D539F000000000000000000000000000000000000000000435DB400516F + D5003559CF003050BA00D8D7D600F3F4F800F3F4F800F3F4F800F3F4F800F3F4 + F800F3F4F800F3F4F800F3F4F800F3F4F700D8D7D600D8D7D6003050BA002F54 + CD005573D700435DB4000000000000000000000000004A62B600859DEE005176 + F1003C65EF002856EE001445E8000537DD000535D8000434D2000935C9004162 + D1005A6FB800859BE00000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000445C + AF000432CA000432CA000432CA000432CA000432CA000535D9000537E1000537 + E1000537E1000537E1000537E1000537E1000537E1000537E1000537E1000537 + E1004F73EA00445CAF0000000000000000000000000000000000000000000000 + 00005073E5000536D900FFFFFF009398A8009398A8009398A8009398A8009398 + A8009398A8009398A8009398A8009398A8009398A800E6EBFB00E6EBFB005073 + E500425AAC000000000000000000000000000000000000000000455FB6005676 + E0004367DD003D5DC700DDDDDC00BABED100F3F3F700F2F3F700F2F3F700F2F3 + F700F2F3F700F2F3F700F2F3F700F2F3F700DDDDDC00DDDDDC003D5DC7003C61 + DB005B7AE100455FB6000000000000000000000000005570CB00859BE6007C97 + F4006384F3005075F1003C65EF001445E8000639E3000537DD000434D2000433 + CE000935C9005A70B9003A4D910096A7E1000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004760 + B700063AE800073BE900073BE900073BE900073BE900073BE900073BE900073B + E900073BE900073BE900073BE900073BE900073BE900073BE900073BE900063A + E8005075EF004760B70000000000000000000000000000000000000000000000 + 00005174EA00093BE200FFFFFF00E6EBFC00E6EBFC00E6EBFC00E6EBFC00E6EB + FC00E6EBFC00E6EBFC00E6EBFC00E6EBFC00E6EBFC00E6EBFC00E6EBFC005174 + EA00465FB20000000000000000000000000000000000000000004660B7005778 + E5004B6EE3004463CC00E1E1E000858FAF00DBDEE800F2F3F700F2F3F700F2F3 + F700F2F3F700F2F3F700F2F3F700DBDDE700E1E1E000E1E1E0004463CC004368 + E2005D7DE6004660B7000000000000000000000000008197E5007386CE0091A8 + F6007693F4006384F3005075F1002856EE001445E8000639E3000535D8000434 + D2000433CE004162D100979DB700888786000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004963 + BA000E41EC001042EC001143EC001143EC001143EC001143EC001143EC001143 + EC001143EC001143EC001143EC001143EC001143EC001143EC001143EC000E41 + EC005378F1004963BA0000000000000000000000000000000000000000000000 + 00005579EF001344E800FFFFFF00E7ECFC00E7ECFC00E7ECFC00E7ECFC00E7EC + FC00E7ECFC00E7ECFC00E7ECFC00E7ECFC00E7ECFC00E7ECFC00E7ECFC005579 + EF004962B90000000000000000000000000000000000000000004761B8005A7B + EA005376E9004A69D000E5E4E4007C86A700838BAC00B7BBCF00F5F6F900FEFE + FE00FEFEFE00E2E5EC00B6BACD008089A900E5E4E400E5E4E4004A69D000496E + E7006080EB004761B800000000000000000000000000000000004D66BE0094A5 + E300829DF5007794F4006384F3003C65EF002856EE001445E8000537DD000535 + D8000434D2008794C700C5C5C500B3B3B300B0B0B00000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004C65 + BC001F4FED002553EE002654EE002654EE002654EE002654EE002654EE002654 + EE002654EE002654EE002654EE002654EE002654EE002654EE002654EE001E4E + ED005A7DF2004C65BC0000000000000000000000000000000000000000000000 + 00005F81F2002856EE00FFFFFF00E9EEFD00E9EEFD00E9EEFD00E9EEFD00E9EE + FD00E9EEFD00E9EEFD00E9EEFD00E9EEFD00E9EEFD00E9EEFD00E9EEFD005F81 + F2004D66BD0000000000000000000000000000000000000000004963BA005E80 + F2006283F2005876DA00ECEBEB007780A2007780A1007780A100F1F2F600F1F2 + F600F1F2F600C1C6D500747E9F00737D9F00ECEBEB00ECEBEB005876DA00577B + F2006686F3004963BA00000000000000000000000000000000000000000090A4 + EA009AABE5009FB3F700849EF5006384F3005075F1003C65EF001445E8000639 + E3009BABE100CECECE00C4C4C400BBBBBB00B5B4B3008A898800B1B0B0000000 + 0000000000000000000000000000000000000000000000000000000000004D66 + BE002755EE00305CEE00325EEF00325EEF00325EEF00325EEF00325EEF00325E + EF00325EEF00325EEF00325EEF00325EEF00325EEF00325EEF00325EEF002755 + EE005E80F2004D66BE0000000000000000000000000000000000000000000000 + 00006485F300325EEF00FFFFFF00EAEFFD00EAEFFD00EAEFFD00EAEFFD00EAEF + FD00EAEFFD00EAEFFD00EAEFFD00EAEFFD00EAEFFD00EAEFFD00EAEFFD006485 + F3004E67BF0000000000000000000000000000000000000000004A64BB006082 + F2006989F3005F7BDA00EFEFEE00747E9F00747E9F00737D9F00F1F2F600F1F2 + F600F1F2F600E8EAEF00717A9D00717A9D00EFEFEE00EFEFEE005F7BDA005E80 + F2006989F3004A64BB0000000000000000000000000000000000000000000000 + 0000556DC0009BABE5009FB3F7007794F4006384F3005075F1002856EE00A7B7 + ED00E7E7E700D7D7D700CECECE00C4C4C400C5C5C500B5B4B4008B8A89000000 + 0000000000000000000000000000000000000000000000000000000000004E68 + BF00305CEE003B64EF003D66EF003D66EF003D66EF003D66EF003D66EF003D66 + EF003D66EF003D66EF003D66EF003D66EF003D66EF003D66EF003D66EF002F5B + EE006183F2004E68BF0000000000000000000000000000000000000000000000 + 00006989F3003D66EF00FFFFFF00989DAA00989DAA00989DAA00989DAA00989D + AA00989DAA00989DAA00989DAA00989DAA00989DAA00EBF0FD00EBF0FD006989 + F3004F68C00000000000000000000000000000000000000000004B65BC006384 + F300718FF4006580DB00F2F1F100717A9D00717A9D00717A9C00F1F2F600F1F2 + F600F1F2F600F1F2F5006F7899006F789900F2F1F100F2F1F1006580DB006485 + F3006C8BF3004B65BC0000000000000000000000000000000000000000000000 + 000091A4EB00566FC1009CADE600849EF5007794F4006384F300B7C6F400F5F5 + F500EFEFEF00E0E0E000D7D7D700CECECE00BBBBBB00C5C5C500B5B5B500B1B1 + B10000000000000000000000000000000000000000000000000000000000516A + C1004169F0005075F1005378F1005378F1005378F1005378F1005378F1005378 + F1005378F1005378F1005378F1005378F1005378F1005378F1005378F1004068 + F0006888F300516AC10000000000000000000000000000000000000000000000 + 00007391F4005277F100FFFFFF00EDF1FE00EDF1FE00EDF1FE00EDF1FE00EDF1 + FE00EDF1FE00EDF1FE00EDF1FE00EDF1FE00EDF1FE00EDF1FE00EDF1FE007391 + F400516BC20000000000000000000000000000000000000000004D67BE006787 + F300809BF500728BDC00F7F7F6006C7697006B7597006B759600F0F1F500F0F1 + F500F0F1F500CDD1DC006972950069729400F7F7F600F7F7F600728BDC007290 + F400718FF4004D67BE0000000000000000000000000000000000000000000000 + 0000000000000000000091A5EB009DAEE6009FB3F700CCD5F300F8F8F800FAFA + FA00F9F9F900EFEFEF00E7E7E700E0E0E000CECECE00C4C4C400BBBBBB00B6B5 + B5008B8A8900000000000000000000000000000000000000000000000000526C + C3004A70F0005A7DF2005E80F2005E80F2005E80F2005E80F2005E80F2005E80 + F2005E80F2005E80F2005E80F2005E80F2005E80F2005E80F2005E80F200496F + F0006B8AF300526CC30000000000000000000000000000000000000000000000 + 00007794F4005C7FF200FFFFFF009DA1AC009DA1AC009DA1AC009DA1AC009DA1 + AC009DA1AC009DA1AC009DA1AC009DA1AC009DA1AC00EFF3FE00EFF3FE007794 + F400526CC30000000000000000000000000000000000000000004D67BF006989 + F30086A0F5007990DC00F9F9F900697295006972940068729400CDD0DC00F0F1 + F500F0F1F5006F77980067709100666F9100F9F9F900F9F9F9007990DC007894 + F4007491F4004D67BF0000000000000000000000000000000000000000000000 + 00000000000000000000000000005972C500D0D5E900F7F7F700F7F7F700F8F8 + F800FAFAFA00F5F5F500EFEFEF00E7E7E700D7D7D700CECECE00C4C4C400C7C7 + C700A6A6A500A9A9A9000000000000000000000000000000000000000000536D + C4005075F1006485F3006989F3006989F3006989F3006989F3006989F3006989 + F3006989F3006989F3006989F3006989F3006989F3006989F3006989F3005075 + F1006E8DF300536DC40000000000000000000000000000000000000000000000 + 00007C97F4006787F300FFFFFF00F0F3FE00F0F3FE00F0F3FE00F0F3FE00F0F3 + FE00F0F3FE00F0F3FE00F0F3FE00F0F3FE00F0F3FE00F0F3FE00F0F3FE007C97 + F400536DC40000000000000000000000000000000000000000004E68C0006B8A + F3008DA5F6007F95DD00FBFAFA0067709100666F9100666F9100656E9100656E + 9100646E9000646E8F00636D8F00636D8F00FBFAFA00FBFAFA007F95DD007F9A + F5007794F4004E68C00000000000000000000000000000000000000000000000 + 0000000000000000000000000000A2B2EC00BAB9B800ECECEC00F6F6F600F7F7 + F700F8F8F800F9F9F900F5F5F500EFEFEF00E0E0E000D7D7D700CECECE00C3C3 + C300BFBFBE00908F8F000000000000000000000000000000000000000000566F + C600597CF2007290F4007D98F500809BF500809BF500809BF500809BF500809B + F500809BF500809BF500809BF500809BF500809BF500809BF5007D98F500587C + F200718FF400566FC60000000000000000000000000000000000000000000000 + 0000849EF5007C97F400FFFFFF00F2F5FE00F2F5FE00F2F5FE00F2F5FE00F2F5 + FE00F2F5FE00F2F5FE00F2F5FE00F2F5FE00F2F5FE00F2F5FE00F2F5FE00849E + F500556FC6000000000000000000000000000000000000000000506AC100708E + F4009CB1F7008D9FDE00FDFDFD00616A8D00606A8C00606A8C005F698B005F69 + 8B005F698A005F688A005E6789005E678900FDFDFD00FDFDFD008D9FDE008BA4 + F6007C97F400506AC10000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000B7B7B700ECECEC00F7F7 + F700F6F6F600F8F8F800FAFAFA00F9F9F900EFEFEF00E7E7E700E0E0E000CECE + CE00D3D3D3009B9A990000000000000000000000000000000000000000005770 + C700567AF2006D8CF3007B97F400839EF500839EF500849EF500859FF500859F + F500859FF500859FF500849EF500849EF500839EF500819BF5007A96F4005479 + F1006F8DF3005770C70000000000000000000000000000000000000000000000 + 000088A2F600829DF500FFFFFF0058595C0074757A00F3F6FE0058595C007475 + 7A00F3F6FE0058595C0074757A00F3F6FE0058595C0074757A00F3F6FE0088A2 + F6005670C7000000000000000000000000000000000000000000516BC2007290 + F400A4B7F80093A4DE00FEFEFE00FEFEFE00FEFEFE00FEFEFE00FEFEFE00FEFE + FE00FEFEFE00FEFEFE00FEFEFE00FEFEFE00FEFEFE00FEFEFE0093A4DE0091A8 + F6007F9AF500516BC20000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000BEBCBB00EDEC + EC00F7F7F700F7F7F700F8F8F800FAFAFA00F5F5F500EFEFEF00E7E7E700DADA + DA00DADAD9009C9A990000000000000000000000000000000000000000005871 + C8004A70F0005D80F2006989F3007290F4007491F4007491F4007491F4007491 + F4007491F4007491F4007491F4007491F4007290F4006F8DF3006888F300486F + F0006A8AF3005871C80000000000000000000000000000000000000000000000 + 000089A2F60086A0F500FFFFFF00A5A4A2006C6D7100F4F7FE00A5A4A2006C6D + 7100F4F7FE00A5A4A2006C6D7100F4F7FE00A5A4A2006C6D7100F4F7FE0089A2 + F6005871C8000000000000000000000000000000000000000000526CC3007491 + F400ABBDF80099A9DE00E5E5E500E5E5E500E5E5E500E5E5E500E5E5E500E5E5 + E500E5E5E500E5E5E500E5E5E500E5E5E500E5E5E500E5E5E50099A9DE0097AD + F700819BF500526CC30000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000B8B8B700BEBD + BC00EDECEC00F6F6F600F7F7F700F8F8F800F9F9F900F5F5F500EFEFEF00E6E6 + E600CFCFCE009F9E9E0000000000000000000000000000000000000000005B76 + D2005872C9005872C9005872C9005872C9005872C9005872C9005872C9005872 + C9005872C9005872C9005872C9005872C9005872C9005872C9005872C9005872 + C9005872C9005B76D20000000000000000000000000000000000000000000000 + 00007D97EE0091A7F1009AAEF200191918007F8FC200A1B4F300191918007F8F + C200A1B4F300191918007F8FC200A1B4F300191918007D8DC2009AAEF2007D97 + EE005872C9000000000000000000000000000000000000000000546EC5007491 + F400B7C7F900B9C8F900B9C8F900B9C8F900B9C8F900B9C8F900B9C8F900B9C8 + F900B9C8F900B9C8F900B9C8F900B9C8F900B9C8F900B9C8F900B9C8F90099AF + F700819BF500546EC50000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B8B8B800EBEAEA00F6F6F600F5F5F500F7F7F700F9F9F900F9F9F900CDCC + CB00A4A4A3000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005872C9005872C9005872C9005F5F5F004F5E92005872C9005F5F5F004F5E + 92005872C9005F5F5F004F5E92005872C9005F5F5F004F5E92005872C9005872 + C9005B76D2000000000000000000000000000000000000000000556FC6006D8C + F300A6B9F800AFC0F900B1C1F900B2C2F900B2C2F900B2C2F900B2C2F900B2C2 + F900B2C2F900B2C2F900B2C2F900B2C2F900B2C2F900B1C1F900ADBEF800849E + F5007894F400556FC60000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000B6B4B300D7D5D500ECECEB00F6F6F600F8F8F700E6E5E500A7A6 + A600000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D2D1D0008080800000000000D2D1D0008080 + 800000000000D2D1D0008080800000000000D2D1D00080808000000000000000 + 00000000000000000000000000000000000000000000000000005670C7006382 + EA00849DEE00889FEE008AA0EE008AA0EE008AA0EE008AA0EE008AA0EE008AA0 + EE008AA0EE008AA0EE008AA0EE008AA0EE008AA0EE008AA0EE00879FEE007B94 + ED006886EB005670C70000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000B2B1B100A8A6A600BCBAB900B3B1B000A7A6A6000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000808080009090900000000000808080009090 + 9000000000008080800090909000000000008080800090909000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000DEDEDE006B80 + C20027335F0026335D002A386D00C3C3C300C3C3C300C4C4C400D1D1D100D5D5 + D500000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000004C64B5004656 + 8A0098A5CE0098A4CD00828FB90031458A00DEE3F80000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D1D1D100CFCFCF00C9C9C900C7C7C700C5C5 + C500C5C5C500C5C5C50091A1D70029386D00C5C5C500C8C8C800D3D3D3000000 + 00000000000000000000000000000000000000000000314792009BA8D200526D + C5002647B5002041B0001B3DAE00909ECB00293D7F0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000BAC6F200364A91004F63 + A5008793BC00A7B0CF00D9DFF300D9DFF400D9DFF400D9DFF400D9DFF400D9DF + F400D9DFF400D9DFF400D9DFF400D9DFF400D9DFF400D9DFF400D9DFF400DADF + F200A5AECE003A4D930000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000029396C00526297008494C8000000000000000000000000000000 + 000000000000000000000000000000000000000000002E4285008FA0DB004A66 + C6003C5AC0003655BD003151BA00697FC9002B3E7C0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000435BAE007182BB005C77 + D3007B90D7006979B200A3ADCF00C0CBEE00C0CBEE00C0CBEE00C0CBEE00C0CB + EE00C0CBEE00C0CBEE00C0CBEE00C0CBEE00C0CBEE00C0CBEE00C0CBEE00C4CE + EF00CFD7F200A3ADD00000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00008093D9005466A5004059AA008393C8000000000000000000000000000000 + 0000000000000000000000000000000000000000000030448A008296D9005D77 + D000516DCA004C68C8004764C6006079CC002D3F810000000000000000000000 + 00000000000000000000000000008196DC00293A7500293A740033478C000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000002E4696001F3376001F3376001F3376001F3376001F33 + 76001F3376001F3376001F3376001F3376001F3376002E469600000000000000 + 00000000000000000000000000000000000000000000354992008699DA004868 + D200607BD8008699DA005C6CA700B7C4ED00B7C4ED00B7C4ED00B7C4ED00B7C4 + ED00B7C4ED00B7C4ED00B7C4ED00B7C4ED00B7C4ED00B7C4ED00B7C4ED00B7C4 + ED00BCC8EE00CFD6EF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004B62 + B20036457A00324DAA00032597008494CC000000000000000000000000000000 + 000000000000000000000000000000000000000000006D83D4005669A80092A4 + E300788FDC00758DDB00768DDA004B69CD0032468B0000000000000000000000 + 0000000000008398DE00505F9800A4B1DD003E5BBD003957BB005F77C7005160 + 9400647CCB000000000000000000000000008E8C8A00BBB9B700BBB9B700BBB9 + B700BBB9B700BBB9B70029429500042DB700042DB700042DB700042DB700042D + B700042DB700042DB700042DB700042DB7004F6ED70029429500BBB9B700BBB9 + B700BBB9B700BBB9B700BBB9B7008E8C8A00000000003B509D008EA3E9005D7B + E0005D7BE0008EA3E9003B509D00A7B7EE00A7B7EE00A7B7EE00A7B7EE00A7B7 + EE00A7B7EE00A7B7EE00A7B7EE00A7B7EE00A7B7EE00A7B7EE00A7B7EE00A7B7 + EE00A7B7EE00C4CEF00000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000045569000546C + BD004762BF007186CE002B4BB6008496D4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000425AAE005468 + A90097A9E50092A5E5008399E1003C5ECD003448900000000000000000000000 + 0000000000003B53A2009EABD5005B75CC003252BE002D4EBB002748B70094A2 + D000364A8D0000000000000000000000000093918F00D8D8D700D8D8D700D8D8 + D700D8D8D700D8D8D7002F4AA4001942CD001D46CE001E46CE001E46CE001E46 + CE001E46CE001E46CE001E46CE001C45CE005474E1002F4AA400D8D8D700D8D8 + D700D8D8D700D8D8D700D8D8D70093918F00000000003D54A40095A9ED006885 + E6006885E60095A9ED003D54A400A5B6F000A5B6F0001442D9001442D9001442 + D9001442D9001442D9001442D9001442D9001442D9001442D9001442D900A5B6 + F000A5B6F000C3CEF10000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000003C54A300516CC7004F6B + C8007184C600344581007184C6009BABE0000000000000000000B9C6F1002E42 + 8800B9C6F1000000000000000000000000000000000000000000000000006E86 + D700384E9A00384E99004264D4004062D200374B950000000000000000000000 + 00000000000034488D0094A5DF005470CD004765C8004260C6003C5BC200788C + D0003143840000000000000000000000000098969400F5F5F400F5F5F400F5F5 + F400F5F5F400F5F5F4003652B4003D63E300476BE300486CE400486CE400486C + E400486CE400486CE400486CE400466BE3005D7DEA003652B400F5F5F400F5F5 + F400F5F5F400F5F5F400F5F5F40098969400000000004058AB009EB1F200738E + EB00738EEB009EB1F2004058AB00A9BAF300A9BAF3001443DE001443DE001443 + DE001443DE001443DE001443DE001443DE001443DE001443DE001443DE00A9BA + F300A9BAF300C7D0F30000000000000000000000000000000000000000000000 + 0000CED7F60092A4E3006179C70033488F002D3C71005568AA004161CB007287 + CC00334687004A5EA40033468700A6B2DA0000000000BAC6F2002F4489004A5E + A4002F448900BAC6F20000000000000000000000000000000000000000000000 + 0000000000003D54A400486BDF004669DC003C529F0000000000000000000000 + 0000000000003D55A5008294D3007F95E0006D86DA006882D700647FD6006982 + D60035498E0000000000000000000000000099989600A3A19F00A3A19F00A3A1 + 9F00A3A19F00A3A19F003D5DC6007994ED0088A0EF00A6B7F200B5C4F500B5C4 + F500B5C4F500B3C2F400A2B4F200859EEF006382EB003D5DC600A3A19F00A3A1 + 9F00A3A19F00A3A19F00A3A19F0099989600000000004660B700B2C2F80094AB + F60094ABF600B2C2F8004660B700B0C0F800B0C0F80088A1F50088A1F50088A1 + F50088A1F500B0C0F80088A1F50088A1F50088A1F50088A1F50088A1F500B0C0 + F800B0C0F800CBD5F70000000000000000000000000000000000536BBE004C5F + 9F004A66C5003857C0002447BA007288D200344889004F6FDB004258A4004F67 + B9004A6BD800123DCC004A6BD8004F67B9003950A1004F67B9004A6BD800123D + CC004A6BD8004F67B90000000000000000000000000000000000000000000000 + 0000000000004058A9004B6EE3004A6DE1003E55A50000000000000000000000 + 0000000000006F85D7005A6DB00094A7E6008197E2007E95E0007E95E0005673 + D400384C93000000000000000000000000000000000000000000000000000000 + 000000000000000000004C6BD2003F5EC8003F5EC8003F5EC8003F5EC8003F5E + C8003F5EC8003F5EC8003F5EC8003F5EC8003F5EC8004C6BD200000000000000 + 000000000000000000000000000000000000000000004962B900BFCDFA00ACBD + F800ACBDF800BFCDFA004962B900B4C4F900B4C4F9001647EC001647EC001647 + EC001647EC00B4C4F9001647EC001647EC001647EC001647EC001647EC00B4C4 + F900B4C4F900CED8F800000000000000000000000000000000003A4F96005A74 + C900042FC000042FC000042FC000728ADB003A4F96005273E200485FAF00536E + C4004B6EE3000535D8001240DA004B6EE300536DC4004B6EE3001240DA001240 + DA004B6EE300536EC40000000000000000000000000000000000000000000000 + 000000000000435CAF004F72E8004D70E5004159AA0000000000000000000000 + 00000000000000000000465FB500586CB2009BADE80097A9E8008BA0E5004969 + D5003A5099000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000003C59BC00708CEB006683E6005374 + E1004F70DE005070DA004F6ED700314A9A000000000000000000000000000000 + 000000000000000000000000000000000000000000004A63BB00CAD5FB00BFCD + FA00BECCFA00CAD5FB004A63BB00B7C7F900B7C7F9001849EC001849EC001849 + EC001849EC00B7C7F9001849EC001849EC001849EC001849EC001849EC00B7C7 + F900B7C7F900D0D9F800000000000000000000000000000000004056A3005071 + DE000433CF000433CF000433CF00728DE4004056A3005779E9007F96E3004962 + B7005772CF001344E7000539E6001344E700476DED001344E7000539E6004C71 + ED005772CF00455EB70000000000000000000000000000000000000000000000 + 0000000000004862B9005579F0005578EE00465FB50000000000000000000000 + 000000000000000000000000000000000000BFCDF8004159A7005474E1005272 + DF004056A3000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000425FC3007893EE004C6EDE00355A + D6001C45CE00042FC0004F6FD900354DA0000000000000000000000000000000 + 000000000000000000000000000000000000000000004C66BD00D6DEF900DCE3 + F900DBE2F900D6DEF9004C66BD00C3D0FA00C5D1FA00305CEE00305CEE00305C + EE00305CEE00C5D1FA00305CEE00305CEE00305CEE00305CEE00305CEE00C5D1 + FA00C3D0FA00D6DEF900000000000000000000000000000000004A64BB006384 + F3004C72F1004C72F1004C72F10088A1F5004A64BB005E80F2003862EF005D80 + F2008CA2EC005E78D5005378F1001748EC001748EC001748EC005378F1004A64 + BE00BFCCF5000000000000000000000000000000000000000000000000000000 + 0000000000004963BB00597CF200597CF2004963BA0000000000000000000000 + 00000000000000000000000000000000000000000000445CAD005878E5005676 + E3004259A9000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000004360C5006C88E700738DE4006E88 + E2006781DE005A77D9005976D6003750A3000000000000000000000000000000 + 00000000000000000000000000000000000000000000536ECA004D67BE004D67 + BE004D67BE004D67BE004D67BE00C9D5FB00CBD6FB003E67F0003E67F0003E67 + F0003E67F000CBD6FB003E67F0003E67F0003E67F0003E67F0003E67F000CBD6 + FB00C9D5FB00D9E0F900000000000000000000000000000000004B65BD006F8D + F3006F8DF3006F8DF3006F8DF30095ACF7004B65BD006283F200466DF0006888 + F30092A7EC006780D7006787F300315DEF00315DEF00315DEF006686F3004C66 + C000BFCDF6000000000000000000000000000000000000000000000000000000 + 0000000000004A64BC005D80F2005C7FF2004A64BC0000000000000000000000 + 000000000000000000000000000000000000000000004760B3005D7DEA005B7B + E800455DAF000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000004F6DD3004360C500405DBC003F5A + B8003E58B4003B54AC003952A900435EB7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000004F68BF00CFD9FB00D2DBFB004B71F1004B71F1004B71 + F1004B71F100D2DBFB00B1C1F900B1C1F900B1C1F900B1C1F900B1C1F900D2DB + FB00CFD9FB00DCE3F900000000000000000000000000000000004C66BE007995 + F40090A8F60090A8F60090A8F600A0B4F7004C66BE006586F3007391F40097AB + ED00536CC3007C97F400567AF2004C72F1004C72F1004C72F100567AF2006D85 + D9004E68C100BFCDF60000000000000000000000000000000000000000000000 + 0000000000004D67BE006485F3006485F3004D67BE0000000000000000000000 + 000000000000000000000000000000000000000000004C66BD006787F2006484 + F0004A63B9000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000DFDEDE00EFEE + EE00C9C8C7008C8A880000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000516BC200D9E1FC00DDE4FC006586F3006586F3006586 + F3006586F300DDE4FC006586F3006586F3006586F3006586F3006586F300DDE4 + FC00D9E1FC00E3E8FB00000000000000000000000000000000004E68C00089A0 + EC00AFC0F900B9C8F900B8C7F900ACBDF8004E68C0006C8BF3005E77CA006D86 + DA009CB1F700819BF50087A1F5009EB3F7007D93DE009DB2F70087A1F50088A2 + F60099AFF7006C85DA0000000000000000000000000000000000000000000000 + 0000000000004E68BF006888F3006E8DF3005B73C4004E68C100839AE700BFCD + F60000000000000000000000000000000000000000004E68BF006B8AF3006989 + F3004D67BE000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000DFDEDE00EFEE + EE00C9C8C7008C8A880000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000526CC300DEE5FC00E1E7FD00E2E8FD00E2E8FD00E2E8 + FD00E2E8FD00E2E8FD00E2E8FD00E2E8FD00E2E8FD00E2E8FD00E2E8FD00E1E7 + FD00DDE4FC00E4EAFB00000000000000000000000000000000006681DA00768C + D400B5C5F900B9C8F900B4C4F900A7B9F8004F69C100718FF4006179CC007189 + DC00ACBDF800A1B5F700AFC0F9008397DF00536EC7008297DF00AEBFF800A1B5 + F700AABCF8006F89DC0000000000000000000000000000000000000000000000 + 0000000000004F69C0006B8AF300849EF500B9C7F700A8B8ED00768AD1005C74 + C500536CC0007991E300AEBEF30000000000000000004F69C0006F8DF3006D8C + F3004F69C0000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000DFDEDE00EFEE + EE00C9C8C7008C8A880000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000546DC400E2E8FD00E6EBFD00CDD8FB00CDD8FB00CDD8 + FB00CDD8FB00CDD8FB00CDD8FB00CDD8FB00CDD8FB00CDD8FB00CDD8FB00E6EB + FD00E2E8FD00E6EBFB0000000000000000000000000000000000000000006881 + DB00657BC9007388D2008196DB008EA5F000506AC2008FA7F600ADBCF0005D76 + CA00879CE000B4C4F900879CE0005D76CA00C1CDF600556FC800869ADF00B3C3 + F900879BE000556FC80000000000000000000000000000000000000000000000 + 000000000000516BC2007290F400829CF500819BF500809BF5007E99F50089A2 + F6009BB0F700B4C4F900B7C7F900AEBEF200788ED600647BC8007C97F4007693 + F400516BC2000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000DFDEDE00EFEE + EE00C9C8C7008C8A880000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000566FC600E7ECFD00EBF0FD0096ACF70098AEF70098AE + F70098AEF70098AEF70098AEF70098AEF70098AEF70098AEF70098AEF700EBF0 + FD00E7ECFD00EBEFFD0000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000005871CF00A8B9F600AABC + F800B6C3F100677FCE00AEBEF000B3C3F9000000000000000000C1CDF6005874 + CF00C1CDF6000000000000000000000000000000000000000000000000000000 + 000000000000526CC3007391F40087A1F50086A0F500859FF500839EF500829D + F500829CF5007F9AF50086A0F50099AFF700B9C8F900C2CFFA008CA5F6007A96 + F400526CC3000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000DFDEDE00EFEE + EE00C9C8C7008C8A880000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000005771C800E9EEFD00EDF1FE0095ACF7009EB3F7009FB3 + F7009FB3F700A0B4F700A0B4F7009FB3F7009FB3F7009EB3F7009BB0F700EDF1 + FE00E9EEFD00EDF1FD0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000758BD200ACBC + F500A9BBF800C9D5FB0096ACF700A1B5F7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000536DC4006384F30093AAF6008FA7F6008BA4F60089A2F60088A2 + F60087A1F500849EF500839EF500829DF500819BF50087A1F500839EF5007F9A + F500536DC4000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000DFDEDE00EFEE + EE00C9C8C7008C8A880000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000005872C900EAEFFD00ECF0FE00EEF2FE00EFF3FE00EFF3 + FE00F0F3FE00F0F3FE00F0F3FE00F0F3FE00EFF3FE00EFF3FE00EFF3FE00ECF0 + FE00EAEFFD00EFF2FD0000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000006883DC00768B + D300A7B9F400849EF5007592F4009EB3F7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000009FB1F0005D77CF005771C700637CCF007993E90086A0 + F40095ACF70097ADF70092A9F6008FA7F6008DA5F6008BA4F6008AA3F60086A0 + F500556FC6000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000009E9C9A009997 + 9500959391008B89870000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000005B76D2005872C9005872C9005872C9005872C9005872 + C9005872C9005872C9005872C9005872C9005872C9005872C9005872C9005872 + C9005872C9005872C90000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000093A7ED009DAFEE0086A0F50094ABF6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D3DBF90093A7ED005874CD005C75 + C900647ED300879EEB008EA6F60099AFF70099AFF70094ABF60090A8F6008AA3 + F6005670C7000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000005D76CA0096A8E7008DA5F6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000CED8 + F800859CE9005771C9006179CC006680D60092A8F00097ADF7009EB3F70089A2 + F6005771C8000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000C1CDF6005B74CB008FA2E5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000AFBFF3007C93E4005771 + C8005771C9000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000DDDDDD00C9C9C900C7C7C700C2C2C2008FA0D5003A4A + 7A003A4A7A00C0C0C000C1C1C100C7C7C700D5D5D500DCDCDC00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000C7C7C700C0C0C0006679B80027325B0027325B0027325B0027325B002732 + 5B0027325B0027325B0027325B0027325B0027325B00273462007385C800C7C7 + C700D6D6D6000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000003A4B82004B5B + 94004B5A9300B2BFEE0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000002A3A750003279E0003279E0003279E0003279E000327 + 9E0003279E0003279E0003279E0003279E0003279E00435DB6003F58B0000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D4D4D400C5C5C50030428100273567002735670027356700273567002735 + 670027356700273567002735670027356700273567002F428100D1D1D1000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000B8C6F2003D4E8E003F59B2000F30 + 9F000F309F004B5E9F003D4E8E00B8C6F2000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000002D3D7A00092DA5006077C400768ACC00092DA5006077 + C40096A6D800092DA5006077C4008A9BD4000328A300435EBA004059B1000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000002D4188008895C1008895C1008895C1008895C1008895 + C1008895C1008895C1008895C1008795C1006474A9002D438D00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000B9C8F2003D5091004C5FA1000F31A3000327 + 9F0003279F003F5AB6004C5FA1003D5091000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000002E407F00092EAA008C9DD700B5C0E600092EAA008C9D + D700C5CEEB00092EAA008C9DD700BDC7E800042AA900425EBD00415AB2000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000BAC6F200283C8200283C8200283C8200283C8200283C + 8200283C8200283C8200283C8200283C82002E479500BAC6F200000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000DEDEDE00DEDEDE00CECECE00CECECE00C7C7C700C0C0C000C0C0 + C000C0C0C000C0C0C000C0C0C00092A2D700394B8A0093A2D800C0C0C000DEDE + DE00000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000003F5193004C61A500435EBB000328A3000328 + A3000328A3000F32A800435EBB004C61A500BBC8F20000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000334688000A31B5006E85D30091A2DD000A31B500607A + CF0098A8E0000A31B500607ACF0091A2DD00042CB4004361C700435CB4000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000002B408A00283C7E00283C7E00283C + 7E00283C7E00283C7E00283C7E002B408A000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000007F92D8003E4C7E0093A5E4000000 + 000000000000BDC9F300374E9D004F68BC004A6FE800657ECF00455FBB000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000004153940041539400415394001338B100042A + AB00042AAB004360C1004153940041539400465CA90000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000035498E000A33BB0091A3E000B5C1EA000A33BB008C9F + DF00BDC8ED000A33BB008C9FDF00CDD5F100042EB9004362CA00445DB5000000 + 0000000000000000000000000000000000003A53A7002D438E002D438E002D43 + 8E002D438E002D438E002D438E002D438E002D438E002D438E002D438E002D43 + 8E002D438E002D438E002D438E002D438E002D438E002D438E002D438E002D43 + 8E002D438E002D438E002D438E003A53A7000000000000000000000000000000 + 0000000000000000000000000000000000002E4185005467A7005068BB000000 + 0000000000003950A000506ABE004A6EE5006C8BF1007389D4004661BC000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000425596001439B500042B + B000042BB0004361C40042559600000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000384B9300042FBF00042FBF00042FBF00042FBF00042F + BF00042FBF00042FBF00042FBF00042FBF00042FBF004363CF00455EB6000000 + 0000000000000000000000000000000000002F44910094A7E90099ABEA009BAD + EA009BADEA009CAEEA009CAEEA009CAEEA009CAEEA009CAEEA009CAEEA009CAE + EA009CAEEA009CAEEA009CAEEA009CAEEA009CAEEA009CAEEA009CAEEA009BAD + EA009AACEA0099ABEA008CA1E7002F4491000000000000000000000000000000 + 00000000000000000000000000008296DB0043528900516BBE00384C95000000 + 0000BDC9F400516BC1004A6EE600204EE800738AD500435DB600BECCF5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00004D64B7004F65B20000000000000000000000000043569900143ABA00042D + B500042DB5004361C700435699000000000000000000000000004960AF00BAC9 + F300000000000000000000000000000000000000000000000000000000000000 + 000000000000000000003C529D000A36CA008CA1E600B5C3EF000A36CA008CA1 + E600B8C5EF000A36CA008CA1E600C1CCF2000432CA004365D7004760B8000000 + 00000000000000000000000000000000000032499900617EE100708AE400718B + E400718BE400718BE400718BE400718BE400718BE400718BE400718BE400718B + E400718BE400718BE400718BE400718BE400718BE400718BE400718BE400718B + E400718BE400708AE4009CAEEC00324999000000000000000000000000000000 + 0000000000000000000000000000475994004D69C7000932BD00556DBD003E54 + A400556EC700204FEB006C8BF300758BD700BFCCF50000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004B62 + B5004665CC004559A0000000000000000000000000004559A0001C42C3000D36 + BF000D36BF004766CF004559A0000000000000000000000000004559A0005067 + B700445AA300BCCAF40000000000000000000000000000000000000000000000 + 000000000000000000003F55A2000735D0000735D0000735D0000735D0000735 + D0000735D0000735D0000735D0000735D0000735D0004467DB004862B9000000 + 000000000000000000000000000000000000334B9D005D7BE1006683E3006683 + E3006683E3006683E3006683E3006683E3006683E3006683E3006683E3006683 + E3006683E3006683E3006683E3006683E3006683E3006683E3006683E3006683 + E3006683E3006683E3009BAEED00334B9D000000000000000000000000000000 + 0000000000000000000000000000566AB2003356CB000431C6005D78D7005570 + C9004C71ED006C8BF300758CD7004761BA000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000004C63B6005B70 + B6004969D300465AA300465AA300465AA300465AA300465AA300284DCA001A42 + C7001A42C7004D6CD300465AA300465AA300465AA300465AA300465AA3004666 + D200536ABB00445CA70000000000000000000000000000000000000000000000 + 000000000000000000004259A800103ED700A0B2EF00A0B2EF00103ED700A0B2 + EF00A0B2EF00103ED700A0B2EF00A0B2EF00103ED700486BE0004963BA000000 + 000000000000000000000000000000000000354DA1005474E1005B7AE1005B7A + E1005B7AE1005B7AE1005B7AE1005B7AE1005B7AE1005B7AE1005B7AE1005B7A + E1005B7AE1005B7AE1005B7AE1005B7AE1005B7AE1005B7AE1005B7AE1005B7A + E1005B7AE1005B7AE10099ACEE00354DA1000000000000000000000000000000 + 00000000000000000000A8B7ED005470CF000E3ACC000434D1004268E800476D + ED002050ED00778CD8004862BC00BFCCF5000000000000000000000000000000 + 000000000000000000000000000000000000000000004D65B8005E72BA00516F + D5005472D8005C77D1005974D1005974D1005A74D1005C77D1002A50CF00274D + CD00274DCD005876D9005D78D1005A74D1005974D1005974D1005B75D100284E + CE004D6DD700556DBE00BDC9F400000000000000000000000000000000000000 + 000000000000000000004760B3005B668B008895BE008996BF008B98C1008C99 + C2008D9AC3008F9CC500909DC600919EC7008B9ACB005073E9004B65BC000000 + 0000000000000000000000000000000000003952A9004065E000466AE100466A + E100466AE100466AE100466AE100466AE100466AE100466AE100466AE100466A + E100466AE100466AE100466AE100466AE100466AE100466AE100466AE100466A + E100466AE100466AE10093A8EE003952A9000000000000000000000000000000 + 000000000000AAB9EF004D61A5000D3CD7000537DE000539E600053AEB000C3F + EC005579F1006B85D8005F76C6004B65BE009DB0EE0000000000000000000000 + 0000000000000000000000000000000000004B63B7005574DC003A5FD9003C61 + D9004064DB003F63DB003F63DB003F63DB003F63DB003F63DB004064DB004064 + DB004064DB004064DB004064DB003F63DB003F63DB003F63DB003F63DB003F63 + DB003B60D900395ED900556FC3004B63B7000000000000000000000000000000 + 000000000000000000004A62B70039456E0054659F005566A0005869A300596A + A4005B6CA6005D6EA8005F70AA006071AB00919DC6005477ED004C66BD000000 + 0000000000000000000000000000000000003B55AC00385FE0003C62E1003C62 + E1003C62E1003C62E1003C62E1003C62E1003C62E1003C62E1003C62E1003C62 + E1003C62E1003C62E1003C62E1003C62E1003C62E1003C62E1003C62E1003C62 + E1003C62E1003C62E10091A7EF003B55AC000000000000000000000000000000 + 0000000000005E77CC005971C5000537E1000539E800053AEB001244EC002654 + EE003B64EF007B97F40086A0F500839BEB006A80CB00526DCA00000000000000 + 0000000000000000000000000000000000004D65BA005777E2004266DE00486B + DF004C6EDF004C6EDF004C6EDF004C6EDF004C6EDF004C6EDF004C6EDF004C6E + DF004C6EDF004C6EDF004C6EDF004C6EDF004C6EDF004C6EDF004C6EDF004C6E + DF00486BDF004266DE005770C7004D65BA000000000000000000000000000000 + 000000000000000000004C66BD0036426A0051629B0052639C0054659E005667 + A0005768A1005A6BA4005B6CA5005C6DA6008E9AC200597CF1004D67BE000000 + 0000000000000000000000000000000000003C56AE002E56DE003259DE003259 + DE003259DE003259DE003259DE003259DE003259DE003259DE003259DE003259 + DE003259DE003259DE003259DE003259DE003259DE003259DE003259DE003259 + DE003259DE003259DE008EA4EE003C56AE000000000000000000000000000000 + 0000D1DAF8004D62AE005B79DF00053AEA00053AEB00093DEB002E5AEE00426A + F000567AF200809BF50093AAF600AEBFF8007287CE00546ECB00000000000000 + 000000000000000000000000000000000000BFCBF5005C76CB006381E7005274 + E3005778E5005475E4005274E3005274E3005374E3005677E5005979E5005979 + E5005979E5005979E5005677E4005374E3005274E3005274E3005475E4005576 + E4005374E3006381E7004A63B600BFCBF5000000000000000000000000000000 + 000000000000000000004F69C000333E63004A5A8F004B5B90004E5E93005060 + 9500516196005464990055659A0056669B008A95BB006283F2004F69C0000000 + 0000000000000000000000000000000000003D57AF001C47D8001E49D8001E49 + D8001E49D8001E49D8001E49D8001E49D8001E49D8001E49D8001E49D8001E49 + D8001E49D8001E49D8001E49D8001E49D8001E49D8001E49D8001E49D8001E49 + D8001E49D8001E49D80089A0EB003D57AF000000000000000000000000000000 + 0000546BBC005C7CE8001849EC001446EC002856EE003D66EF006D8CF3009BB0 + F700BDCBF9007487CE00536EC90091A5EB000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFCCF5004D66BC005C77 + D0005F7FEC004C65B8004C65B8004C65B8004C65B8004C65B8007792EE00738F + EE00738FEE007994EF004C65B8004C65B8004C65B8004C65B8004C65B8005E7F + EC005C77D0004D66BC0000000000000000000000000000000000000000000000 + 00000000000000000000506AC100313C5F004857890049588A004C5B8D004D5C + 8E004F5E90005160920053629400546395008994B7006686F300506AC1000000 + 0000000000000000000000000000000000003E58B0001340D5001441D5001441 + D5001441D5001441D5001441D5001441D5001441D5001441D5001441D5001441 + D5001441D5001441D5001441D5001441D5001441D5001441D5001441D5001441 + D5001441D5001441D500869DE9003E58B0000000000000000000000000000000 + 0000647DD4003D66EF000A3EEB002F5BEE00446BF0006888F300BAC8F800A2B1 + E6006E83CD009FB1EF0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000BFCCF5004D66 + BF004F74ED004D66BB000000000000000000000000004D66BB007F9AF1007E99 + F1007E99F1007893F0004D66BB000000000000000000000000004D66BB005A76 + D2004D66BF00BFCCF50000000000000000000000000000000000000000000000 + 00000000000000000000516BC2002F395A004554840046558500485787004A59 + 89004B5A8A004E5D8D004F5E8E00516090008690B2006A8AF300516BC2000000 + 0000000000000000000000000000000000003F59B1000B39D3000B39D2000B39 + D2000B39D2000B39D2000B39D2000B39D2000B39D2000B39D2000B39D2000B39 + D2000B39D2000B39D2000B39D2000B39D2000B39D2000B39D2000B39D2000B39 + D2000B39D2000B39D200839AE8003F59B1000000000000000000000000000000 + 00006280E8002654EE002251ED005C7FF20094ABF600B7C6F6006E84CE005C77 + D400AEBEF3000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000BFCD + F6005673D5004E68BF000000000000000000000000004E68BF0089A2F5008BA4 + F5008BA4F5007C97F4004E68BF000000000000000000000000004E68BF004E68 + C100BFCDF6000000000000000000000000000000000000000000000000000000 + 00000000000000000000546DC4002B3452003F4C7700414E790043507B004451 + 7C0046537E00485580004A5782004B588300838CAB007391F400546DC4000000 + 000000000000000000000000000000000000415BB2000433CE000433CE000433 + CE000433CE000433CE000433CE000433CE000433CE000433CE000433CE000433 + CE000433CE000433CE000433CE000433CE000433CE000433CE000433CE000433 + CE000433CE000433CE008299E600415BB2000000000000000000000000005972 + CA006183F2008FA7F600AABAF100637BCC006B84DD00D3DBF900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000506AC1009FB3F700A4B7 + F800A4B7F80086A0F500506AC100000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000556EC50029314E003C4870003E4A7200404C7400424E + 7600434F770046527A0047537B0049557D008189A6007794F400556EC5000000 + 000000000000000000000000000000000000415BB3000432CB000432CB000432 + CB000432CB000432CB000432CB000432CB000432CB000432CB000432CB000432 + CB000432CB000432CB000432CB000432CB000432CB000432CB000432CB000432 + CB000432CB000432CB008198E400415BB30000000000000000007C93E6007A8F + D700A2B4EF008699DA005C75CC00D3DBF9000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000516BC200516BC200516BC200ADBEF800B1C1 + F900B1C1F90091A8F600516BC200516BC2005973CE0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000566FC600272F49003B466C003B466C003E496F003F4A + 7000414C7200434E740045507600465177007E86A1007B97F400566FC6000000 + 000000000000000000000000000000000000425CB4000432C9000432C9000432 + C9000432C9000432C9000432C9000432C9000432C9000432C9000432C9000432 + C9000432C9000432C9000432C9000432C9000432C9000432C9000432C9000432 + C9000432C9000432C9008198E300425CB40000000000000000005872CA009BAC + E7005C75CC007C93E60000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000627CD2005F7FEA00748FEC00B7C7F900BDCB + FA00BDCBFA00A7B9F8007E98ED006080EA00546FCA0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000005871C800242B4400343D5C0038426200384262003943 + 63003B4565003D4767003F496900404A6A00787F99007E99F5005871C8000000 + 000000000000000000000000000000000000445EB5000430C4000430C4000430 + C4000430C4000430C4000430C4000430C4000430C4000430C4000430C4000430 + C4000430C4000430C4000430C4000430C4000430C4000430C4000430C4000430 + C4000430C4000430C4008197E200445EB5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000BFCDF600536DC6006781DA00AEBFF800C2CF + FA00C3D0FA0094ABF6006E87DB00536DC6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000005872C90027304F00262D4400282E4400292F4500292F + 4500292F4500292F4500292F4500292F4500515870007794F4005872C9000000 + 000000000000000000000000000000000000445EB500889BDB00889BDB00889B + DB00889BDB00889BDB00889BDB00889BDB00889BDB00889BDB00889BDB00889B + DB00889BDB00889BDB00889BDB00889BDB00889BDB00889BDB00889BDB00889B + DB00889BDB00889BDB00889BDB00445EB5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000BFCDF600536EC70094ABF6009FB3 + F700A0B4F700718ADD00536EC700BFCDF6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000005872CA00879FF0008FA6F00093A9F20095AAF20095AA + F20095AAF20095AAF20094AAF20092A8F200849DF0007A93E7005872CA000000 + 0000000000000000000000000000000000004C67C400445EB500445EB500445E + B500445EB500445EB500445EB500445EB500445EB500445EB500445EB500445E + B500445EB500445EB500445EB500445EB500445EB500445EB500445EB500445E + B500445EB500445EB500445EB5004C67C4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000C1CDF6006F88DC00829C + F500829CF500556FC700C1CDF600000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000C1CDF6005874 + CF005874CF000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000D3D3D300C0C0 + C0004153940034458000344580009FADDD00C0C0C000C0C0C000C0C0C000C0C0 + C000C0C0C000C0C0C000CBCBCB00CECECE00CECECE00DADADA00DEDEDE00DEDE + DE00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000B8C5 + F1002338820014309000143090002F407C00A8B8E80000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000BECCF4003D56AA003A57 + BC008CA2EB008695CC008695CC002650DD003A57BC003D56AA00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000DCDCDC00C4C4C400C1C1 + C1003E5194003E5194003E5194003E5194003E5194003E5194003E5194003D50 + 92003B4D8B003647800034447C00324177002C3B6C002A38670029366200B1BC + E500C4C4C400DDDDDD00000000000000000000000000D3D3D3005F5D5E005E5C + 5C0037363800B9B9B90000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000435BB5004967CD003761 + EE008A9AD4004964C1004964C10095ABF5003761EE004967CD00BECCF5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000637A + CC0091A4E50095A9EC0095A9ED0091A6ED008EA4ED008BA2ED00849CEB008199 + E9007E96E400788FDB00758CD7007187D1006A7FC500687CC0006F7FB700455A + A30000000000000000000000000000000000000000007B7979008D8B8A007D7B + 7A006462620039383900CFCFCF00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000536DC9004068F00097AC + F5004A65C20000000000000000008E9DD6009EB2F600476EF000455DB700BECC + F500000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000405A + B4008CA5F60089A2F60089A2F6007C97F4007391F4006989F300567AF2004C71 + ED004469E6003157D600274DCD001D43C3000A2FAE000328A3003652AF002636 + 6A000000000000000000000000000000000000000000858383009E9B9A00A19F + 9E00676564006462620039383900000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000A5B6EF006283F200697F + CC00000000000000000000000000000000004C67C30095A4D9006888F3006E86 + D8004861BA000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000435D + B500A3B6F800ACBDF800A2B6F8008DA5F600829DF5007894F4006283F2005679 + EE004B6FE700365BD7002C51CE002146C4000B30AE000328A30003269B002838 + 6D00000000000000000000000000000000000000000000000000D3D3D3008583 + 8200A19F9E007D7B7A006765640039383900CFCFCF0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000687AB8007084C600566E + BC00566EBC00566EBC00566EBC00566EBC00566EBC00566EBC00566EBC00566E + BC00566EBC00566EBC00566EBC00566EBC00566EBC00566EBC00566EBC00566E + BC00566EBC007084C6002333670000000000000000009AAADC00A6B9F8007591 + F1004D67C4000000000000000000000000009BAFEC004159B200B2C2F8007391 + F4006F85D0000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000455F + B700A8BAF800ADBEF800A2B6F8008DA5F600829DF5007894F4006283F2000000 + 0000829BEF00365BD7002C51CE002146C4000B30AE000328A30003269B002A39 + 6D0000000000000000000000000000000000000000000000000000000000D3D3 + D3009E9B9A00A19F9E007D7B7A006462620039383900CFCFCF00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000004259A600344FA700405C + BB001D3FAF001D3FAF001D3FAF001D3FAF001D3FAF001D3FAF001D3FAF001D3F + AF001D3FAF001D3FAF001D3FAF001D3FAF001D3FAF001D3FAF001D3FAF001D3F + AF003956B900344FA70027366E0000000000000000004F67BD00B9C4EA00B1C1 + F9006F85CF004E69C50000000000465EB6006177C1005266B10095A3D300839E + F50099ACEC000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004761 + B800A9BBF800ADBEF800A2B6F8008DA5F600829DF5007894F4006283F2000000 + 0000829BEF00365BD7002C51CE002146C4000B30AE000328A30003269B002A3A + 6F00000000000000000000000000000000000000000000000000000000000000 + 0000858382009E9B9A00A19F9E00676564006462620039383900000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000425CB300032491003550 + AB001C3FB2001C3FB2001C3FB2001C3FB2001C3FB2001C3FB2001C3FB2001C3F + B2001C3FB2001C3FB2001C3FB2001C3FB2001C3FB2001C3FB2001C3FB2003251 + BA003550AB000324910029397200000000000000000000000000BFCCF5005169 + BF00C5D1FA00A5B7F6007D91D3007A8DCB00A5B8F7006485F3005872C5004357 + 9F008796CD000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004B65 + BC00A9BBF800ADBEF800A2B6F8008DA5F600829DF5007894F40013192E000000 + 0000171C2C00365BD7002C51CE002146C4000B30AE000328A30003269B002D3D + 7100000000000000000000000000000000000000000000000000000000000000 + 000000000000D3D3D30085838200A19F9E007D7B7A006765640039383900CFCF + CF00000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000435EBB000429A5000429 + A500324FB0002C4DBC00163BB500163BB500163BB500163BB500163BB5001235 + A8001235A800163BB500163BB500163BB500163BB500163BB5002C4DBC000327 + 9E000429A5000429A5002E3F7D0000000000000000000000000000000000BFCC + F500C4CCEC00C8D4FB00A9BBF700425DB90097A7DD00A4B7F8005E80F1005A73 + C7003B519C000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004D67 + BE00A8BAF800ADBEF800A2B6F8008DA5F600829DF5007894F4001F1F1F000C0C + 0C001F1F1F00365BD7002C51CE002146C4000B30AE000328A30003269B002F3E + 7200000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000D3D3D3009E9B9A00A19F9E007D7B7A00646262003938 + 3900CFCFCF000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000425FBF00042AAA00042A + AA000328A400304EB200294CBE001338B7001338B7001338B7001136AF000E2F + 9E000E2F9E001338B7001338B7001338B7001338B700294CBE00304EB200042A + AA00042AAA00042AAA0030428200000000000000000000000000000000000000 + 0000536BC100C4CCEC00C8D4FB008E9ED8004F67BA0098A7DE006485F3005E80 + F1005B74C800BCC8F30000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004F69 + C000A5B8F800ACBDF800A2B6F8008DA5F600829DF5007894F4003C4257003333 + 330041465600365BD7002C51CE002146C4000B30AE000328A30003269B002F3F + 7400000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000858382009E9B9A00A19F9E00676564006462 + 6200393839000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000004361C400052CB000062D + B100062DB100052BAC00304FB6001138B9001138B9001138B9000F31A3008598 + D8008598D8000E33B1001138B9001138B900264AC0002F4EB600042AAB00042B + B000042BB000042BB00033468700000000000000000000000000000000000000 + 000000000000BFCCF500556DC300D5DCF600D5DCF6008E9DD6009AA9E000A4B7 + F8006485F3005D76CA0040549E002D44910019379D002D438F00374B90000000 + 000000000000000000000000000000000000000000000000000000000000536D + C60090A8F6009AAFF7009DB2F7008FA7F60086A0F5007E99F5006C8BF3006383 + F000597AE9004769DA003E60D2003457C9002244B6001C3DAC003652AF003141 + 7600000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D3D3D30085838200A19F9E007D7B + 7A005A585700373A4600354A9200425BB3000000000000000000A6B6EC002C3F + 820000000000000000000000000000000000000000004967CD001A40C0002045 + C2002247C3002146C3002146C3003F5DC300284CC3001A3DB1007791E5004C6D + DC004B6CDB008C9EDD00183BAF003052C4001C41BF001D43C2001C42C2001C42 + C200193FC000133ABF00384C9200000000000000000000000000000000000000 + 00000000000000000000D2DBF8005873CE005873CE00657FD9004E68C1009AAA + E200A4B7F8005E80F1005E77CB003E55A3006A84D8000D37C2002846AA00BDC9 + F40000000000000000000000000000000000000000000000000000000000718A + E1008CA3EE0093A8F00096ABF00093A8F00091A7F1008FA5F00089A1EF00879F + ED00849BE8007E94DF007B91DA00788DD4007286C9007083C5007283BE004F66 + B400000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D3D3D3009E9B9A008D8C + 8A00646262009E9D9D0034343C0052629D00899DE3006B82D2003B4D8D003A49 + 8000CED7F600000000000000000000000000000000004C6BD200254AC8002D52 + CA002F53CB002F53CB002F53CB00294DC5003B57B70091A3E0005878E1005777 + E0005777E0007993E70091A3E0003855B6002B50CA002B50CA002B50CA002A4F + CA00264BC9001C43C6003A509700000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000BFCDF600506A + C3009BABE2006485F3005E80F1005F78CC008C9CD100839BE9001543DA00475F + B300BFCCF5000000000000000000000000000000000000000000000000000000 + 00005771C800888C9C0094939200888C9C005771C8005771C8005771C800556E + C400516ABD004B62AE00485EA7006D717D006C6B6B005E616D003A4A83000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000858382008885 + 8500BBBAB900BBB9B7009E9D9D0032343D00485CA6004A5EA500556FC5004354 + 8E00A5B6EB00000000000000000000000000000000004E6DD6002F54CF003B5E + D2003F61D3003F61D3003E61D300274ABC0096A7E200849CEA006482E5006381 + E5006381E5006381E500839BEA0095A7E2003457CD003A5DD200395CD200395C + D2003257D000254CCD003D529D00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000006F89 + DF00516DCC009EADE400A4B7F8006485F3006C80C5004E67BF0093A3DD003761 + EF005270D600516AC30000000000000000000000000000000000000000000000 + 00000000000080808000C6C6C600808080000000000000000000000000000000 + 0000000000000000000000000000808080004646460080808000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000C3CE + F20083838700F0F0F000CCCBCA00BBB9B70032343D002347BF000534D400556C + B6003B4D8F004057A8000000000000000000000000005575E0004669DD005877 + E0005D7BE1005373DE003759CA0098ACF0007B95EC007B95EC007B95EC007B95 + EC007B95EC007A95EC007A95EC007A95EC009EAEE7003457C9004E6FDD005777 + E0004B6DDD00375CDA00435AA700000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000005B75 + D2006B87E6005A72C800A0AFE500AEBFF8007F93D7009FB1EF005671CD009FB3 + F600496FF0005E7AD900BFCDF600000000000000000000000000000000000000 + 00000000000080808000CBCBCB00808080000000000000000000000000000000 + 0000000000000000000000000000808080004C4C4C0080808000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004660 + B9006A7CBD00CFCECE00F0F0F000CCCBCA009E9D9D002B3049000537DE004668 + D7005772CC00576CB300475EAE0000000000000000005878E4005072E2006683 + E6006885E5004162CF00A3B3E900879FEF00879FEF00879FEF00879FEF00869E + EF00869EEF00869EEF00859EEF00869FF0009EB1F200A1B1E8003E5FCE006683 + E6005979E4003F64DF00465DAE00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000005B76 + D3009AACED006C85D8005770C7008598D9005872CA0000000000000000009AA8 + DF00A8BAF700597CF200526BC400000000000000000000000000000000000000 + 00000000000080808000D0D0D0007F7F7F000000000000000000000000000000 + 0000000000000000000000000000888888005050500080808000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004E69 + C6006A80CE0088888B00CFCECE00F0F0F00093919000383D55000539E8000534 + D4002F54D3005470CE005D74C60000000000000000005A7BE800597AE700728D + EA004D6DD700A4B4EA00ACBDF60093A9F20093A9F20093A9F20092A8F20092A8 + F20092A8F20091A7F20091A7F20091A7F20091A7F2009DB1F300A3B3EB00718D + EA006482E800476CE5004961B300000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005972C800A9BBF8007995F2007389D6000000000000000000000000000000 + 00005872CF009AAAE3008FA4EB005C77D4000000000000000000000000000000 + 00000000000080808000D4D4D40082828200C6C6C60000000000000000000000 + 00000000000000000000C6C6C600969696006060600086868600000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000008FA1E00099AAE300848692004A6AD700305CEE001E4EED004B70 + EE005E77CB004A63BB000000000000000000000000005C7EEE006383F0005273 + E000B4C4F800ADBEF700ACBDF700ACBDF700ACBDF700ABBCF700ABBCF700ABBC + F700ABBCF700AABCF700AABCF700AABCF700A9BBF700A9BBF700A9BBF700A9B9 + EE00486BDF004D72ED004F68BE00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000C1CDF600BDC8EE00B4C4F90089A2F4005973CF0000000000000000000000 + 00005973CF00899DDE00B1C0F1005D78D5000000000000000000000000000000 + 00000000000090909000C0C0C0008B8B8B008A8A8A0000000000000000000000 + 000000000000000000008A8A8A00B1B1B1006A6A6A0096969600000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000A1B1EB009AAFF7007995F4005479F100436BF000305CEE003B64 + EF00617CD8004F69C4000000000000000000000000005C7FF200466BE500A6B6 + EF00ADBEF800AFC0F900B0C0F900B0C0F900B0C0F900B0C0F900B0C0F900AFC0 + F900AFC0F900AFC0F900AFC0F900AEBFF800ADBEF800ADBEF800ABBDF800AABC + F800A0B2ED003A61E400526CC300000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000005D74CA00C4CDEF00BECCFA008297DB005974CF00000000005974 + CF008297DB009CB0F5009DACE100718AE2000000000000000000000000000000 + 000000000000B0B0B000A4A4A400ADADAD008A8A8A0086868600000000000000 + 000000000000868686008F8F8F00A4A4A40076767600BBBBBB00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00009FB0EF00B0C0F700ACBDF8009BB0F7006787F3005479F1005E80F200486F + F0005A7CED00566EC1000000000000000000000000005578EB0098ACEE0095AC + F7009AAFF7009DB2F7009EB3F7009EB3F7009FB3F7009EB3F7009EB3F7009EB3 + F7009EB3F7009EB3F7009DB2F7009DB2F7009CB1F7009BB0F70099AFF7008EA6 + F6008BA4F60092A7ED00546EC500000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000C1CDF6005F76CC00C8D4FB00A9BBF7009BACE400A9BB + F700C8D4FB00C7D0F000C1CDF600000000000000000000000000000000000000 + 00000000000000000000D3D3D300D6D6D600DFDFDF00CECECE00ADADAD009C9C + 9C0097979700BBBBBB00C0C0C000B4B4B400D3D3D30000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000839AE8005B76D3005B76D300536FCA009EB3F70093AAF6007086D1005B76 + D3005B76D3005B76D300000000000000000000000000617ACC005670C7005670 + C7005670C7005670C7005670C7005670C7005670C7005670C7005670C7005670 + C7005670C7005670C7005670C7005670C7005670C7005670C7005670C7005670 + C7005670C7005670C7005670C800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000C1CDF600C7D0F000CED8FB00B7C7F900CED8 + FB00C7D0F0005F76CD0000000000000000000000000000000000000000000000 + 000000000000000000000000000080808000B3B3B300E1E1E100F3F3F300EEEE + EE00E8E8E800CBCBCB00A6A6A600808080000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000AEBEF30095AAF200889EE600566FC8000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000005D75CC00A1B0E200CED7F400A1B0 + E2005D75CC00C1CDF60000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000B0B0B0008A8A8A00808080008080 + 8000808080008A8A8A00B0B0B000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000007289D700637BCE0092A7EC000000 + 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 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000B6C5F00027377300000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000B7C5F1002B3E7C004E5E9400000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000026366D0026366D002636 + 6D0026366D0026366D0026366D0026366D0026366D0026366D0026366D002636 + 6D0026366D0026366D0026366D0026366D0026366D0026366D0026366D002636 + 6D0026366D0026366D0026366D0031458D0000000000354A88002E3D70002E3D + 70002E3D70002E3D70002E3D70002E3D70002E3D70002E3D70002E3D70002E3D + 70002E3D70002E3D70002E3D70002E3D70002E3D70002E3D70002E3D70002E3D + 70002E3D70002E3D7000D2D2D200000000000000000000000000000000000000 + 00000000000000000000000000002E4282004B5D9F004961B100000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000003269B000D2A90000D2A + 90000D2A90000D2A90000D2A90000D2A90000D2A90000D2A90000D2A90000D2A + 90000D2A90000D2A90000D2A90000D2A90000D2A90000D2A90000D2A90000D2A + 90000D2A90000D2A90000D2A9000293973000000000030438600E6EAF700E5E9 + F600E5E9F600E5E9F600E5E9F600E5E9F600E5E9F600E5E9F600E5E9F600E5E9 + F600E5E9F600E5E9F600E5E9F600E5E9F600E5E9F600E5E9F600E5E9F600E5E9 + F600E5E9F600E5E9F60000000000000000000000000000000000000000000000 + 000000000000BAC7F200354990003F5EC4001E42BA004A65BD00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F80000000000000000000429A8002E3F7E000000 + 00004F70DE004F70DE004F70DE004F70DE004F70DE0039509D00354A9100506E + D400506ED400506ED400506ED400506ED400000000003A51A1005475E2005979 + E3005979E3005878E3003A51A1000000000000000000354A9200E5EAF8004364 + D2000430C2000430C2003659CE000430C2000430C2000430C2000430C2000430 + C2000430C2003659CE000430C2000430C2000430C2003659CE000430C2000430 + C2004364D200E5EAF80000000000000000000000000000000000000000000000 + 0000BCC8F300384D97004F66B1001038BF00143BBF004C67C400000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF00000000000000000000000000082EAE00314284000000 + 00005073E8000537DE000537DE000537DE005073E8003E55A900394F9B004F6F + DB000432CD000432CD000432CD004F6FDB00000000004058AF005F80EF002A56 + E9002A56E9002855E9004058AF000000000000000000384E9800E5EAF9004162 + D1000432C9000432C900365BD3000432C9000432C9000432C9000432C9000432 + C9000432C900365BD3000432C9000432C9000432C900365BD3000432C9000432 + C9004365D600E5EAF90000000000000000000000000000000000000000000000 + 00003A519D005169B8003E60D1000430C300143DC7004D6AC900374C9500374C + 9500374C9500374C9500374C9500374C9500374C9500374C9500374C9500374C + 9500374C9500374C95004259AC00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F8000000000000000000000000001137B800334689000000 + 00004F74EF00053AE900053AE900053AE9004F74EF00425CB2003D55A5005072 + E3000535D8000535D8000535D8005072E30000000000435CB4006A8AF300426A + F000426AF0003F68F000435CB40000000000000000003B519F00DADFED004A64 + B9000937D0000A38D0003B60D9000A38D0000A38D0000A38D0000A38D0000A38 + D0000A38D0003B60D9000A38D0000A38D0000A38D0003A5FD9000A38D0000836 + D0004467DB00E6EBFA0000000000000000000000000000000000BECCF5004159 + AB003E63DE00103ED7000535D5000535D5000838D5001441D8001441D8001441 + D8001441D8001441D8001441D8001441D8001441D8001441D8001441D8001441 + D8001441D8001F4AD9003E55A500000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F80000000000000000000000000000000000000000002248C800384D95000000 + 00005B7EF2001D4DED001D4DED001D4DED005B7EF200455FB600455FB6005075 + F100053AEB00053AEB00053AEB005075F10000000000455FB6007592F4006686 + F3006686F300597CF200455FB60000000000000000004159AB00E5EAFB007E98 + ED003958C0001D48D700496DE5001D49DA001A41C3002F4FBA00B8C4EB003B5B + C6001D49DC00496DE5001E4BDF001E4BDF001E4BDF00496DE5001D4ADF001543 + DE00496DE500E5EAFB00000000000000000000000000BECCF500455EB2005871 + CB001141DF000738DD000738DD000738DD000738DD000738DD000738DD000738 + DD000738DD000738DD000738DD000738DD000738DD000738DD000738DD000738 + DD000738DE001544DF004259AD00000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000002B51D0003C519B000000 + 00006485F300305CEE00315DEF00305CEE006485F3004760B7004760B7005075 + F100053AEB00053AEB00053AEB005075F100000000004760B7007590EC008BA2 + EE008BA2EE00849DEE004760B7000000000000000000445DB100E6EBFC004A6F + EA00C7D1F2004260C6004868D3003656BF008FA1DE00D4DCF90089A1F200B0BD + E8002D52CC005074EB002854E6002854E6002854E6005074EB002854E6001C4A + E5004B70EA00E6EBFC000000000000000000000000004962BA005C77D2004A6F + ED001C4BE8001D4CE8001D4CE8001D4CE8001D4CE8001D4CE8001D4CE8001D4C + E8001D4CE8001D4CE8001D4CE8001D4CE8001D4CE8001D4CE8001D4CE8001D4C + E8001C4BE8002653E900455EB50000000000000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 000000000000000000000000000000000000000000003459D7003E54A1000000 + 00006C8BF300446BF000456CF000446BF0006D8CF3004861B9004861B9005075 + F100053AEB00053AEB00053AEB005075F100000000005069C7004861B9004861 + B9004861B9004861B9005069C70000000000000000004761B700E6ECFD004D72 + EF006D8BF100CAD4F40090A1DA00D5DDFA0099AEF600476DEE00325DED00ADBE + F70092A3DD00577AF000325DED00325DED00325DED00577AF000325DED002351 + EB004E73EF00E6ECFD000000000000000000000000005E79D600577BF200466D + F0005479F1005579F1005579F1005579F1005579F1005579F1005579F1005579 + F1005579F1005579F1005579F1005579F1005579F1005579F1005579F1005579 + F1005479F1005176F1004A64BB0000000000000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000004368E300445CAD000000 + 00007D98F5006989F3006D8CF3006A8AF3007D98F5004A64BB004A64BB005176 + F100083CEB00083CEB00083CEB005176F1000000000000000000000000000000 + 000000000000000000000000000000000000000000004B65BC00E6ECFD007290 + F4006283F2006586F3006586F3006586F3006586F3006586F3006586F3006586 + F3008CA5F600667FD2006586F3006586F300607FE6005874D1005975D400577B + F2007592F400E6ECFD000000000000000000000000004E67C0006681D9006A8A + F3006E8DF300718FF400718FF400718FF400718FF400718FF400718FF400718F + F400718FF400718FF400718FF400718FF400718FF400718FF400718FF400718F + F4006F8DF3006586F3004B65BC000000000000000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 000000000000000000000000000000000000000000004D71E9004760B3000000 + 0000829DF5007794F400829CF5007894F400829DF5004C65BC004C65BC00587C + F2001647EC001647EC001647EC00587CF2000000000000000000000000000000 + 000000000000000000000000000000000000000000004C66BD00E6ECFD005277 + F1004B71F1005075F1006D8CF3005075F1005075F1005075F1005075F1005075 + F1005075F100C5CEEC004667D600496CDF00657DCE00B5C1E9009EAEE1003862 + EF00567AF200E6ECFD00000000000000000000000000BFCDF6004F68C2006C86 + D9007E99F50089A2F6008CA5F6008CA5F6008CA5F6008CA5F6008CA5F6008CA5 + F6008CA5F6008CA5F6008CA5F6008CA5F6008CA5F6008CA5F6008CA5F6008CA5 + F600849EF5007391F4004C66BD000000000000000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 000000000000000000000000000000000000000000005579EF004A63B9000000 + 0000829CF5007592F40086A0F5007592F400829CF5004D66BE004D66BE005E80 + F2002453EE002453EE002453EE005E80F2000000000000000000000000000000 + 000000000000000000000000000000000000000000004E68BF00E6ECFD005479 + F1005479F100597CF2007491F400597CF200597CF200597CF200597CF200597C + F200597CF200CDD7F90099A9DD007E92D500CED8FB00ACBDF800C4D0F900365A + D200587CF200E6ECFD000000000000000000000000000000000000000000BFCD + F6006D86DA0086A0F500A0B4F700C3D0FA00C1CEFA00B4C4F800869EED00839C + ED00829BED00829BED00829BED00829BED00829BED00829BED00829BED008099 + ED007B95EC00728EEB004F69C0000000000088878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A500DCDBDB0088878700000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006787F3004F68BF000000 + 00004F69C0004F69C0004F69C0004F69C0004F69C000556FCC004F69C0006A8A + F3004068F0004169F0004068F0006B8AF3000000000000000000000000000000 + 00000000000000000000000000000000000000000000506AC100E6ECFD00577B + F2006586F3006D8CF300829CF5006D8CF3006D8CF3006D8CF3006D8CF3006D8C + F3006D8CF300829CF5007491F4006D8CF3006D8CF300829CF5006C8BF300D2DB + FA008094D700DFE5F60000000000000000000000000000000000000000000000 + 0000536CC5006E87DB0088A2F600B9C8F900B2C2F9009DB0F000506AC100506A + C100506AC100506AC100506AC100506AC100506AC100506AC100506AC100506A + C100506AC100506AC100506AC3000000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00EBEBEB0085848300000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006F8DF3005069C1000000 + 0000000000000000000000000000000000000000000000000000516AC100718F + F4004E73F1004F74F1004E73F100718FF4000000000000000000000000000000 + 00000000000000000000000000000000000000000000526CC300E6ECFD007995 + F400819BF50088A2F60088A2F60088A2F60088A2F60088A2F60088A2F60088A2 + F60088A2F60088A2F60088A2F60088A2F60088A2F60088A2F60087A1F500839E + F500D8E0FC00E8EDFD0000000000000000000000000000000000000000000000 + 0000BFCDF600536DC6006E88DB0095ACF70092A9F6008AA1EE00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A989700E7E7E6008C8A8800000000000000000000000000000000000000 + 000000000000000000000000000000000000000000007894F400516BC2000000 + 0000000000000000000000000000000000000000000000000000526CC3007894 + F4005C7FF2005D80F2005C7FF2007894F4000000000000000000000000000000 + 00000000000000000000000000000000000000000000536DC400E6ECFD00597C + F2006F8DF3007C97F4008FA7F600819BF500819BF500819BF500819BF500819B + F500819BF5008FA7F600819BF500819BF500819BF5008EA6F6007A96F4005075 + F1005F81F200E6ECFD0000000000000000000000000000000000000000000000 + 00000000000000000000BFCDF600708ADD006C8BF300708CEC00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA00C2C0BE00B6B6 + B500A09E9D00EDEDEC008F8D8D00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000088A2F600546DC4000000 + 0000000000000000000000000000000000000000000000000000546EC500839E + F5007794F4007A96F4007894F400839EF5000000000000000000000000000000 + 000000000000000000000000000000000000000000005670C700E6ECFD005378 + F100577BF2006384F3007F9AF5006E8DF3006E8DF3006E8DF3006F8DF3006F8D + F3006F8DF300829DF5006E8DF3006E8DF3006C8BF3007E99F5006082F2003F68 + F000587CF200E6ECFD0000000000000000000000000000000000000000000000 + 00000000000000000000000000005770C8006B85DD006181EB00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE00C2C2C200AFAD + AC00AAA8A700E2E1E00093929100000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000092A9F600556EC5000000 + 0000000000000000000000000000000000000000000000000000566FC60087A1 + F500829CF50087A1F500829DF50087A1F5000000000000000000000000000000 + 000000000000000000000000000000000000000000005771C800E6ECFD00496F + F0005A7DF2005E80F2007E99F5006183F2006183F2006283F2006283F2006283 + F2006283F2007F9AF5006283F2006183F2006183F2007D98F5005D80F2005378 + F1004B71F100E6ECFD0000000000000000000000000000000000000000000000 + 0000000000000000000000000000C1CDF6005871C9006D86D800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF00C3C2C200A09F + 9D00BFBDBC00C4C3C200ACACAC00000000000000000000000000000000000000 + 000000000000000000000000000000000000000000009AAFF700566FC6000000 + 00000000000000000000000000000000000000000000000000005770C7008AA3 + F60088A2F60096ACF7008AA3F6008AA3F6000000000000000000000000000000 + 000000000000000000000000000000000000000000005771C800E6ECFD00E6EC + FD00E6ECFD00E6ECFD00E6ECFD00E6ECFD00E6ECFD00E6ECFD00E6ECFD00E6EC + FD00E6ECFD00E6ECFD00E6ECFD00E6ECFD00E6ECFD00E6ECFD00E6ECFD00E6EC + FD00E6ECFD00E6ECFD0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB00ADACAC0000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000A8BAF8005872C9000000 + 00000000000000000000000000000000000000000000000000005872C9007D97 + EE0090A7F10097ACF20090A7F1007D97EE000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000AFBFF5005872C9000000 + 00000000000000000000000000000000000000000000000000005B76D2005872 + C9005872C9005872C9005872C9005872C9000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000005872C9005B76D2000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00004A60B0002839760026356C00283976004A60B000A3B3EA00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000042579E0036457D002E3C + 6D00283868008D9DD300C0C0C000C0C0C000C0C0C000C0C0C000C2C2C200CECE + CE00CECECE00CECECE00DEDEDE00DEDEDE00DEDEDE0000000000000000000000 + 00000000000000000000000000000000000000000000000000003B53A4002840 + 93001A3FBA003453BC003F5CBD003453BC001A3FBA000C31B0003B53A4000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000002A3B7700DBE0F100DDE2 + F200DEE3F300DFE4F300DFE4F300E0E5F300E0E5F300E2E7F400E3E7F500E3E7 + F500E3E7F500E5E9F600E5E9F600E6EAF600E8ECF700E8ECF700E8ECF700E8EB + F600E9ECF700EAEDF7000000000000000000000000003F59B0005A78DE004D67 + BE00334279002A3C780000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000005069C0002E47A2000734 + C8005069BC00475AA20043579D00475AA2005069BC002D52CE002E47A2005069 + C000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000002D3F7F00D7DDF100C8D0 + EC00C9D1ED00CAD2ED00CBD3ED00CCD3ED00CDD4ED00CED5EE00D0D7EF00D1D8 + EF00D2D9EF00D3D9EF00D4DAF000D5DBF100D7DDF200D7DDF200D7DDF100D9DE + F200DADFF200E6EAF800000000000000000000000000415BB2006F8DF3002F58 + E2003C57B1002A38700000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000003F56A9001843D5003059 + E1004059AC008A9FE600000000008A9FE6004059AC005A70BC001843D5003F56 + A900ACBCF1000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000030448600D6DCF200C3CC + EC003E5DC4003E5DC4003E5DC4003F5EC4003F5EC4003F5EC400C9D2EF00C9D2 + EF00CAD2EF00CBD3EF00CDD5F000CDD5F000CFD6F000D0D7F000D1D8F100D2D9 + F100D3DAF100E0E5F5000000000000000000000000004A65BF00657DCF00899F + E800647ED800536DC1003F57A700000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000003B61DF002A57EE006076 + C20000000000000000000000000000000000000000008FA3E9002A57EE003B61 + DF00445DB6000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000384C9700D7DEF500C6D0 + F1003F61D2003F61D2003F61D2003F61D2003F61D2003F61D200C4CEF000C4CE + F100C4CEF100C4CEF100C3CEF100C3CEF100C3CEF100C3CEF100C3CEF100C4CE + F100C4CEF100D7DEF500000000000000000000000000BFCCF5004862BC006A81 + D000556FC5003355C700506CCC004E65B40090A3E20000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000486CE8003C65ED00556C + BC000000000000000000000000000000000000000000000000003963EF004A6E + E600445DB4000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000032479000304589003045 + 8900304589003045890030458900304589003045890030458900304589003045 + 8900304589003045890030458900304589003045890030458900304589003045 + 89003045890030458900859AE00000000000000000003B519F00D9E0F700C8D2 + F4003F63DA003F63DA003F63DA003F63DA003F63DA003F63DA00C6D1F400C6D1 + F400C6D1F400C5D0F300C5D0F300C5D0F300C4CFF300C4CFF300C4CFF300C3CE + F300C3CEF300D6DDF70000000000000000000000000000000000BFCCF5004A64 + BD008FA4E8005670C400647DD100425596003645760035498F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006080EB004A6FEE005168 + BB00000000000000000000000000000000000000000000000000476EF0006080 + EB00455EB5000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000005C74C5005873D0005873 + D0005873D0005873D0005873D0005873D0005873D0005873D0005873D0005873 + D0005873D0005873D0005873D0005873D0005873D0005873D0005873D0005873 + D0005873D0005873D0003D529A0000000000000000003F57A700DBE2F900CAD4 + F6004065E0004065E0004065E0004065E0004065E0004065E000C8D3F600C8D3 + F600C8D3F600C7D2F600C7D2F600C7D2F600C6D1F500C6D1F500C6D1F500C5D0 + F500C5D0F500D7DEF80000000000000000000000000000000000000000000000 + 00004F68C1007087D40095A8E9004462C8005570CA00465AA00032458600B8C5 + F100000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000008397DB006888F3006F88 + DF0000000000000000000000000000000000C9D4F8004A64BD006886EC007F92 + D100607AD3000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000587BED001444E6000E2A + 8A001744DB000F2B8A001744DB000F2B8A000F2B8A000F2B8A000F2B8A001744 + DB000F2B8A000F2B8A000F2B8A001744DB000F2B8A000F2B8A001744DB000F2B + 8A001644DB000D2A8A005268B70000000000000000004761B700DEE5FB00D1DA + FA005176EF005075EF005075EF005075EF005075EF005075EF00D0DAFA00D0DA + FA00D0DAFA00CFD9FA00CFD9FA00CFD9FA00CED8FA00CED8FA00CED8FA00CDD7 + FA00CCD7FA00DAE1FB0000000000000000000000000000000000000000000000 + 0000BFCDF600506AC3007288D500637AC5004563C8003B5BC800394A86003142 + 7D00A4B3EA00293B7B00283871002E4185000000000000000000000000000000 + 000000000000000000000000000000000000000000006076C20096ACF4007391 + F4004C64BE0090A4EA000000000090A4EA004C64BE009DACDE00A0B3F3005E73 + BB004159AB000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006383EE002352ED006886 + EB00335EEF006A88EE00335EEF006985E2006985E2006985E2006986E600335E + EF006A88EE006A88EB006986E600335EEF005F71B0006883DF00335EEF006A88 + EE00325EEF006786EE00566EBE0000000000000000004963BA00E0E6FC00D4DD + FC00597CF200597CF200597CF200597CF200597CF200597CF200D4DDFC00D4DD + FC00D4DDFC00D3DCFB00D3DCFB00D3DCFB00D3DCFB00D3DCFB00D2DBFB00D2DB + FB00D0DAFB00DDE4FC0000000000000000000000000000000000000000000000 + 000000000000BFCDF600536CC50098AAE900637AC6004566D4003954B1003A49 + 7E0035406900576EB900566DBA00556BB400374E9900CED7F700000000000000 + 000000000000000000000000000000000000000000005C76D2008295D6009EB2 + F500859BE400697EC9006076C200697EC900859BE400A9BBF800A0AEDF004362 + CC002D4FC300BDCBF40000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006D8AEB00305CEE002B43 + 9400243D90003D63E300243D9000354C9800486CE400354C9800304896003960 + E300284192002C44940030489600385EDE007692EF005075F1003D66EF002841 + 92003960E300253E92005A70C10000000000000000004A64BB00E2E8FD00D8E0 + FC006283F2006283F2006183F2006183F2006183F2006183F200D8E0FC00D7DF + FC00D7DFFC00D7DFFC00D7DFFC00D7DFFC00D6DFFC00D6DFFC00D6DFFC00D5DE + FC00D4DDFC00DFE6FC0000000000000000000000000000000000000000000000 + 00000000000000000000000000005770C800748BD900879DE8004D5D97004E65 + B4004A6AD3000430C2000430C2000430C2004162D1005971C00046589B000000 + 0000000000000000000000000000000000000000000000000000000000005D77 + D3009CABE200BECBF500BCCAF600BECBF5009CABE200687CC600798FDA0086A0 + F5004B71F1002E50C400435BAE00BDCBF4000000000000000000000000000000 + 000000000000000000000000000000000000000000007691ED00496FF0003D51 + 94006381E700394D91005D7DE6005D7DE600394D91005D7DE6005D7DE600394D + 91005D7DE6007483B3007483B3006583E6007483B3007483B3006280E4003C50 + 93005A7AE600374C93005F76C50000000000000000004D66BE00E6EBFD00DEE5 + FC007290F4007290F4007290F4007290F4007290F4007290F400DEE5FC00DEE5 + FC00DEE5FC00DEE5FC00DDE4FC00DDE4FC00DDE4FC00DDE4FC00DDE4FC00DCE3 + FC00DAE2FC00E2E8FD0000000000000000000000000000000000000000000000 + 0000000000000000000000000000C1CDF6005872CA006F85D000516BBE004A6C + DC00123ED2000433D0000433D0000433D0000937D2002F56D8005775D700455E + B500BDCBF4000000000000000000000000000000000000000000000000000000 + 0000657FD9004C65BF004C65BC004C65BF00657FD900AEBEF2004C65BF007A90 + DB0086A0F5001848EB002F51C500445CAE000000000000000000000000000000 + 000000000000000000000000000000000000000000007A94EE005378F10092A7 + EE007693F40099AEF2007693F4007693F40099AEF2007693F4007693F40099AE + F2007693F40094A7E60095A8EA007995F40094A7E60095A8EA007995F40099AE + F2007391F4008DA4F1005871C40000000000000000004E68BF00E6ECFD00E1E7 + FD007A96F4007A96F4007A96F4007A96F4007A96F4007A96F400E2E8FD00E1E7 + FD00E1E7FD00E1E7FD00E1E7FD00E1E7FD00E0E6FC00E0E6FC00E0E6FC00DFE6 + FC00DDE4FC00E4E9FD0000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000AEBEF3005E6FAD004B6FE7001242 + E0000537DE000537DE000537DE000537DE000537DE000537DE001B49E1005E76 + CA00455DB2008DA2E80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000BFCDF6004D66 + C0007A90DB004B71F1001848EB003052C500BDCBF40000000000000000000000 + 000000000000000000000000000000000000000000007B96EE00597CF2004B5C + 96004E5E93007D96E9004E5E93004E5E93007D96E9004E5E93004E5E93007D96 + E9004E5E93005A699A00576698007A94E8005A699A00576698007A94E8005060 + 9500718CE8003D519300536DC40000000000000000004F69C000E8EDFD00E3E9 + FD00829CF500829CF500829CF500829CF500829CF500829CF500E5EAFD00E5EA + FD009DB2F7009DB2F7009DB2F7009DB2F7009DB2F7009DB2F7009DB2F7009BB0 + F700E0E6FC00E6EBFD0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000004963BC006A87E8002553EE002553 + EE002553EE007C97F4007F9AF1007C97F4002553EE002553EE002553EE002553 + EE004A70F0006983DB0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000BFCDF6007B91DC0086A0F5004B71F1003153C700475EB100BDCBF4000000 + 000000000000000000000000000000000000000000007B93E700819CF30092A9 + F600A3B6F800A4B7F800A6B9F800A8BAF800A6B9F800A8BAF800A8BAF800A6B9 + F800A8BAF800A9BBF800ABBDF800A6B9F800ADBEF800AABCF800A4B7F8009FB3 + F70094ABF60087A1F5005771C9000000000000000000526CC300EBF0FD00E7EC + FD00EAEFFD00EAEFFD00EAEFFD00EAEFFD00EAEFFD00E9EEFD00E9EEFD00E9EE + FD00E8EDFD00E8EDFD00E8EDFD00E8EDFD00E8EDFD00E8EDFD00E8EDFD00E7EC + FD00E5EAFD00E8EDFD0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000004A64BB00718DEB003E67F0003E67 + F0006888F300667CC5005A71C100667CC5006888F3003E67F0003E67F0003E67 + F000486FF000718CE90000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000004F69C3007B92DC0086A0F5001848EB003154C700485FB2000000 + 000000000000000000000000000000000000000000005872CA00495891004A59 + 9100697EC8006D82CF006D82CF006D82CF006D82CF006D82CF006D82CF006D82 + CF006D82CF006D82CF006D82CF006D82CF006D82CF006D82CF006D82CF006C82 + CF006B82CE006980CE0093A8ED000000000000000000536DC400ECF0FE00E9EE + FD007693F4007693F4007693F4007693F4007693F4007693F4007693F4007693 + F4007693F4007693F4007693F4007693F4007693F4007693F4007693F400708E + F400E6ECFD00E9EEFD0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000004F69C4007892E700567AF200567A + F20091A3E4009DB0EE00000000009DB0EE0091A3E400567AF200567AF2005D80 + F2007794F4006B83D40000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000BFCDF600506AC4007C92DD004B71F1001848EB003254C800BFCB + F400000000000000000000000000000000000000000000000000000000008380 + 7E00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000546EC500EDF1FE00EBF0 + FD00809BF500809BF500809BF500809BF500809BF500809BF500809BF500809B + F500809BF500809BF500809BF500809BF500809BF500809BF500809BF5007794 + F400E8EDFD00EBF0FD0000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000556FCC0096ACF7007995 + F4005971C4000000000000000000000000005D75C500809AF10087A1F500728A + DB004F69C200BFCDF60000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000BFCDF6007D93DD0086A0F5004B71F1003355 + C9004A62B400BFCBF5000000000000000000000000000000000000000000918F + 8F00908D8B00918E8C00928F8D0093908E0094918F0095929000979492009895 + 9300999694009B9896009C9997009D9A98009E9B99009F9C9A009B999800A09F + 9E00B6B4B400D6D6D6000000000000000000000000005770C700F0F3FE00EDF1 + FE00839EF5008AA3F6008CA5F6008EA6F6008FA7F6008FA7F6008FA7F6008FA7 + F6008FA7F6008FA7F6008FA7F6008FA7F6008DA5F6008CA5F6008AA3F6007693 + F400EAEFFD00ECF0FE0000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D3DBF9009AACEA008FA7 + F600647BC800000000000000000000000000657BC800859FF5009CB1F700516A + C400BFCDF6000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000536DC6007E94DE0086A0F5001848 + EB003456CA004B63B50000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000005871C800F0F3FE00EDF1 + FE00F0F3FE00F1F4FE00F1F4FE00F1F4FE00F1F4FE00F1F4FE00F0F3FE00F0F3 + FE00F0F3FE00F0F3FE00F0F3FE00F0F3FE00EFF3FE00EFF3FE00EEF2FE00ECF0 + FE00EAEFFD00EDF1FE0000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000006278C900A2B4 + F3008A9EE2009FB1F000000000009FB1F000869BE3009BB0F700788FDD00BFCD + F600000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000C1CDF600536CC500859AE0004B71 + F1001848EB003457CA00BFCBF500000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000005872C900F1F4FD00F1F4 + FD00F2F5FD00F3F6FD00F3F6FD00F3F6FD00F3F6FD00F3F6FD00F3F6FD00F3F6 + FD00F2F5FD00F2F5FD00F2F5FD00F2F5FD00F1F4FD00F1F4FD00F1F4FD00F0F3 + FD00EFF2FD00EEF2FD0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000005974 + CF0098AAE400B2C2F900B4C4F900ADBEF8007D93DF00566FC700C1CDF6000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000566FC8008295D400A1B1E500798F + DD0086A0F5004B71F1005E78D1005169BE000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000C1CD + F6005C75CC00C1CEFA00B9C8F900B7C7F9005771C900C1CDF600000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000005874CF008DA0DF00C4CEF100657B + C5008B9FE30086A0F5006781DB00556DC6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000093A8ED009CAEE900A0B2EF008195DB00C1CDF60000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000C1CDF6005874CF00556EC300B0BD + E7007A8CCA008399E1005872CA00C1CDF6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000C1CDF6005770 + CA00BFCCF5000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000C9C9C900A1ADDA0058648C00545664005456640054566400545664005456 + 6400545664005456640054566400545664005456640053556300525E8800C2C2 + C200D4D4D4000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000DCDCDC00C4C4C4003847 + 7D0027345E0027345E0027345E0027345E0027345E0027345E0027345E002734 + 5E0027345E0027345E0027345E0027345E0027345E0027345E0027345E002734 + 5E0038477D00C4C4C40000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000C3CEF1005E607000999CA600B0B1BA00B0B1BA00B0B1BA00B0B1BA00B0B1 + BA00B0B1BA00B0B1BA00B0B1BA00B0B1BA00B0B1BA00B0B1BA00999BA600BEC9 + EE00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000002B3C + 78000328A30003208200E8E8E700E5E4E300E0DFDE00DBDAD900032082000328 + A3000328A3000328A3000328A3000328A3000328A3000328A3000328A300435E + BA002B3C78000000000000000000000000000000000000000000000000000000 + 00000000000000000000A3B3EA002F3E73003F4F840044579700495DA100495D + A100495DA100445797003F4F86002F3F7400A3B3EA0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000060647500A6A9B60025377600253776002537760025377600253776006870 + 92007B819B002537760025377600253776002537760025377600253776006569 + 7A00000000000000000000000000000000000000000000000000000000000000 + 00000000000029386A005469AE005065AC005065AC005065AC005065AC005065 + AC005065AC005065AC005065AC005065AC005065AC005469AE00344686000000 + 0000000000000000000000000000000000000000000000000000000000002C3F + 7E00042AA90003218700E8E8E700EFEEED00EAE9E800E5E4E30003218700042A + A900042AA900042AA900042AA900042AA900042AA900042AA900042AA900425E + BD002C3F7E000000000000000000000000000000000000000000000000000000 + 0000000000004159A70035447A00455EAF002F4BAB001E3DA400032699000326 + 9900032699001E3DA4002F4BAB00455EAF0035447A004159A700000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000063677800A2A4B400263877002638770026387700263877002C3D77005960 + 7A0059607A002638770026387700263877002638770026387700263877006367 + 7800000000000000000000000000000000000000000000000000000000000000 + 0000000000002B3C7800536CBF000328A0000328A0000328A0000328A0000328 + A0000328A0000328A0000328A0000328A0000328A000536CBF00354994000000 + 0000000000000000000000000000000000000000000000000000000000002F42 + 8300042BAF0003238C00DFDFDD00F3F3F100F3F3F200EFEFEE0003238C00042B + AF00042BAF00042BAF00042BAF00042BAF00042BAF00042BAF00042BAF004360 + C3002F4283000000000000000000000000000000000000000000000000000000 + 00002E42880042538E004760B1000B2EA10003279F0003279F0003279F000327 + 9F0003279F0003279F0003279F000B2EA1004760B10042538E002E4288000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000676B7C009FA2B20028397800283978002839780028397800283978003A42 + 63003B425C00283978002839780028397800283978002839780028397800676B + 7C00000000000000000000000000000000000000000000000000000000000000 + 0000000000002E3F7E00536DC3000429A8000429A8000429A80003279E000326 + 99000325970003269A0003279F000429A7000429A800536DC300374D97000000 + 0000000000000000000000000000000000000000000000000000000000003448 + 8E00042EBB0003259500CAC9C800E3E2E000E6E6E500EAEAE90003259500042E + BB0003279D00032595000325950003259500032595000325950003279D004262 + CB0034488E000000000000000000000000000000000000000000000000003147 + 8F003654B900082DA9000429A8000429A8000429A8000429A8000429A8000429 + A8000429A8000429A8000429A8000429A8000429A800082DA9003654B9003147 + 8F00000000000000000000000000000000000000000000000000000000000000 + 00006F738300A7ABBB002B3C7B003963EF00446BF000486FF000496FF000496F + F000496FF000496FF000486FF000476EF000325EEF00466DF0002B3C7B006F73 + 8300000000000000000000000000000000000000000000000000000000000000 + 00000000000034478B005470CD00042DB600042BAC000320800003208000586B + AB00ADB6D50003208000031F7E0003269B00042DB6005470CD003B519F000000 + 000000000000000000000000000000000000000000000000000000000000364B + 94000430C20003269B00C1C0BE00DAD9D800DEDDDC00E2E1E00003269B000430 + C20003269B0002175D0002175D000110410002175D0002175D0003269B004364 + D100364B94000000000000000000000000000000000000000000475FB1004658 + 9A00082EAE00042BAC00042BAC00042BAC00042BAC00042BAC00FFFFFF00FFFF + FF00FFFFFF00042BAC00042BAC00042BAC00042BAC00042BAC00082EAE004658 + 9A00475FB1000000000000000000000000000000000000000000000000000000 + 000073778700AAAFBF002C3D7C004068F000486FF000496FF000496FF000496F + F000496FF000496FF000496FF000496FF0003761EF00486FF0002C3D7C007377 + 8700000000000000000000000000000000000000000000000000000000000000 + 000000000000364A91005773D300042DB60003228A0003218700032187000321 + 870003238D00032187000321870003218500042CB4005773D3003C53A3000000 + 000000000000000000000000000000000000000000000000000000000000394F + 9A000633C80004289F00B5B4B200D2D1CF00D6D5D300DAD9D70004289F000633 + C70004289F00031860000318600002114300031860000318600004289F004365 + D500394F9A0000000000000000000000000000000000A8B7ED003E508E004964 + BF00042CB100042CB100042CB100042CB100042CB100042CB100FFFFFF00FFFF + FF00FFFFFF00042CB100042CB100042CB100042CB100042CB100042CB1004964 + BF003E508E00A8B7ED0000000000000000000000000000000000000000000000 + 000075798A00AFB3C3002E3E7E003E67F000456CF000456CF000456CF000456C + F000456CF000456CF000456CF000456CF0003761EF00486FF0002E3E7E007579 + 8A00000000000000000000000000000000000000000000000000000000000000 + 000000000000394D98005875D8000429A5000324920003249200042AA900042C + B200042CB200032493000324920003249200042DB5005875D8003E56A6000000 + 0000000000000000000000000000000000000000000000000000000000003E55 + A4001E49D800193BAC00AFADAC00B3B1B000BAB8B600C1BFBD00193BAC00204A + D800193BAC00091743000D1E58000A194900091743000D1E5800193BAD004B6D + DF003E55A400000000000000000000000000000000003F5194004966C8001139 + BF000C35BE000C35BE000C35BE000C35BE000C35BE000C35BE00FFFFFF00FFFF + FF00FFFFFF000C35BE000C35BE000C35BE000C35BE000C35BE000C35BE001139 + BF004966C8003F51940000000000000000000000000000000000000000000000 + 00007C819200B7BACA00304180003661EF003B64EF003B64EF003B64EF003B64 + EF003B64EF003B64EF003B64EF003B64EF00305CEE00466DF000304180007C81 + 9200000000000000000000000000000000000000000000000000000000000000 + 0000000000003F55A4005878E1000429A8000429A8000429A8000328A1000328 + A1000328A10003279F000429A8000429A800042FBD005878E100425BAE000000 + 0000000000000000000000000000000000000000000000000000000000004159 + AA002A54DF002649BB002445B3002445B3002445B3002445B3002649BB002D56 + DF002649BB002445B3002445B3002445B3002445B3002445B3002649BB004E71 + E4004159AA00000000000000000000000000000000004D62A9003659CC00123B + C300173FC400173FC400173FC400173FC400173FC400173FC400FFFFFF00FFFF + FF00FFFFFF00173FC400173FC400173FC400173FC400173FC400173FC400123B + C4003558CC004D62A90000000000000000000000000000000000000000000000 + 000080849500BBBFCF0032428100315CED00355FED00355FED00355FED00355F + ED00355FED00355FED00355FED00355FED002B58EC00456CEF00324281008084 + 9500000000000000000000000000000000000000000000000000000000000000 + 0000000000004259AB005879E6002044BC00ADBBE7003C5BC400032699000326 + 99000326990003239000042DB800C9D2EF000431C6005879E600445DB1000000 + 0000000000000000000000000000000000000000000078767600D3D3D300445D + B000365EE5003B62E6003B62E6003B62E6003B62E6003B62E6003B62E6003B62 + E6003B62E6003B62E6003B62E6003B62E6003B62E6003B62E6003B62E6005376 + E900445DB000D3D3D300807F7F0000000000000000005069BE002E53CE001D45 + CA00234ACB00234ACB00234ACB00234ACB00234ACB00234ACB00FFFFFF00FFFF + FF00FFFFFF00234ACB00234ACB00234ACB00234ACB00234ACB00234ACB001D45 + CA002D52CE005069BE0000000000000000000000000000000000000000000000 + 000084889800BDC2D200334482002D59EA00315CEA00315CEA00315CEA00315C + EA00315CEA00315CEA00315CEA00315CEA002855E900446BEC00334482008488 + 9800000000000000000000000000000000000000000000000000000000000000 + 000000000000455EB100597BEB000430C200042FBF00042FBF00032187000323 + 8D0003238D0003249100042FBF00042FBF000434D300597BEB00465FB5000000 + 00000000000000000000000000000000000000000000EBEBEB00AEADAC007979 + 7D00728EEE005D80F200567AF200567AF200567AF200567AF200567AF200567A + F200567AF200567AF200567AF200567AF200567AF200567AF2005C7FF2004F67 + BB0079797D00AEADAC007C7A790000000000000000005774D4002850D5003459 + D700395ED800395ED800395ED800395ED800395ED800395ED800FFFFFF00FFFF + FF00FFFFFF00395ED800395ED800395ED800395ED800395ED800395ED8003459 + D700224BD4005773D30000000000000000000000000000000000000000000000 + 00008B8F9F00C5C9D90035468400234FE2002551E2002551E2002551E2002551 + E2002551E2002551E2002551E2002551E2001F4CE2004066E600354684008B8F + 9F00000000000000000000000000000000000000000000000000000000000000 + 0000000000004B64BB006082F2001445E9001240D700123FD600123FD600123F + D600123FD600123FD600123FD600113DD1001143EC006082F2004B64BB000000 + 00000000000000000000000000000000000000000000CFCECE00EBEBEB00AFAE + AD005F71B000829CF0006A8AF3006384F3006384F3006384F3005673D4004F6A + C2004F6AC2006283F0006384F3006384F3006384F3006A8AF300829DF5007979 + 7F00AFAEAD00EBEBEB007F7D7C0000000000000000005A77D8003057DA003E63 + DD004569DF004569DF004569DF004569DF004569DF004569DF00FFFFFF00FFFF + FF00FFFFFF004569DF004569DF004569DF004569DF004569DF004569DF003E63 + DD002B53DA005975D70000000000000000000000000000000000000000000000 + 00008E92A300C7CCDD00374785001E4ADE00214DDF00214DDF00214DDF00214D + DF00214DDF00214DDF00214DDF00214DDF001B48DE003E64E400374785008E92 + A300000000000000000000000000000000000000000000000000000000000000 + 0000000000004C65BC006485F3001E4DED001D4CE9001C49DE007691EB00E8ED + FB00E8EDFB001C49DD001C49DE001D4CE9001949ED006586F3004C65BC000000 + 00000000000000000000000000000000000000000000807E7E00D0CFCF00EBEB + EB007E7E81006878B1008DA4F100708EF400708EF400708EF400A4B0D800E4E4 + E300D6D5D400627CD500708EF400708EF4007794F4008FA7F6006D80BF00B0AF + AF00EBEBEB00D0CFCF00D3D3D30000000000000000005C79DB00375EDF00486C + E3005173E3005173E3005173E3005173E3005173E3005173E300FFFFFF00FFFF + FF00FFFFFF005173E3005173E3005173E3005173E3005173E3005173E300486C + E3003058DE005B78DB0000000000000000000000000000000000000000000000 + 00009195A600CBD0E000384987001A47DB001B47DA001B47DA001B47DA001B47 + DA001B47DA001B47DA001B47DA001B47DA001744DB003D62E100384987009195 + A600000000000000000000000000000000000000000000000000000000000000 + 0000000000004D66BD006888F3002856EE002957EE002956EC002854E5002854 + E5002854E5002854E7002956EC002957EE002150ED006888F3004D66BD000000 + 0000000000000000000000000000000000000000000000000000D3D3D3008584 + 8300EBEBEB00B2B1B10084848700A1B4F30090A8F6008AA3F600C9C8C600D4D3 + D100E0DFDD006F83C5008AA3F60090A8F6007E8EC00084848700B2B1B100D2D2 + D10085848300D3D3D3000000000000000000000000005C78D5005074EA005477 + EA006886EC006886EC006886EC006886EC006886EC006886EC00536CBE00536C + BE00536CBE006886EC006886EC006886EC006886EC006886EC006886EC005477 + EA004A6FE9005D78D50000000000000000000000000000000000000000000000 + 0000989CAC00D0D5E6003A4B8900113ED300123FD300123FD300123FD300123F + D300123FD300123FD300123FD300123FD3000F3CD3003A5FDB003A4B8900989C + AC00000000000000000000000000000000000000000000000000000000000000 + 0000000000004F68C0006E8DF3003E67F0004068F0004068F0004068F0004068 + F0004068F0004068F0004068F0004068F000335EEF006E8DF3004F68C0000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300D4D3D200EBEBEB00B3B3B2007C89B400ABBBF4009DB2F7009FA6C200C3C1 + BF00C9C7C5008598D8009DB2F700AEBFF80088878B00B3B3B200EBEBEB008B89 + 8700D3D3D300000000000000000000000000000000005D76C900597CEE005578 + EE007390F0007491F1007491F1007491F1007491F1007491F1007491F1007491 + F1007491F1007491F1007491F1007491F1007491F1007491F1007390F0005679 + EE005377EE005D77CA0000000000000000000000000000000000000000000000 + 00009A9EAF00D3D8E9003B4C8A000D3AD0000E3BD0000E3BD0000E3BD0000E3B + D0000E3BD0000E3BD0000E3BD0000E3BD0000C39D000395ED9003B4C8A009A9E + AF00000000000000000000000000000000000000000000000000000000000000 + 0000000000005069C100718FF400F2F5FE00F2F5FE00F2F5FE00F2F5FE00F2F5 + FE00F2F5FE00F2F5FE00F2F5FE00F2F5FE00F1F4FE007290F4005069C1000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00008B898800D5D4D400EBEBEB008B8A8E007E8BB400B4C3F40092A2D9008494 + C6008494C600A8BAF500B5C5F9008896C300B4B4B300EBEBEB00D5D4D4008684 + 83000000000000000000000000000000000000000000566FC2006685EE00567A + F1007C97F400809BF500819BF500819BF500819BF500819BF500EDF1FD00FFFF + FF00EDF1FD00819BF500819BF500819BF500819BF500819BF5007D98F500587B + F1006081ED00566FC20000000000000000000000000000000000000000000000 + 00009DA1B200D6DBEC003C4D8B000835CC000936CC000936CC000936CC000936 + CC000936CC000936CC000936CC000936CC000835CC00375CD5003C4D8B009DA1 + B200000000000000000000000000000000000000000000000000000000000000 + 000000000000516BC2007491F400F1E0CB00F1E0CB00F1E0CB00F1E0CB00F1E0 + CB00F1E0CB00F1E0CB00F1E0CB00F1E0CB00F5EADA007592F400516BC2000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D3D3D300908E8D00EBEBEB00B7B6B50091919300CBD6FB00C3D0 + FA00C3D0FA00949FC50091909400B7B6B500D7D6D600908E8D0093918F009290 + 8F000000000000000000000000000000000000000000AEBEF3005B73C5006886 + EC007391F40088A2F60093AAF60096ACF70096ACF70096ACF700FFFFFF00FFFF + FF00FFFFFF0096ACF70096ACF70096ACF70095ACF7008AA3F6007693F4006B89 + ED005B72C500AEBEF30000000000000000000000000000000000000000000000 + 0000A3A7B800DBE0F1003F4F8D000431C5000431C5000431C5000431C5000431 + C5000431C5000431C5000431C5000431C5000431C500365AD1003F4F8D00A3A7 + B800000000000000000000000000000000000000000000000000000000000000 + 000000000000536DC4007E99F500F3E2CB00F3E2CB00F3E2CB00F3E2CB00F3E2 + CB00F3E2CB00F3E2CB00F3E2CB00F3E2CB00F5EADA007E99F500536DC4000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000D3D3D300D8D7D700EBEBEB00B8B7B6009DA6C500CDD8 + FB00CDD8FB0094939600B8B7B600EBEBEB009391900099979500A5A4A200A5A4 + A200939291000000000000000000000000000000000000000000607AD600647D + D0006384F3007F9AF50093AAF600A2B6F800A2B6F800A2B6F800FFFFFF00FFFF + FF00FFFFFF00A2B6F800A2B6F800A2B6F80095ACF700829CF5006686F300657E + D200607AD6000000000000000000000000000000000000000000000000000000 + 0000A6AABA00DDE3F3003F518E000430C2000430C2000430C2000430C2000430 + C2000430C2000430C2000430C2000430C2000430C2003558CD003F518E00A6AA + BA00000000000000000000000000000000000000000000000000000000000000 + 000000000000546EC500819BF500F0F3FE00F1F4FE00F1F4FE00F1F4FE00F1F4 + FE00F1F4FE00F1F4FE00F1F4FE00F1F4FE00F3F6FE00819BF500546EC5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000096949300D9D9D800EBEBEB0097979900919D + C500919DC500B9B8B800EBEBEB00D9D9D800D3D3D300A09E9C00CCCCCC00CCCC + CC00A09E9C00000000000000000000000000000000000000000000000000536F + CA006989F3006A8AF300849EF500A8BAF800ADBEF800AEBFF800E1E3E800F2F2 + F200E1E3E800AEBFF800ADBEF800A9BBF80087A1F5006D8CF3006B8AF300536F + CA00000000000000000000000000000000000000000000000000000000000000 + 0000A9ADBD00DFE5F60040518F003558CA003558CA003558CA003558CA003558 + CA003558CA003558CA003558CA003558CA003558CA003558CA0040518F00A9AD + BD00000000000000000000000000000000000000000000000000000000000000 + 000000000000556FC600829DF500F4E4CB00F5E4CB00F5E4CB00F5E4CB00F5E4 + CB00F5E4CB00F5E4CB00F5E4CB00F5E4CB00F6EADA00829DF500556FC6000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D3D3D3009B999800EBEBEB00BBBA + BA00BBBABA00DBDBDA009B999800D3D3D3000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005570CB006780D400718EEE00819BF50090A8F6009FB3F700AFC0F900B1C1 + F900AFC0F900A1B5F70093AAF600849EF5007490ED006981D4005570CB000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000AEB2C200E2E8F90042539000425390004253900042539000425390006776 + A6006776A600425390004253900042539000425390004253900042539000AEB2 + C200000000000000000000000000000000000000000000000000000000000000 + 0000000000005871C800829CF500CACCD100CBCDD100CBCDD100CBCDD100CBCD + D100CBCDD100CBCDD100CBCDD100CBCDD100D9DBDF00829CF5005871C8000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D5D5D300DDDCDB00EBEB + EB00EBEBEB009D9C9B00D5D5D300000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000627DD8006179CA007A95F1007D98F500849EF5008BA4F6008EA6 + F6008BA4F60086A0F5007F9AF5007D97F1006179CA00627DD800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0B4C400E3E9FA0043549100435491004354910043549100435491003543 + 740035437400435491004354910043549100435491004354910043549100B6BA + CB00000000000000000000000000000000000000000000000000000000000000 + 0000000000005872C9007C97F400A5A7AC00A5A7AB00A5A7AB00A5A7AB00A5A7 + AB00A5A7AB00A5A7AB00A5A7AB00A5A7AB00BEC0C4007D98F5005872C9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A19F9D00DEDD + DC00DEDDDC00D5D5D50000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000AFBFF3005E77CA006881D4006B85E2007691ED007792 + ED007691ED006C86E2006881D4005E77CA00AFBFF30000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000094A2D300D8DEEF0094A0C700445492004454920044549200445492004454 + 920044549200445492004454920044549200445492004454920094A0C70094A2 + D300000000000000000000000000000000000000000000000000000000000000 + 0000000000005872C9007C96EE008FA5F00094AAF20095AAF20097ACF20097AC + F20097ACF20096ABF20095AAF20093A9F200889FF0007C96EE005872C9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000C2CEF60096A3D400B5B9CA00B5B9CA00B5B9CA00B5B9CA00B5B9 + CA00B5B9CA00B5B9CA00B5B9CA00B5B9CA00B5B9CA00B5B9CA0096A3D4000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D1D1D100CBCBCB00C7C7C700C5C5C5007C8FCD005368AF00354785003546 + 8100364783004358A100566CB5007F91D100C7C7C700C7C7C700C9C9C900DADA + DA00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000DDDDDD00C9C9C900C7C7C700C2C2C200B1BCE5003446 + 820029376700C0C0C000C0C0C000C5C5C500CDCDCD00DADADA00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000ACACAC00A4A4A400A4A4A400A4A4A4008A8A + 8A008A8A8A00A4A4A400B3B3B300C7C7C7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000008EA2E10031458B004B64B5004561C1002E4FBE00143AB9002347 + BF00143BBC002449C7002E53CD004566D4004B61AF003D56AA0097A9E8000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000008297DD00485A9900415C + B9003654B7002E3F7C008196DC00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A4A4A40000000000000000002A3B7400354476003F518C004D66B7004F67 + B9004F68BA00485DA50040518D00374677007288CB0000000000C7C7C700A4A4 + A400000000000000000000000000000000000000000000000000000000000000 + 00005068BA00374885004B62AD002345B600082EAD00042AAB00617ACB008295 + D7005974CB00042DB600042EB9000832BF003E61D500506AC4004258A5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000008297DE00304381003755BB000F34 + AE00082DAB004B60A4002F4180008297DE000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000009494 + 940000000000B7C3EE0032427D004C61A5004E69C3004B69CE003F62D6004063 + D9004064DA004365D4004B69CF004F6AC6003A497D002C3E7B00AAB9EB00D3D3 + D30096969600D3D3D30000000000000000000000000000000000000000000000 + 0000415393004B65BE002E50BF00042CB300042CB2001B3FB7008194D6008194 + D5006179CA003353BE00042CB100042DB5000832C0002E53CE004C6ACF005B74 + C900000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005169BD00394B89004D65B300082FB000042B + AF00042BAE003655BD004C61A700314483000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000096969600D3D3 + D30095A5DF00959392007D8294004464CE00385DD7004368E3005175EB005275 + EB005174EA004D72EA004469E5003B60DC004963B7007D81940091908F000000 + 0000000000009F9F9F000000000000000000000000000000000093A5E4003E52 + 96003256CD001D44C8002349C900274CCA008B9FE20091A4E4008B9FE100879B + DE008498DC006A82D2002245B800042AAB00042BAF00042CB400042EB9004D6A + CB004258A20095A9E7000000000000000000283870003551AE003552B000455F + B4004964B6004B65B800546EBB005E76BC005F78C000657DC200788DC500788D + C500788DC500788DC5007287C4005F78C0005E76BC005E76BC004B65B8004963 + B5004963B5003A56B1003E59B0002D3E75000000000000000000000000000000 + 00000000000000000000546CC1004C66BC002A4EC400042EB900042DB800042D + B800042DB700042DB7000830B8003657C50035488B00A8B7ED00000000000000 + 000000000000000000000000000000000000000000009A9A9A0000000000B7C4 + EF00C7C6C500E1E1E000F0F0F00094A0C8003D5DC9002D50C400183BAD001739 + A8001738A7001D40B300284BBF003757C300D1D0D000EDECEC00DDDCDB00B1AF + AE00A4B5E80000000000B3B3B3000000000000000000000000003A519D00546D + C1002D52D100365BD3003D60D500496AD8009DAEE9009CADE80096A8E60093A6 + E5008197DF002348C300052EB700042CB200042AAB00042BAD00042CB2002F53 + C9005069BF003D54A30000000000000000002A3C760003279F00032699001032 + A300032699001032A30003279F001032A30003279F000326990003279F000326 + 9C001033A800032699001032A30003279F0003279F0003279F0003279F000327 + 9F0003279F0003279F002947AD002A3C76000000000000000000000000000000 + 000000000000566FC3003F5396002B50C800042FBE00042FBE00042FBD00042F + BD00042EBC00042EBC00042EBB000831BC004F66B100384D9600BCC8F3000000 + 0000000000000000000000000000000000000000000000000000000000003344 + 8000E7E6E600F3F3F300F7F7F700BAB9B8007580A700233F9C00425AAB00425A + AA00455CA700334EA500203B9800747FA500EBEAEA00F9F9F900EFEFEF009EA3 + B7002F3E7300000000009A9A9A0000000000000000006D85D6004F64AD005272 + DB004668DA005070DD005373DE007D95E600A8B8EE00A6B6ED00A1B2EB009EAF + E9006782DC002248C800173EC2000B34BC00042BB000042AAB00042BAC000830 + B8003F60CD004C61A90000000000000000002D3E7C000328A400042695002545 + B000042695002545B0000328A4002545B0000328A400042695000328A4000426 + 95002545B000042695002545B0000328A4000328A4000F32A8003250B5003250 + B5000F32A8000328A4002949B2002D3E7C000000000000000000000000000000 + 00007A8FDC0041559B004E69C4000430C2000430C2000430C2000430C2000430 + C2000430C1000430C100042FC000042FC0003E5FCE004E63A900364D98000000 + 00000000000000000000000000000000000000000000000000007388CB003A49 + 7C00ADB9E100FAFAFA00EBEBEA00CCCAC900A5A3A100797F9800384677003543 + 7500324172003B4B8000797F9800A6A4A300DFDEDD00EEEEEE00FBFBFA004862 + B7003F4E82005D73BE009F9F9F0000000000000000004D63AB005F7DE1004D6F + E100758FE9007691E9007792E900BBC8F400BAC8F400B8C6F300B3C2F200B0BF + F000ACBCEF00496BDA003E61D5003156CF00163DC1000831B900042CB300042A + AB00082FB1004563C70098AAE90000000000324687000D33B3000D2B8F005670 + C9000D2B8F005670C9000E34B3005670C9000E34B3000D2B8F000E34B3000D2B + 8F005670C9000D2B8F005670C9000E34B3000E34B3001B399C00304AA400304A + A4001B399C001439B5002D4EBD0032468700000000000000000000000000BDCB + F400546DC000355AD6000A37CE000D3ACE000E3ACE000E3ACD000E3ACC000E3A + CC000E3ACC000E3ACC000E3ACC000D39CB000A36C9001841CC004C6ACF005871 + C7000000000000000000000000000000000000000000A4B2E5003A4879004C66 + BF005074EA004060CC0098A4CC00C5C3C100D3D2D000A1B3ED00000000000000 + 00000000000000000000A1B3ED00D3D2D000D5D3D20097A2C8003656C2003A5F + DD00506BC8003D4D8200A4A4A4000000000000000000566FC2005E7DE6006180 + E700859DED0088A0EE0088A0EE00C2CEF600C1CDF500C0CCF500BCC9F400B8C6 + F300B5C3F3007892E6004F6FDC004466D800294ECC001940C3000932BA00042B + AC00042BAC006B82D000617ACD000000000035488C002145BD001D378D00788E + D7001D378D00788ED7002549BF00788ED7002549BF001D378D002549BF001D37 + 8D00788ED7001D378D00788ED7002549BF002549BF001C368F006B7CB6006B7C + B6001C368F002549BF003858C50035488C000000000000000000000000004B61 + B4003C61DC001440D4001541D4001B46D5001C46D4001C46D4001D47D4001C46 + D3001C46D3001D47D3001D47D3001C46D2001641D100123ED000284FD300455A + A3008A9EE400000000000000000000000000000000005B71B70042538D004765 + C8005073E8003154CA002541A000D5D4D200A1B3ED0000000000000000000000 + 0000000000000000000000000000A1B3ED009CA3BB001F3A9600274ABE00466B + E7004565D000475A9C009F9F9F0000000000000000005D77CF006684E9007590 + EC0094A9F100A3B5F300B9C7F600CBD5F800C9D4F800C7D2F700C2CEF600C0CC + F500BCC9F400AFBFF1006582E3005575DE00395DD3002A4FCC001A41C300042C + B2003252BB008598D700465FB10000000000384C92003658C8002E4696008398 + DC002E4696008398DC003B5CCA008398DC003B5CCA002E4696003B5CCA002E46 + 96008398DC002E4696008398DC003B5CCA003B5CCA0029408C00828FB900828F + B90029408C003B5CCA004262CB00384C920000000000000000006680D5005067 + B300214CDB001D49DB00234DDB002A53DC002A53DC002A53DC002A53DB002A52 + DA002A52DA002A52DA002A52D9002A52D900244DD7001F49D6001944D500556E + C5003E57A800D1DAF8000000000000000000000000003A4E9000495DA1003D5E + CC004A6DE1002548BE003751AA007382B8000000000000000000000000000000 + 0000000000000000000000000000000000003D4C8100324CA3001B3EB0004D72 + EA004063D5005066B100A4A4A40000000000000000006F89E3007893EF0094AA + F200D6DEFA00D7DFFA00D7DFFA00D7DFFA00D6DEFA00D5DDFA00D1DAF900CED8 + F900C7D2F800BAC8F50097ABEE00728DE8005776DF005372DB009BADE800133B + C0003354C300425FC200364A8B00000000003E539E005A77D9005A71BD00879C + E3005A71BD00879CE3006983DD00879CE3006983DD005A71BD006983DD005A71 + BD00879CE3005A71BD00879CE3006983DD006983DD006983DD006983DD006983 + DD006983DD006782DC005371D7003E539E0000000000526DC9005B75C800466B + E800345DE6003D64E6004368E700466BE700456AE600456AE600456AE6004469 + E500456AE5004469E4004469E4004469E4004469E4004065E300385FE1002F58 + E0005876DC004B61AF00000000000000000000000000222F59004F67B500385B + D1004063D7001D3FB100425AAB00D4D4D4000000000000000000000000000000 + 00000000000000000000000000000000000038477900425AAA001032A1005174 + E9004266DC00546DBF008A8A8A000000000000000000718BE5007E99F0009EB2 + F400DCE3FB00DDE4FB00DDE4FB00DDE4FB00DCE3FB00DAE1FA00D6DEFA00D4DD + FA00C4D0F800C8D3F800C2CEF60094A9EE006481E4007B94E600A1B2EB003D5F + CE004866CC003354C20036488A00000000004158A3005C7ADD00637CCD00849B + E6006A81CE00859BE600738DE100859BE500738DE1006A81CE00738DE1006A81 + CE00859BE5006A81CE00859BE500738DE100738DE100738DE100738DE100728C + E100718BE1006C86E0005372DB004158A300000000004E67BA006380E500365F + EA00456BEB004D72EB005276EC005376EC005477EC005376EB005376EB005376 + EB005376EA005376EA005376EA005376E9005376E9005073E900496EE7003059 + E300456AE6005972CC00000000000000000000000000232F59004F67B500385B + D1004164D8001E40B200425AAB00D6D6D6000000000000000000000000000000 + 00000000000000000000000000000000000039477900465DA8001133A2005174 + E9004266DC00546DBF008A8A8A000000000000000000728DE400819BF100A5B7 + F500D6DEFB00E2E8FC00E2E8FC00E2E8FC00E1E7FC00E0E6FC00DBE2FA00D8E0 + FA00CBD6F900CED8F900C9D4F800C3CFF600758FE8009CAEED00A8B8EE004062 + D2007C92DD007289D600364A900000000000455CA9003158D900375CDA00395E + DA003B60DA003B60DA003B60DA003B60DA003B60DA003B60DA003B60DA003B60 + DA003B60DA003B60DA003B60DA003B60DA003B60DA003B60DA003B60DA003A5F + DA00395EDA00365BDA003C61DB00455CA900000000005C75CC005579F100355F + ED005478F0005E80F0006182F1006182F0006182F0006182F0006182F0006182 + EF006182EF006182EF006081EE006181EE006181EE006080ED005A7CEC004268 + E900345DE7005677E400BFCCF5000000000000000000374577004E65B200385B + CE004467DB001E41B600435CAD0093A5DE000000000000000000000000000000 + 0000000000000000000000000000000000003C4B7C00425AAB001537A8005275 + EA003F63D900526BBC00A4A4A4000000000000000000647ED100849EF200A4B7 + F600D3DCFB00D5DEFB00E2E8FC00EAEFFD00E9EEFD00E8EDFD00E5EAFD00E1E7 + FC00DFE5FB00D7DFFA00CDD7F900CDD7F800C0CCF500BAC8F400B2C1F2009FB0 + EA008A9FE3006680D7006079CA0000000000BFCCF5004967CA00335BE3002651 + E100335BE200375EE300385FE3003960E3003960E3003960E3003960E3003960 + E3003960E3003960E3003960E3003960E300385FE300385FE300375EE3002C56 + E1002550E100335BE3004B64B900BFCCF500000000006583E9005A7DF2005C7F + F2007B97F4007E99F5007D98F5007D98F5007D98F5007D98F5007D98F5007D98 + F5007D98F500829DF50086A0F500859FF500809BF5007E99F5007B97F4006384 + F3004C71F000466DEF005773CE0000000000000000005D71B90045558F004664 + C7005275E9003356CB002642A2009C9A990096A8E20000000000000000000000 + 000000000000000000000000000096A8E2007A809800203B98002B4EC000476C + E6004666CF00495C9E00A4A4A40000000000000000005D74C2007E99F10099AE + F600D8E0FB00DCE3FC00DEE5FC00E7ECFD00ECF0FE00EBF0FD00DAE1FB00CBD6 + FA00CED8FA00DAE1FA00D6DEFA00D1DAF900C5D1F700BECBF500B6C4F300A0B1 + EB0094A7E7006983D70097A9E80000000000000000004E68BF00506DD000456A + E9004F73EA005578EB005578EB005578EB005578EB005578EB005578EB005578 + EB005578EB005578EB005578EB005578EB005578EB005578EB005578EB004268 + E800446AE900506DD000BFCCF50000000000000000006D8AEA006C8BF3007491 + F4008FA7F60092A9F6008EA6F6008AA3F6008AA3F6008AA3F60086A0F500849E + F500839EF50097ADF7009BB0F7009AAFF70093AAF6008FA7F6008AA3F600718F + F400587CF200436BF0004E68C10000000000000000009FAFE3003F4D7E004B66 + BD005174E9004464CF007985AD00BEBCBA009E9C9B0096A8E200000000000000 + 0000000000000000000096A8E2009E9C9B00ABA9A8007884AA003B5BC5003A5F + DB004F6BC80042518500ACACAC0000000000000000004D67C100728CE50091A8 + F500D8E0FC00E2E8FD00E3E9FD00E2E8FD00E4E9FD00EEF2FE00E4E9FC00DBE2 + FB00E3E8FC00DEE5FB00D9E0FA00D4DDFA00C9D4F800C1CDF500BAC8F400A0B1 + EC00A0B1EA00788CCF00000000000000000000000000BFCDF600516BC4005774 + D6005E80EF006A89F0006E8CF1006E8CF1006E8CF1006E8CF1006E8CF1006E8C + F1006E8CF1006E8CF1006E8CF1006E8CF1006E8CF1006E8CF1006B8AF0005679 + EF005774D500516BC400000000000000000000000000718CEA008EA6F6008AA3 + F6009FB3F700A3B6F800A2B6F8009AAFF70097ADF70093AAF600859FF500829D + F5008AA3F600A7B9F800AABCF800ABBDF800A5B8F800A2B6F8009CB1F7007C97 + F4006183F2004A70F0004E68C00000000000000000000000000034467F004F63 + A5004163D20099A5CC00BFBEBE00C8C6C400BCBBB900B7B5B50093A5DE00D4D4 + D400D4D4D4006C7AB000B7B5B500BDBBB900D6D4D300C2C1C10098A4CB004061 + D0005067B20034447700C7C7C700000000000000000000000000536CC500738D + E000C0CEFA00DDE4FC00E8EDFD00EBF0FD00E9EEFD00E6ECFD00E4E9FD00EDF1 + FE00EAEFFD00E3E8FC00DFE5FB00D9E0FA00CED8F900C5D1F700B7C5F400A9B9 + EF007F93D500455DAA000000000000000000000000000000000000000000C1CD + F6005876DA005F7FEA006A87EB006D8AEB006D8AEB006D8AEB006D8AEB006D8A + EB006D8AEB006D8AEB006D8AEB006D8AEB006B88EB006986EB006281EA005771 + C900C1CDF600000000000000000000000000000000006882DA009DB2F700BDCB + FA00AEBFF800B4C4F900B5C5F900ACBDF800A0B4F7008CA5F600718FF400738C + E1006F87D600C8D4FB00BCCAFA00B3C3F900B8C7F900B4C4F900AEBFF8008AA3 + F6006888F3004E73F1005671CD00000000000000000000000000000000003646 + 8200B4B3B200E8E8E700F9F9F900ECEBEB009CA8D0002642A000425BAC00425A + AB00425AAB003550A800233E9B009CA8CE00F5F4F400F8F8F700E4E3E2007D83 + 97003242780000000000000000000000000000000000000000009CAEEE005B73 + C600AEBFF800CAD5FB00E2E8FD00EEF2FE00EDF1FE00EAEFFD00E3E9FD00E9EE + FD00EAEFFD00E6EBFD00E0E6FC00DBE2FA00CED8F900C1CDF600B0C0F300AFBD + ED00596DB20097A9E80000000000000000000000000000000000000000000000 + 00005771C9005771C8005771C8005771C8005771C8005771C8005771C8005771 + C8005771C8005771C8005771C8005771C8005771C8005771C8005771C800C1CD + F60000000000000000000000000000000000000000006179CC00809AF300B9C8 + F900BAC9FA00B3C3F900B4C4F900A6B9F80096ACF7007D98F5006D8AED005F77 + C800556EC400BAC9FA00CCD7FB00BECCFA00B4C4F900B2C2F900ABBDF800859F + F5006082F200567AF2006882DB0000000000000000000000000000000000ACBB + ED00C4C3C200D8D7D600EBEAEA00BAC6ED004262CD003255CA001D40B300183B + AD00173AAC002245B9002F52C5003E5EC900F8F8F800E7E6E600D4D3D200ACAB + A900A6B5E8000000000000000000000000000000000000000000000000006883 + DC0096ABF100B3C3F900CCD7FB00EAEFFD00EEF2FE00EDF1FE00E6EBFD00E1E7 + FD00E2E8FD00E6ECFD00E1E7FC00DBE2FA00C9D4F900B9C7F600B0C0F3007485 + C400617AD0000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000005570CC006F87DA008EA6 + F600CBD6FB00C5D1FA00B5C5F9009EB3F700859FF5007894F400637CCD00617C + D8007993E200859CE800B1C1F900C7D3FB00BAC9FA00B0C0F900A7B9F8007995 + F4006082F2005F7EE700AEBEF3000000000000000000B3B3B300000000000000 + 0000C6C5C300C8C7C600DFDFDE004264D3005174EA005174E8004265D9003E61 + D5003E61D4004669DD004F72E5005376EA00A6B2DB00DDDCDB00C3C2C1008EA0 + D900000000000000000000000000000000000000000000000000000000000000 + 00006883DC005E76C9007992E400A9BBF800B8C7F900C9D5FB00D2DBFB00D0DA + FB00C9D4FA00C6D2F900CED8F900C3CFF800B7C6F700A2B1E5005C72BE000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000C1CDF6005772 + CC006E88DC007A94EA007D97ED006E89E5006A83D3005871C700000000000000 + 0000000000008FA4EA00556FC7006980CF007C96EB007A95EC00738EEB00617D + DA005D76C9006B84DA00000000000000000000000000000000009A9A9A000000 + 000000000000A6B6E90038487C005064AC004D68C0004361C7003A5DD1003E61 + D5003E61D5003F60CF004463CA004D68C50049598E0034447900A6B6E9000000 + 0000B3B3B300ACACAC0000000000000000000000000000000000000000000000 + 0000000000009CAFEE005871C9007B95E80091A8F400A1B5F700ABBDF800ABBC + F700A6B8F700BDCBF900C0CDF800BCCAF7008092D300536CC1009BADEC000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005E79D6005771C8005670C7005874CD006B84DD00D3DBF900000000000000 + 0000000000000000000000000000859BE9005670C7005670C7005670C700647E + D9009FB1F0000000000000000000000000000000000000000000D3D3D3009696 + 96000000000000000000000000003A497A00445487004A5C9B005068B600526A + B8005169B9005066AF004B5E9D00455588005E74BB000000000000000000B3B3 + B3009A9A9A000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005670C800677ECD007089DB0096AAEE009DB1 + F200A8B9F30093A6E70091A2DF006F84CD007A91E30000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00009F9F9F00BDBDBD0000000000000000008598D8005065AD00344478002A36 + 60002A3661003E4F87005065AD008598D8000000000000000000BDBDBD00BDBD + BD00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00009D9B9B0092908F0086858500BFBFBF00C0C0C000C0C0C000C5C5C500C7C7 + C700C7C7C700DADADA00DBDBDB00DCDCDC000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000030448A00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000DCDCDC00DADADA00CACACA00C5C5C500C0C0C000C0C0C000213166001521 + 490015214900C0C0C000C1C1C100C7C7C700D2D2D200DADADA00DCDCDC000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A5A3A200C2C0BF00AAA7A700000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000003349920035447C00B9C6 + F100000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000CBCBCB0025325F0025325F002532 + 5F0025325F0025325F0025325F0025325F0025325F0025325F0025325F002532 + 5F0025325F0025325F0025325F0025325F0025325F0025325F0025325F002532 + 5F0025325F0025325F0026346600CBCBCB000000000000000000000000000000 + 0000000000006C82CD001E306E002F3F740038509D004E66B60042548F003751 + AB003751AB001E3377004E66B60038509D003F4F88001E306E006C82CD000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A5A3A200BFBDBC00AAA7A700000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000003D54A2006271A7003D54 + A200000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000003855B5003A56B5003B57 + B5003C57B4003D58B5003D58B5003D58B5003D58B5003D58B5003D58B5003D58 + B5003D58B5003D58B5003D58B5003D58B5003D58B5003D58B5003D58B5003C58 + B5003B57B5003A56B50026377400000000000000000000000000000000000000 + 000000000000203372005264A0005268B30039497D003F518D005067B4001F3E + A6001F3EA6004C60A2003F518D0039497D004963B7005264A000203372000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A5A3A200D1D0CF00AAA7A700000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000657ECC00647AC5004051 + 8D008397DE000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000003753B2000F34AF001337 + AF00163AB000173AB000173AB000173AB000173AB000173AB000173AB000173A + B000173AB000173AB000173AB000173AB000173AB000173AB000173AB0001539 + B0001337AF000F34AE00283A7C00000000000000000000000000000000000000 + 00000000000031479600465A9E002948AE004E68BC003C58B5001638A7000328 + A0000328A0002443AC003C58B5004E68BC002948AE00465A9E00314796000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000A5A3A200D2D1D000AAA7A700000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000A8B7ED005D78CF004664 + C9004F63A4000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000415EBF001F44BC00274A + BD002D4EBD002D4EBD002D4EBD002D4EBD002D4EBD002D4EBD002D4EBD002D4E + BD002D4EBD002D4EBD002D4EBD002D4EBD002D4EBD002D4EBD002D4EBD002C4E + BD00284BBD001F44BC002D4186000000000000000000000000006F86D200253C + 85002B429000455793004C66C000042AAA00042AAA00042AAA00042AAA00092E + AC00092EAC00042AAA00042AAA00042AAA001B3EB2004C66C00045579300344C + 9C00253C85007F95DB0000000000000000000000000000000000000000000000 + 0000A5A3A200D2D1D000AAA7A700000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000D0D8F700728AD900173E + C1005871C800A8B7EE0000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000004764C600284CC4003254 + C4003556C5003556C5003556C5003556C5003556C5003556C5003556C5003556 + C5003556C5003556C5003556C5003556C5003556C5003556C5003556C5003556 + C5003254C400284CC4002F448D000000000000000000D0D8F700263A8000566A + AE004B5FA1004C67C4001237B400042BAF00042BAF001F42B800506BC800506B + C800516BC2003D5BC1001F42B800042BAF00042BAF001237B4004C67C400485E + A900566AAE00263A800000000000000000000000000000000000000000000000 + 0000A5A3A200D2D1D000AAA7A700000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000007A8FD700123B + C500375ACE004359AD0000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000004C6ACD003155CB003C5D + CC003F5FCC003F5FCC003F5FCC003F5FCC003F5FCC003F5FCC003F5FCC003F5F + CC003F5FCC003F5FCC003F5FCC003F5FCC003F5FCC003F5FCC003F5FCC003F5F + CC003C5DCC003155CB003147920000000000000000004B64B800465A9C004B68 + C9003D5CC5001B40BB00042CB4000D34B6004160C600546DC000364886003345 + 84002E41810044599F00546DC0004160C600042CB400042CB4001B40BB00294C + BF004B68C900465A9C0000000000000000000000000000000000000000000000 + 0000A5A3A200D2D1D000AAA7A700000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000006D83CD00355A + D8000433CF005B76D0004259A900D1DAF8000000000000000000000000000000 + 000000000000000000000000000000000000000000005C79DA004668D8005674 + DA005876DA005876DA005876DA005876DA005876DA005876DA005876DA005876 + DA005876DA005876DA005876DA005876DA005876DA005876DA005876DA005876 + DA005674DA00486AD900374E9D00000000000000000000000000435DB2004659 + 99000F38C1001039C2000F38C1005168B3002B428C00A7B6EC00000000000000 + 00000000000000000000A7B6EC002B428C004766CF000F38C1001039C2005673 + D30045589800435DB20000000000000000000000000000000000000000000000 + 0000A5A3A200D2D1D000AAA7A700000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000006E84CC003E63 + DF000737D6004468E0005A72C000556FC8000000000000000000000000000000 + 000000000000000000000000000000000000000000006581E1005273E000627F + E1006682E1006682E1006682E1006682E1006682E1006682E1006682E1006682 + E1006682E1006682E1006682E1006682E1006682E1006682E1006682E1006682 + E1006380E1005474E0003A51A3000000000000000000000000005A74C7004B61 + AC001A42C8001A42C8003155CD0033488D00A7B7ED0000000000000000000000 + 0000000000000000000000000000A7B7ED005B75CB003055CD001A42C8004E6D + D4004960AB005A74C70000000000000000000000000000000000000000000000 + 0000A5A3A200D2D1D000AAA7A700000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000667DC700607F + E8001241DE002450E100607EE2005369B4000000000000000000000000000000 + 000000000000000000000000000000000000000000006D89E8005D7DE7006F8B + E800748FE900748FE900748FE900748FE900748FE900748FE900748FE900748F + E900748FE900748FE900748FE900748FE900748FE900748FE900748FE900748F + E900718CE900607FE7003C55A800000000000000000096A9E80030499C005A72 + C300244BCE00244BCE00506FD800506AC0000000000000000000000000000000 + 0000000000000000000000000000000000004D64AF004F6FD800234ACE003D60 + D4005871C30030499C0000000000000000000000000000000000000000000000 + 0000A5A3A200D2D1D000AAA7A7004C63B200455EB3005E77CE007189DA005973 + CC004762B90044579B00475DA7004862B6005C77D2005E7CE2006583E7006681 + D8005970C000425BB40000000000000000000000000000000000000000000000 + 00000000000000000000000000004A63BA004A63BA004A63BA005D74C2007995 + F3002855EC002855EC002C58EC006282EF007790E20000000000000000000000 + 000000000000000000000000000000000000000000007C97F400708EF400829D + F4008EA6F5008EA6F5008EA6F5008EA6F5008EA6F5008EA6F5008EA6F5008EA6 + F5008EA6F5008EA6F5008EA6F5008EA6F5008EA6F5008EA6F5008EA6F5008EA6 + F50088A1F5007794F400425CB30000000000000000005D78D5005273E0004669 + DD003A5FDB003A5FDB006481E200000000000000000000000000000000000000 + 0000000000000000000000000000000000003E549D006481E300355BDA00395E + DB004367DD004B6DDE002D459400000000000000000000000000000000000000 + 0000A5A3A200D2D1D000AAA7A7006886EB006D87E0005F7AD500546EC200546F + C8005A74CB004E6DD6003B5DCD002E52CA003E62D8004568DE005778E5007994 + F1007C97F4006881DB0000000000000000000000000000000000000000000000 + 00000000000000000000000000008BA1EA006F8BEB006E8BEB007993ED006C8B + F300325EEF00325EEF00325EEF00486FF000536CBF00D2DBF800000000000000 + 000000000000000000000000000000000000000000007E99F500708EF400829D + F50093AAF60097ADF70099AFF70099AFF70099AFF70099AFF70099AFF70099AF + F70099AFF70099AFF70099AFF70099AFF70099AFF70099AFF70099AFF70099AF + F70091A8F6007E99F500445DB40000000000000000005E7AD8005676E3004E70 + E2004368E000466AE1006986E600000000000000000000000000000000000000 + 0000000000000000000000000000000000004157A2006B86E1003E63DF004267 + E0004A6DE1004F71E20030489900000000000000000000000000000000000000 + 0000A5A3A200D2D1D000AAA7A7006282EC00839DF3007C97F3006886EA005878 + E4004E6FDE001D45CB000D36C1000F38C200395ED6005071E0006583E700869F + F20087A1F5007791EA0000000000000000000000000000000000000000000000 + 00000000000000000000000000008DA3EE005378F100496FF0004C72F1004169 + F0003D66EF003D66EF003D66EF003D66EF007087D6005873D000000000000000 + 000000000000000000000000000000000000000000007D98F5006989F3007995 + F40088A2F6008FA7F60098AEF700A3B6F800A3B6F800A3B6F800A3B6F800A3B6 + F800A3B6F800A3B6F800A3B6F800A3B6F800A3B6F800A3B6F800A3B6F800A0B4 + F70096ACF700819BF500455EB6000000000000000000455CA700556EBF00718B + E5004D70E5004A6EE500718DEA00AABAEF000000000000000000000000000000 + 000000000000000000000000000000000000485EA8006F8BEA00496DE5005677 + E6006D88E500546DBF003E58B300000000000000000000000000000000000000 + 0000A5A3A200D2D1D000AAA7A700879FF000A5B8F70093AAF5006D8AEA005A7A + E400476ADD002047CB000D36C0000F38C2003A5ED6005071E0006684E70091A8 + F3009FB3F600839BEC0000000000000000000000000000000000000000000000 + 00000000000000000000000000008498DF007693F4005176F1005176F1005176 + F1005176F10091A7F00099ADF10096ABF1008EA5EF008DA0E100526CC7000000 + 000000000000000000000000000000000000000000005C79DA002E55D6002E55 + D6002E55D6002E55D6006D87E0008DA5F60094ABF60097ADF7009AAFF7009AAF + F7009AAFF7009AAFF7009AAFF7009AAFF7009AAFF70099AFF70097ADF70090A8 + F60086A0F5007794F4004761B800000000000000000000000000667ED5005C75 + C7006081EE006383EF006A88EE00425BAC00ADBCF10000000000000000000000 + 0000000000000000000000000000ADBCF1007690E5006A89EF006383EF007994 + F1005872C600667ED50000000000000000000000000000000000000000000000 + 0000A5A3A200D2D1D000AAA7A70089A1F000A5B8F70093AAF5006D8AEA005A7A + E400476ADD002047CB000D36C0000F38C2003A5ED6005071E0006684E70091A8 + F300A0B4F600849CEC0000000000000000000000000000000000000000000000 + 0000000000000000000000000000798ED70090A8F6005D80F2005D80F2005D80 + F2005D80F2006B81CF00506AC100506AC100506AC100506AC100566FCD000000 + 000000000000000000000000000000000000000000007391F400456CF000456C + F000456CF000456CF0003A60E000A8BAF800ACBDF800AEBFF800AEBFF800AEBF + F800AEBFF800AEBFF800AEBFF800AEBFF800AEBFF800AEBFF800AEBFF800ABBD + F800A7B9F800A2B6F8004962B9000000000000000000000000005370CB005D73 + BE006989F2006E8CF2006A89F2006982D6003E59B100ADBCF100000000000000 + 00000000000000000000ADBCF1003E59B2007C97F4006989F2006E8CF200849E + F4005970BC005370CB0000000000000000000000000000000000000000000000 + 0000A7A5A300D2D1D000AEACAB0089A1F000A5B8F70093AAF5006D8AEA005A7A + E400476ADD002047CB000D36C0000F38C2003A5ED6005071E0006684E70091A8 + F300A0B4F600849CEC0000000000000000000000000000000000000000000000 + 00000000000000000000000000007489D1009BB0F7006787F3006787F3006787 + F3006787F300859BE900516BC400000000000000000000000000000000000000 + 000000000000000000000000000000000000000000007894F4004B71F1004B71 + F1004B71F1004B71F1004B71F100365BD700365BD700365BD700365BD700365B + D700365BD700365BD700365BD700365BD700365BD700365BD700365BD700365B + D700365BD700365BD7004A63BB000000000000000000728BDD005069BA006F8B + EB006E8DF3007894F4007894F4007F9AF5006B84D700465FB300ADBCF1000000 + 0000000000005D79D100465FB3006781D5007491F4007894F4007894F4007290 + F4006A88EB004F68BA0000000000000000000000000000000000000000000000 + 0000A5A3A200BFBDBC00AAA7A70089A1F000A5B8F70093AAF5006D8AEA005A7A + E400476ADD002047CB000D36C0000F38C2003A5ED6005071E0006684E70091A8 + F3009DB2F600839CED0000000000000000000000000000000000000000000000 + 00000000000000000000000000005972C600B1C1F500839EF5007D98F5007D98 + F5007D98F5008BA4F600879EE900536DC6000000000000000000000000000000 + 00000000000000000000000000000000000000000000819BF5005579F1005579 + F1005579F1005579F1005579F1005579F1005D80F2007E99F500819BF500819B + F500819BF500819BF500819BF500819BF500819BF500819BF500819BF500819B + F500819BF500819BF5004C66BD000000000000000000D2DBF800425CB6006983 + D9006A82D100809BF2007E99F5008DA5F60088A2F6008BA4F6008DA5F60086A0 + F50086A0F5008EA6F6008CA5F60088A2F6008BA4F600829CF500849EF200617C + D8006882D900425CB60000000000000000000000000000000000000000000000 + 0000A5A3A200BFBDBC00AAA7A700849DF000A4B7F70093AAF5006D8AEA005A7A + E400476ADD002047CB000D36C0000F38C200385DD6004D6FDF006280E60089A1 + F20091A8F5007E98EC0000000000000000000000000000000000000000000000 + 00000000000000000000000000005973CF00AEBEF30094ABF60086A0F50086A0 + F50086A0F50089A2F60097ADF7006C83D2000000000000000000000000000000 + 00000000000000000000000000000000000000000000849EF5005B7EF2005B7E + F2005B7EF2005B7EF2005B7EF2006384F300829CF5007E91D5004E67BE004E67 + BE004E67BE004E67BE004E67BE004E67BE004E67BE004E67BE004E67BE004E67 + BE004E67BE004E67BE004E68C1000000000000000000000000008EA2E9004460 + BC004964C100667DCA00849EF20097ADF70097ADF70097ADF70090A8F6008DA5 + F6008EA6F60094ABF60097ADF70097ADF70093AAF60089A2F300687FCA004E6B + C8004460BC008EA2E90000000000000000000000000000000000000000000000 + 0000A5A3A200BFBDBC00AAA7A7007691EE009CB1F50091A8F4006D8AEB005979 + E4004669DD001F46CB00143CC3002147C7004567D8005D7BE1006885E7007994 + F1007B96F3007691EC0000000000000000000000000000000000000000000000 + 00000000000000000000000000005E79D50099AAE800A5B8F80092A9F60092A9 + F60092A9F60092A9F6009AAFF7008EA4EB000000000000000000000000000000 + 0000000000000000000000000000000000000000000088A2F6006183F2006183 + F2006183F2006183F2006183F200839EF5008195D600536CC000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000004965C2006E85D20094ABF6009BB0F7009EB3F700A2B6F800A2B6 + F800A2B6F800A1B5F7009EB3F7009DB2F70095ACF700748AD5004965C2000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000817F7E00B9B8B600C1C0BE00787F9E007A93E7007994EF006A87EA006984 + E100647ED800576DB9005468A800475DA7006981D600748DDD00778DDF00546E + C800637BCD006C85DC0000000000000000000000000000000000000000000000 + 0000000000000000000000000000859CE9008699DD00BAC9FA00A6B9F800A6B9 + F800A6B9F800A6B9F800A6B9F800A2B6F8005771C90000000000000000000000 + 000000000000000000000000000000000000000000008EA6F6008EA6F6008EA6 + F6008EA6F6008EA6F6008EA6F600546DC10091A5EB0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000004763BF006D87DB007C96ED006A80C8006D84D20099AEF200A0B4 + F7009EB3F7008399E3006D84D2006A7FC7007491F400718ADD00405DBC000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000BFBEBC00D9D8D700E3E2E1007A7877005974CF005F77C9005E74C000556B + B800516BC200899EE500C9D4F600000000000000000000000000000000000000 + 000092A7ED005874CD0000000000000000000000000000000000000000000000 + 0000000000000000000000000000AFBFF3007D91D600B0C0F900A1B5F700A4B7 + F800A5B8F800A2B6F8009BB0F7008AA3F6006D84D4007C93E600000000000000 + 00000000000000000000000000000000000000000000506AC100506AC100506A + C100506AC100506AC100506AC10091A5EB000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000008197E5004862BC005971C2005974D0006B85DB006B84D6008AA3 + F60087A1F5004965C0006B85DB005974D000627BCF004862BC008197E5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000CFCDCC00EBEBEA00F8F8F8007A7877000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D3DBF9006F84D000A7B8F300B1C1F500B2C2 + F500B2C2F500B1C1F500B0C0F500AABAF30093A6E8005872CA00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000D2DBF8008197E50000000000000000005871C300728D + EA00708CEA009DAFEE0000000000000000006B85DC00D2DBF800000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00009C9A9A00959392008C8A8900000000000000000000000000000000000000 + 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 + 00000000000000000000000000000000000000000000D3D3D300C2C2C2003B4E + 91003B4E8E003B4E8E003B4E8E003B4E8E003B4E8E003B4E8E003B4E8E003B4E + 8E003B4E8E003B4E8E003B4E8E003B4E8E003B4E8E003B4E8E003B4E8E003B4E + 8E003B4E9100C2C2C200000000000000000000000000D6D6D600566AB0002836 + 6700283667002836670028366700283667002836670028366700283667002836 + 6700283667002836670028366700283667002836670028366700283667002836 + 6700283667005468AB00DEDEDE00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000030448900BECAF4000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000283B80004F6CCD00506C + CB00506ABE00506AC000516BC500475CA5002E46920000000000000000000000 + 00000000000000000000000000002E469200516BC500506BC300506ABE00506C + CB004F6CCD004F6CCD0000000000000000000000000000000000000000003850 + A3000536DB000536DB000536DB000536DB000536DB000536DB000536DB000536 + DB000536DB000536DB000536DB000536DB000536DB000536DB000536DB004368 + E4003850A3000000000000000000000000000000000000000000293C8000042D + B6000000000000000000042DB6006780D3006780D3005B75CF005772CE00536F + CC004765C9004765C9003F5EC7003758C5003758C5000931B800000000000000 + 0000042DB600293C800000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000026366A007D94E1004256 + 9C00687FCF000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000293D8400042EBC00042E + BC00042EBC00042EBC00042EBC002A408B00BBC7F20000000000000000000000 + 0000000000000000000000000000BBC7F2001B389800042EBC00042EBC00042E + BC00042EBC00042EBC0000000000000000000000000000000000000000003851 + A1000535D8000535D8000535D8000535D8000535D8000535D8000535D8000535 + D8000535D8000535D8000535D8000535D8000535D8000535D8000535D8004368 + E1003851A10000000000000000000000000000000000000000002A3E8200042D + B7000000000000000000042DB7003052C4003052C4003052C4003052C4003052 + C4003052C4003052C4003052C4003052C4003052C400042DB700000000000000 + 0000042DB7002A3E820000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000028387000869FF1007D95 + E6004A5DA0000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000002B3E8600042FBF00042F + BF00042FBF00042FBF001D399C00BBC7F2000000000000000000000000000000 + 0000000000000000000000000000000000002C438E001D399C00042FBF00042F + BF00042FBF00042FBF000000000000000000000000000000000000000000384F + 9F000534D4000534D4000534D4000534D4000534D4000534D4000534D4000534 + D4000534D4000534D4000534D4000534D4000534D4000534D4000534D4004367 + DF00384F9F0000000000000000000000000000000000000000002B3F8400042E + B900042EB900042EB900042EB900395AC800395AC800395AC800395AC800395A + C800395AC800395AC800395AC800395AC800395AC800042EB900042EB900042E + B900042EB9002B3F840000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000002B3B75008BA1EB00829A + EA006A87EB003349900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000002E428D000431C5000431 + C5000431C5000431C5002148CC003A4D9300869AE10000000000000000000000 + 0000000000000000000000000000BBC8F300566CB7003358D0000431C5000431 + C5000431C5000431C5000000000000000000000000000000000000000000384E + 9B000634CD000735CD000735CD00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000735CD000735CD004366 + D900384E9B0000000000000000000000000000000000000000002D418700042E + BC00042EBC00042EBC00042EBC004C6ACF004C6ACF004C6ACF004C6ACF004C6A + CF004C6ACF004C6ACF004C6ACF004C6ACF004C6ACF00042EBC00042EBC00042E + BC00042EBC002D41870000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000304180009CAEED007F96 + E1004B67C7004368E40030418000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000002F4590000432C9000432 + C9001F3EA5000432C9000432C9005671C8003B4F9600889CE200000000000000 + 00000000000000000000BDC8F300354B99003358D3000432C9000432C9001F3E + A5000432C9000432C9000000000000000000000000000000000000000000384E + 98000E3ACB000F3ACB000F3ACB000C2FA3000C2FA3000C2FA3000C2FA3000C2F + A3000C2FA3000C2FA3000C2FA3000C2FA3000C2FA3000F3ACB000F3ACB004567 + D600384E980000000000000000000000000000000000000000002F438A00042F + BE000000000000000000042FBE005673D3005673D3005673D3005673D3005673 + D3005673D3005673D3005673D3005673D3005673D300042FBE00000000000000 + 0000042FBE002F438A0000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000334486009EB0EE007F96 + E1004B67C7004468E40033448600000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000324893000835CC002341 + A800334A9A002442A9000835CC00254DD2005A74CB003E539A00000000000000 + 000000000000BDC9F300374E9C005B71BD000835CC000835CC002442A900334A + 9A002341A8000835CC000000000000000000000000000000000000000000384D + 9800153FCA001740CA001740CA001740CA001740CA001740CA001740CA001740 + CA001740CA001740CA001740CA001740CA001740CA001740CA001740CA004868 + D500384D9800000000000000000000000000000000000000000030448C00042F + C0000000000000000000042FC0005F7AD7005F7AD7005F7AD7005F7AD7005F7A + D7005F7AD7005F7AD7005F7AD7005F7AD7005F7AD700042FC000000000000000 + 0000042FC00030448C0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000035488B009FB1EE007F96 + E1004B67C7004468E40035488B00000000000000000000000000000000000000 + 000000000000000000000000000000000000000000004159B0003B53A900BCC9 + F40000000000BCC9F400384FA0001945D6001945D6003359D9004358A1008A9E + E400BDC9F400647AC5004468DE001945D600324FB400324B9F0091A6EB000000 + 0000BCC9F4003B53A90000000000000000000000000000000000000000003A50 + 9B00254CCF00274ECF00274ECF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00274ECF00274ECF004D6D + D8003A509B000000000000000000000000000000000000000000324790000430 + C3000430C3000430C3000430C300718ADD00718ADD00718ADD00718ADD00718A + DD00718ADD00718ADD00718ADD00718ADD00718ADD000430C3000430C3000430 + C3000430C3003247900000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000003A4F9700A0B2EE007F96 + E1004B67C7004469E5003A4F9700000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000BDC9F4003956BA00224CDA00224CDA006B84D600465A + A5003D55A6004B6EE100224CDA00224CDA00354EA10091A6EC00000000000000 + 0000000000000000000000000000000000000000000000000000000000003B51 + 9C002D53D2003055D2003055D2002745A9002745A9002745A9002745A9002745 + A9002745A9002745A9002745A9002745A9002745A9003055D2003055D2005070 + D9003B519C000000000000000000000000000000000000000000334893000430 + C4000430C4000430C4000430C4007B92E0007B92E0007B92E0007B92E0007B92 + E0007B92E0007B92E0007B92E0007B92E0007B92E0000430C4000430C4000430 + C4000430C4003348930000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000003D539E00A0B2EE007F96 + E1004B67C7004469E5003D539E00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000003C53A700415DBE002B54DE004368E2007189 + D9006E84CD002B54DE002B54DE00415DBE0093A7EC0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000003C53 + 9D003358D400375CD400375CD400375CD400375CD400375CD400375CD400375C + D400375CD400375CD400375CD400375CD400375CD400375CD400375CD4005271 + DA003C539D000000000000000000000000000000000000000000354A95000532 + C70000000000000000000532C700859BE300859BE300859BE300859BE300859B + E300859BE300859BE300859BE300859BE300859BE3000532C700000000000000 + 00000532C700354A950000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000004056A300A1B3EE007F96 + E1004B67C7004569E5004056A300000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000BECAF4004059AD003B62E5003B62 + E5003B62E5004B67CA003B55AC0094A8EE000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000003E55 + A1004366D900486AD900486AD900FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00486AD900486ADA005776 + DC003E55A1000000000000000000000000000000000000000000394F99000D39 + CB000D39CB000D39CB000D39CB009CAEEA009CAEEA009CAEEA009CAEEA009CAE + EA009CAEEA009CAEEA009CAEEA009CAEEA009CAEEA000D39CB000D39CB000D39 + CB000D39CB00394F990000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000004962B9006B82CC00B4C4F900A7B9 + F80098AEF7007692F2006279CA00465EB3000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000BECCF500455DB200446AE900446A + E900446AE9006C85DE005065B3008CA1E8000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004056 + A2004A6CDB005171DD005171DD00405AB000405AB000405AB000405AB000405A + B000405AB000405AB000405AB000405AB000405AB0005171DD005070DD005977 + DD004056A20000000000000000000000000000000000000000003B519B00113D + CE00113DCE00113DCE00113DCE00113DCE00113DCE00113DCE00113DCE00113D + CE00113DCE00113DCE00113DCE00113DCE00113DCE00113DCE00113DCE00113D + CE00113DCE003B519B0000000000000000000000000000000000000000000000 + 0000000000000000000000000000516AC4006980CD0087A0F3009DB1F3008AA3 + F4007993ED005C7AE0006081EE006078CC00BFCCF50000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000BECCF500475FB5008396D9004B70EC004B70 + EC004B70EC006081EF00879CE5005369B6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004157 + A5005272DD005978DE005978DE005978DE005978DE005978DE005978DE005978 + DE005978DE005978DE005978DE005978DE005978DE005978DE005978DE005D7B + E0004157A50000000000000000000000000000000000000000003E539E001641 + D1001641D1001641D1001641D100728CE300728CE3006783E0006480E000607D + E0005574DD005574DD004D6EDC004568DA004568DA001641D1001641D1001641 + D1001641D1003E539E0000000000000000000000000000000000000000000000 + 0000000000000000000000000000677FD0007A95F1008CA1E80096ACF500839D + F100728DEA004F6ED7004667D4005276EC004D65BE00BFCDF600000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000BFCCF5008DA0DF007C97F4005D80F2006A83D700455F + BB004962BB005D80F2005D80F200708EF400586FBD008FA3E900000000000000 + 000000000000000000000000000000000000000000000000000000000000435A + A800617FE2006A86E3006A86E300FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF006A86E3006985E300617E + E100435AA80000000000000000000000000000000000000000004258A2001E48 + D50000000000000000001E48D5004E6FDE004E6FDE004E6FDE004E6FDE004E6F + DE004E6FDE004E6FDE004E6FDE004E6FDE004E6FDE001E48D500000000000000 + 00001E48D5004258A20000000000000000000000000000000000000000000000 + 000000000000556FCD00637CD1006B85D9008096E1009CAEED0088A1F3007792 + EC006582E4004363CF003354C3002446B5003C63E8005B75CF00506AC3000000 + 000000000000000000000000000000000000000000004E69C5004A65C000BFCC + F50000000000BFCCF5004D66BD00829DF5006686F3006686F3004761BC0098AB + F000BFCCF5007089D9006686F3006686F30098AAEB005970BF0090A3EA000000 + 0000BFCCF5004A65C0000000000000000000000000000000000000000000445B + AA006985E300728CE500728CE5005A6FB7005A6FB7005A6FB7005A6FB7005A6F + B7005A6FB7005A6FB7005A6FB7005A6FB7005A6FB700728CE500718BE5006481 + E300445BAA0000000000000000000000000000000000000000004359A500234C + D700234CD700234CD700234CD7005978E0005978E0005978E0005978E0005978 + E0005978E0005978E0005978E0005978E0005978E000234CD700234CD700234C + D700234CD7004359A50000000000000000000000000000000000000000000000 + 00005671CD00637CD1005C7DEC006E86D7008A9FE500A1B3F000819BF000718C + E9005F7DE1003D5ECB002D4EBD001F41B0001033A500375FE7005C76D000BFCD + F60000000000000000000000000000000000000000004761B8008296DA004862 + BB00BFCCF5004E67BE0096A6E1006E8DF3006E8DF300778DDB0098ABF0000000 + 0000000000004C65BD00778DDB006E8DF3007F9AF5009CAEEC005C73BF00BFCC + F5004862BB008296DA000000000000000000000000000000000000000000465D + AB00708BE5007A94E8007A94E8007A94E8007A94E8007A94E8007A94E8007A94 + E8007A94E8007A94E8007A94E8007A94E8007A94E8007A94E8007892E6006683 + E400465DAB000000000000000000000000000000000000000000455BA8002750 + D9002750D9002750D9002750D9006481E4006481E4006481E4006481E4006481 + E4006481E4006481E4006481E4006481E4006481E4002750D9002750D9002750 + D9002750D900455BA80000000000000000000000000000000000000000000000 + 0000607AD1005375EB004D69C8007990DD0094A8EA00A0B3F3007B96EE006A86 + E6005977DD003758C600284AB9001A3CAB0004248F000C2E9F00375FE700526C + C500BFCDF600000000000000000000000000000000004963BA007F9AF50097AD + F700A0AFE40097ADF7007F9AF5008498DE004B64BF0098ABF000000000000000 + 00000000000000000000BFCCF5004F67BF007F9AF5007F9AF5008DA5F60091A2 + DE0097ADF7007F9AF5000000000000000000000000000000000000000000485F + AF007F98EA008AA0EB008AA0EB008AA0EB008AA0EB008AA0EB008AA0EB008AA0 + EB008AA0EB008AA0EB008AA0EB008AA0EB008AA0EB008AA0EB0089A0EB006A86 + E500485FAF0000000000000000000000000000000000000000004A60AD003058 + DE0000000000000000003058DE007A94EA007A94EA007A94EA007A94EA007A94 + EA007A94EA007A94EA007A94EA007A94EA007A94EA003058DE00000000000000 + 00003058DE004A60AD00000000000000000000000000000000005973CF005F79 + D2003251B7003F5BB8005772C9008DA2E700A1B3F10092A9F4006F8BE8005D7B + E0004C6CD5002C4DBC001E40AF001031A00003238D0003238D0003238D00375F + E7005E78D200536EC7000000000000000000000000004B64BB0087A1F50087A1 + F5009EB3F70087A1F50087A1F5004D66C00098ABF00000000000000000000000 + 0000000000000000000000000000BFCCF5008A9EE00087A1F50087A1F5009EB3 + F70087A1F50087A1F50000000000000000000000000000000000000000004960 + B000879EEB0093A8ED0093A8ED0093A8ED0093A8ED0093A8ED0093A8ED0093A8 + ED0093A8ED0093A8ED0093A8ED007D8EC9007D8EC9007D8EC9007B8DC9005A73 + C4004960B00000000000000000000000000000000000000000004C62AF00355C + E0000000000000000000355CE000849CEC00849CEC00849CEC00849CEC00849C + EC00849CEC00849CEC00849CEC00849CEC00849CEC00355CE000000000000000 + 0000355CE0004C62AF000000000000000000000000005973CF005F78D3004068 + EE003B59BF00516DCB006882D8009CAFEE00A3B5F40091A8F400708CE900607E + E3005070DA003255C7002447BC00183BB1001033A6001033A6001033A600193E + B8003B64ED005F78D300C1CDF60000000000000000004C65BC008FA7F6008FA7 + F6008FA7F6008FA7F60090A2E20098ABF0000000000000000000000000000000 + 000000000000000000000000000000000000526AC20090A2E2008FA7F6008FA7 + F6008FA7F6008FA7F60000000000000000000000000000000000000000004B62 + B2008EA4ED009BAEEF009BAEEF009BAEEF009BAEEF009BAEEF009BAEEF009BAE + EF009BAEEF009BAEEF009BAEEF008494CC00485EAB00485EAB00485EAB005167 + B0004B62B20000000000000000000000000000000000000000004F64B1003960 + E2003960E2003960E2003960E2008FA5EF008FA5EF008FA5EF008FA5EF008FA5 + EF008FA5EF008FA5EF008FA5EF008FA5EF008FA5EF003960E2003960E2003960 + E2003960E2004F64B1000000000000000000000000005F79D3003C65EE00426A + F0006183F2007491F40088A2F600B3C3F900ADBEF8009EB3F700829CF5007491 + F4006787F3004F74F100446BF0003B64EF003761EF003761EF003761EF003761 + EF003761EF003B64ED005872CD0000000000000000004E67BE00A1B5F700A1B5 + F700A1B5F700A1B5F700B3C3F8004E68C100BFCDF60000000000000000000000 + 0000000000000000000000000000BFCDF6009BABDE00B3C3F800A1B5F700A1B5 + F700A1B5F700A1B5F70000000000000000000000000000000000000000004D65 + B6009BAEF000ABBBF200ABBBF200ABBBF200ABBBF200ABBBF200ABBBF200ABBB + F200ABBBF200ABBBF200ABBBF20092A0CF00C7D2F600AEBEF200718CE7004C65 + B900BFCCF5000000000000000000000000000000000000000000536AB7004267 + E6004267E6004267E6004267E600A2B4F300A2B4F300A2B4F300A2B4F300A2B4 + F300A2B4F300A2B4F300A2B4F300A2B4F300A2B4F3004267E6004267E6004267 + E6004267E600536AB7000000000000000000000000003761EF000936CC00214A + D4005475E4006E8AE900869EEF0098ADF50088A1F5007B96F0005C7BE2004E6E + DA003F60CF002648B900193BAB000E2F9E000324930003269A000328A000042B + AD00042DB500042EBB005872C90000000000000000004F69C000A9BBF800A9BB + F800A9BBF800A9BBF800A9BBF800A0ADDF00526CC70000000000000000000000 + 0000000000000000000000000000526CC700B9C8F900A9BBF800A9BBF800A9BB + F800A9BBF800A9BBF80000000000000000000000000000000000000000004E66 + B80097ABEF00AEBEF300B1C1F300B2C1F300B2C1F300B2C1F300B2C1F300B2C1 + F300B2C1F300B2C1F300B1C1F30096A3CF00A6B7F100738EE800546DC200BFCC + F500000000000000000000000000000000000000000000000000546BB900466B + E7000000000000000000466BE700AABBF400AABBF400AABBF400AABBF400AABB + F400AABBF400AABBF400AABBF400AABBF400AABBF400466BE700000000000000 + 0000466BE700546BB900000000000000000000000000486CE800496DE8005477 + EA006D8AED007994EE00849DF0008BA2F000849DF0007E98EE00708DED006A88 + ED006483EB005678EA005174EA004C70E800486CE800486CE800486CE800486C + E800486CE800486CE8005872C9000000000000000000556FCC005069C0005069 + C0005069C0005069C0005069C0005069C000556FCC0000000000000000000000 + 0000000000000000000000000000556FCC005069C0005069C0005069C0005069 + C0005069C0005069C00000000000000000000000000000000000000000004F67 + BA00879FEE009DB0F100A5B6F100A8B9F200A8B9F200A8B9F200A8B9F200A8B9 + F200A8B9F200A7B8F100A5B6F1008898CD006986E7005770C4004F67BD000000 + 0000000000000000000000000000000000000000000000000000576DBB00496E + E9000000000000000000496EE900B2C2F500B2C2F500B2C2F500B2C2F500B2C2 + F500B2C2F500B2C2F500B2C2F500B2C2F500B2C2F500496EE900000000000000 + 0000496EE900576DBB000000000000000000000000005872C9005872C9005872 + C9005872C9005872C9005872C9005872C9005872C9005872C9005872C9005872 + C9005872C9005872C9005872C9005872C9005872C9005872C9005872C9005872 + C9005872C9005872C9005B76D200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000516A + C000516ABD00516ABD00516ABD00516ABD00516ABD00516ABD00516ABD00516A + BD00516ABD00516ABD00516ABD00516ABD00516AC000BFCDF500000000000000 + 00000000000000000000000000000000000000000000000000007790E100546B + BE005A71C1005A71C1005A71C1005A71C1005A71C1005A71C1005A71C1005A71 + C1005A71C1005A71C1005A71C1005A71C1005A71C1005A71C1005A71C1005A71 + C100546BBE007790E10000000000000000000000000000000000000000000000 + 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 + 0000000000000000000000000000000000000000000000000000455CA5002F3E + 7100475CA400445BA800435AA700435AA600435AA600435AA500435AA500435A + A500445AA5004359A3004359A3004359A2004359A1004359A1004358A0004353 + 8C002D3A660043589F000000000000000000000000003855B5003A56B5003B57 + B5003C57B4003D58B5003D58B5003D58B5003D58B5003D58B5003D58B5003D58 + B5003D58B5003D58B5003D58B5003D58B5003D58B5003D58B5003D58B5003C58 + B5003B57B5003A56B500263774000000000000000000000000007E7E7E003C3C + 3C007B7B7B008A8A8A00D8D8D800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000A3B3E90029396C003B4A7E0043549300485C9E00485C + 9E00485C9E00435493003B4B80002A396E00A3B3E90000000000000000000000 + 000000000000000000000000000000000000000000006279C90030427E004660 + B400072BA3000328A1000328A00003279F0003279F0003279F0003279D000326 + 9C0003269C0003269A0003269A00032699000325970003259700032596002643 + A300495EA5002E3D71000000000000000000000000003753B2000F34AF001236 + AE00163AB000173AB000173AB000173AB000173AB000173AB000173AB000173A + B000173AB000173AB000173AB000173AB000173AB000173AB000173AB0001539 + B0001337AF000F34AF00283A7C000000000000000000000000009E9E9E005959 + 5900333333006B6B6B0088888800C6C6C6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003E55A3002F3E7400455EAF002F4BAB001E3DA400032699000326 + 9900032699001E3DA4002F4BAB00455EAF002F3E74003E55A300000000000000 + 00000000000000000000000000000000000000000000283C8000495EA8002748 + B5000429A7000429A7000429A6000429A5000328A4000328A3000328A2000328 + A1000328A00003279F0003279F0003279E0003279D0003269C0003269B000326 + 9A002745A800485B9B000000000000000000000000003C58B800173CB5001D40 + B6002244B6002345B7002345B6002446B7002446B7002446B7002446B7002446 + B7002446B7002446B7002446B7002446B7002345B6002345B6002345B7002144 + B7001E41B700183DB6002A3D8100000000000000000000000000000000007676 + 76003C3C3C00ADACAC00C4C3C2008D8D8D0080808000B0B0B000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000293D85003D4E8900465FB0000B2EA10003279F0003279F0003279F000327 + 9F0003279F0003279F0003279F000B2EA100465FB0003D4E8900293D85000000 + 000000000000000000000000000000000000000000002B3D81004361C700042C + B300042CB200042CB100042BB000042BAF00042BAE00042BAD00042BAC00042A + AB00042AAA00042AAA00042AA9000429A8000429A7000429A6000429A6000328 + A4000328A300435EBB000000000000000000000000004764C600284CC4003254 + C4003556C5003556C5003556C5003556C5003556C5003556C5003556C5003556 + C5003556C5002B4BB5000626910003269B00677FCF004160C8003556C5003556 + C5003254C400284CC4002F448D00000000000000000000000000000000000000 + 0000E0DFDF00CECCCC00C0BEBD00A09E9D00605F5E006F6F6E0027377200B6C3 + F000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000002D41 + 8A003654B900082DA9000429A8000429A8000429A8000429A8000429A8000429 + A8000429A8000429A8000429A8000429A8000429A800082DA9003654B9002D41 + 8A0000000000000000000000000000000000000000002D4185004362CA00042D + B800042DB600042DB600FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00042AAA00042A + AA00042AA900425EBD000000000000000000000000004C6ACD003054CB003C5D + CC003F5FCC003F5FCC003F5FCC003F5FCC003F5FCC003F5FCC003F5FCC003F5F + CC003F5FCC000728960003279F0003279F002343AD006D85D5004A68CE003F5F + CC003C5DCC003155CB0031479200000000000000000000000000000000000000 + 0000CBCACA00DAD9D900C7C6C500767574007777760071737A003E508B002738 + 7300B6C5F0000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000445DAE004154 + 9500082EAE00042BAC00042BAC00042BAC00042BAC00042BAC00042BAC00042B + AC00042BAC00042BAC00042BAC00042BAC00042BAC00042BAC00082EAE004154 + 9500445DAE00000000000000000000000000000000002F438A004363CE000530 + BE00042EBC00042EBB00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0003259600042B + AE00042BAE00425FC1000000000000000000000000005471D4003C5FD2004969 + D3004B6AD2004B6AD2004B6AD2004B6AD2004B6AD2004B6AD2004B6AD2004B6A + D2003D5BC100072CA400072CA400072CA400072CA4002646B100758CD9004B6A + D2004969D2003C5FD100344A9700000000000000000000000000000000000000 + 00009A999900E3E2E200C8C7C6009291910085888F001F3A95003E57A9003E50 + 8B00283873000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000A7B6EC00384987004863 + BE00042CB100042CB100042CB100042CB100042CB100042CB100042CB100042C + B100042CB100042CB100042CB100042CB100042CB100042CB100042CB1004863 + BE0038498700A7B6EC00000000000000000000000000334993004A6BD800143E + CA00153EC900143DC800123CC8000C30A8000A2FA700092EA700062BA4001437 + A9001437A9000328A1000328A1000328A00003279F0003279F0003279F00042D + B800042DB8004362C9000000000000000000000000006581E1005273E000627F + E1006682E1006682E1006682E1006682E1006682E1006682E1005571CF001435 + A2001035AF001035AF001035AF001035AF001035AF001035AF001035AF00859B + E3006C87E3005373E0003A51A300000000000000000000000000000000000000 + 0000B0B0B00093929200B3B2B2006883E0005070DC003B5CCB00092A99000F2D + 93003E57A900293A7500B6C5F100000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000394B8E004A67C800133A + BF000C35BE000C35BE000C35BE00FFFFFF00FFFFFF00A2B2E5000C35BE000C35 + BE000C35BE00A2B2E500FFFFFF00FFFFFF000C35BE000C35BE000C35BE001239 + BE004A67C800394B8E00000000000000000000000000354B98004E6FDC001D46 + D1002149D1001F48D0001D46CF001A43CD001841CC001640CB002148CC00D1D9 + F400D1D9F4000B36C5000A35C4000833C3000530C1000530C100042FBF00042F + BE00042FBD004363CD000000000000000000000000006D89E8005D7DE7006F8B + E800748FE900748FE900748FE900748FE900748FE900748FE900173496001336 + A9001336A900153AB500153AB500153AB500153AB500153AB5001439B1003250 + B4008B9FE3006885E8003C55A800000000000000000000000000000000000000 + 0000000000006F75900091939D006E8CF2006A88EC005574DD002143B300092A + 99000F2D930040528C002A3B7500B6C5F1000000000000000000000000000000 + 000000000000000000000000000000000000000000004A5DA500395BCD00153D + C400173FC400173FC400173FC400FFFFFF00FFFFFF00FFFFFF00173FC400173F + C400173FC400FFFFFF00FFFFFF00FFFFFF00173FC400173FC400173FC400153D + C400395BCD004A5DA500000000000000000000000000384F9D005172E000264F + D8002C53D7002A51D6002951D600254DD400234BD300214AD200D3DBF500FFFF + FF00FFFFFF00254CCF00153FCB00133DCA000F3AC8000E39C7000C37C7000833 + C4000632C3004364D1000000000000000000000000007591EF006887EE007B96 + F000819BF000819BF000819BF000819BF000819BF000819BF000142F8C00142F + 8C00142F8C001A3FBA001A3FBA001A3FBA001A3FBA001A3FBA002949B400142F + 8C00324B9D008DA3EB004058AE00000000000000000000000000000000000000 + 000000000000BECCF500455FB900829DF5007B97F4006C89EC003B5CCB002143 + B300092A99003E57A90040528D002A3C76000000000000000000000000000000 + 000000000000000000000000000000000000000000005169BD003357CF002148 + CB00234ACB00234ACB00234ACB009DA9D000FFFFFF00FFFFFF00ABBAEB00234A + CB00ABBAEB00FFFFFF00FFFFFF009DA9D000234ACB00234ACB00234ACB002148 + CB003357CF005169BD000000000000000000000000003C54A7005879E800375E + E2004267E3004065E2003F64E2003B61E0004569E100D9E0F800FFFFFF00FFFF + FF00FFFFFF00FFFFFF00D6DDF700365BDA00264ED600244DD600224BD4001E47 + D2001742D0004B6CDB000000000000000000000000007E99F500708EF400829D + F50094ABF60097ADF70099AFF70099AFF70099AFF70099AFF70099AFF70099AF + F70099AFF7002448BF002448BF002448BF002448BF002448BF00B7C7F90099AF + F70091A8F6007E99F500445DB400000000000000000000000000000000000000 + 00000000000000000000000000004762BB00627BD4007D98F5006B89EC005574 + DD003B5CCB00092A99000F2D93003E57A9002C3D7800B6C5F100000000000000 + 000000000000000000000000000000000000000000005D78D5002D54D500365B + D700395ED800395ED800395ED800395ED8003353BE00A4AFD400FFFFFF00FFFF + FF00FFFFFF00A4AFD4003353BE00395ED800395ED800395ED800395ED800385D + D8002E54D5005F79D5000000000000000000000000003F58AB005C7DEC003F66 + E7004D71E9004B6FE700496EE7005073E600DBE2F900FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00D8DFF8003158DC002F56DB002D55DA002951 + D900204AD6004E6FDE000000000000000000000000007C97F4006989F3007995 + F40088A2F6008FA7F60098AEF700A3B6F800A3B6F800A3B6F800A3B6F800A3B6 + F800A3B6F8002646B3002646B3002646B3002646B3002646B300BECCFA00A1B5 + F70095ACF700819BF500455EB600000000000000000000000000000000000000 + 0000000000000000000000000000BFCCF5004963BC00627CD5007894F4006D8A + EC005574DD002143B300092A99000F2D930042548E002C3E7900B6C5F1000000 + 00000000000000000000000000000000000000000000607BD800365CDC004266 + DE004569DF004569DF004569DF004569DF004569DF003D5CC300FFFFFF00FFFF + FF00FFFFFF003D5CC3004569DF004569DF004569DF004569DF004569DF004468 + DF003A5FDC006681DB00000000000000000000000000415AB1006081F000486D + EC00587BED005679EC005477EC00DDE4FA00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF005F7EE6003A60E000395FE000335A + DE002952DC005173E200000000000000000000000000ADBEF8009AAFF700A0B4 + F700A7B9F800ACBDF800ADBEF8009FB3F700A4B7F800A6B9F800A7B9F800A7B9 + F800A8BAF800223C9000223C9000223C9000223C9000223C9000C0CEFA009FB3 + F70093AAF600809BF5004660B700000000000000000000000000000000000000 + 000000000000000000000000000000000000BFCCF5004A64BD007E99F5007E99 + F5006D8AEC003B5CCB002143B300092A99003E57A90042548F002D3E79000000 + 00000000000000000000000000000000000000000000657FDC003F64E1004D70 + E3005173E3005173E3005173E3005173E3005173E300BCC9F400FFFFFF00FFFF + FF00FFFFFF00BCC9F4005173E3005173E3005173E3005173E3005173E3004F71 + E3004368E1006C85DE00000000000000000000000000455EB6006787F300597C + F2006E8DF3006D8CF3006B8AF3005B77D5005772CF005570CD00FFFFFF00FFFF + FF00FFFFFF004C69CB004A68CB004866CA004563C9004564CA004D71E700486D + E9003A62E700597BEA000000000000000000000000007391F400456CF000456C + F000456CF000456CF0003A60E000A8BAF800ABBDF800AEBFF800AEBFF800AEBF + F800AEBFF800AEBFF800AEBFF800AEBFF800AEBFF800AEBFF800AEBFF800ABBD + F800A7B9F800A2B6F8004962B900000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000004D67C0006C85 + D80088A2F6006D8AEC005574DD003B5CCB00092A99000F2D93003E57A9002E40 + 7B00B6C5F100000000000000000000000000000000006680D6006080EC006080 + EB006886EC006886EC006886EC00C5D1F800FFFFFF00FFFFFF00B2BBDA005670 + C400B2BBDA00FFFFFF00FFFFFF00C5D1F8006886EC006886EC006886EC006181 + EB006181EC006780D6000000000000000000000000004660B7006B8AF3006183 + F2007A96F4007894F4007693F4007391F400718FF4006F8DF300FFFFFF00FFFF + FF00FFFFFF005671CE006384F3006082F1005C7EF0005B7EF000597CEF005276 + EE004269EB005C7EEE000000000000000000000000007894F4004B71F1004B71 + F1004B71F1004B71F1004B71F100365BD700365BD700365BD700365BD700365B + D700365BD700365BD700365BD700365BD700365BD700365BD700365BD700365B + D700365BD700365BD7004A63BB00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000BFCDF6004E68 + C1006D85D9007E99F5006D8AEC005574DD002143B300092A99000F2D93004354 + 8D004C526E00AFBEEE000000000000000000000000006279C8006E8CF0006887 + EF007491F1007491F1007491F100FFFFFF00FFFFFF00FFFFFF00657FD3007491 + F100657FD300FFFFFF00FFFFFF00FFFFFF007491F1007491F1007491F1006988 + EF006E8CF0006279C8000000000000000000000000004761B8006E8DF3006A8A + F300849EF500829DF500819BF5007E99F5007C97F4007A96F400FFFFFF00FFFF + FF00FFFFFF005E78CF006D8CF3006C8BF3006888F3006686F3006586F3005E80 + F2004B71F0006082F1000000000000000000000000007C97F4005075F1005075 + F1005075F1005075F1005075F1005075F1005075F1005075F1005075F1005075 + F1005075F1005075F1005075F1005075F1005075F1005075F1005075F1005075 + F1005075F1005075F1004B65BC00000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000BFCD + F6004F69C2007E99F5007894F4006B89EC003B5CCB002143B300092A99007B7E + 8F0068676900555769000000000000000000000000005169BB007E97F0006F8D + F300819BF500819BF500819BF500FFFFFF00FFFFFF00BAC2DC00819BF500819B + F500819BF500BAC2DC00FFFFFF00FFFFFF00819BF500819BF500819BF5007290 + F4007E98F1005169BB000000000000000000000000004963BA007491F4007995 + F4009BB0F70099AFF70097ADF70093AAF60091A8F60090A8F600FFFFFF00FFFF + FF00FFFFFF007187D100839EF500829CF5007F9AF5007D98F5007B97F400718F + F400597CF2006686F300000000000000000000000000849EF5005B7EF2005B7E + F2005B7EF2005B7EF2005B7EF2006384F300829CF5007E91D5004E67BE004E67 + BE004E67BE004E67BE004E67BE004E67BE004E67BE004E67BE004E67BE004E67 + BE004E67BE004E67BE004E68C100000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000516BC4006881D9007D98F5006C89EC005674D700949AAF00F4F4 + F400E3E2E200B1B2B800697CC2000000000000000000AEBDF200586EBF00869E + F0008FA7F60096ACF70096ACF7008497D8008497D80096ACF70096ACF70096AC + F70096ACF70096ACF7008497D8008497D80096ACF70096ACF70091A8F60089A1 + F000586FBF00AEBDF2000000000000000000000000004B64BB007693F4007D98 + F500A6B9F800A4B7F800A2B6F8009FB3F7009DB2F7009BB0F700FFFFFF00FFFF + FF00FFFFFF007B8FD1008EA6F6008CA5F60089A2F60087A1F500859FF5007995 + F4005F81F2006888F30000000000000000000000000088A2F6006183F2006183 + F2006183F2006183F2006183F200839EF5008195D600536CC000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000BFCDF600536DC6006882DA007A95ED00B9BFD400BFBEBC00EEEE + ED00CDCED400898D9C005A6387000000000000000000000000005C76D2006980 + CE008BA4F6009DB2F700A2B6F800A2B6F800A2B6F800A2B6F800A2B6F800A2B6 + F800A2B6F800A2B6F800A2B6F800A2B6F800A2B6F8009CB1F7008FA7F6006F85 + D0005C76D200000000000000000000000000000000004C65BC007C96EF007F9A + F500ADBEF800AFC0F900ADBEF800AABCF800A8BAF800A6B9F800A3B6F800899A + D3008798D2008496D2009AAFF70098AEF70094ABF60092A9F60090A8F6007B97 + F4006283F200718EEE000000000000000000000000008DA5F6006787F3006787 + F3006787F3006787F3006989F3008597D700546DC10091A5EB00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000BFCDF600536EC700ADB2C100EDECEC00EDECEC00BFC0 + C6008F93A2008F93A2006A6E7E00000000000000000000000000000000004E68 + C30094ABF60097ADF700A8BAF800AEBFF800AEBFF800AEBFF800AEBFF800AEBF + F800AEBFF800AEBFF800AEBFF800AEBFF800A5B8F80095ACF70095ACF7004E68 + C30000000000000000000000000000000000000000007990E3005F77C8008AA2 + F1008AA3F60091A8F60094ABF60094ABF60093AAF60093AAF60090A8F6008EA6 + F6008DA5F6008AA3F60088A2F60086A0F500829DF500809BF5007995F4007391 + F4007D97EF005D74C700000000000000000000000000506AC100506AC100506A + C100506AC100506AC100506AC10091A5EB000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000787D9300B5B5B900C9CAD000AFB4 + C300B3B8C800B3B9C8007286CC00000000000000000000000000000000000000 + 00004F6AC500758AD3009EB2F400A8BAF800B2C2F900B7C7F900BCCAFA00BCCA + FA00BBCAFA00B6C6F900B1C1F900A7B9F80098ADF2006F85D1004F6AC5000000 + 0000000000000000000000000000000000000000000000000000546FCB006078 + C9007C97F400809BF500829DF500839EF500829DF500829DF500819BF500819B + F500809BF5007F9AF5007E99F5007E99F5007B97F4007A96F4007794F400718B + E6005E75C8006680D90000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006974A1009095A500BCC1 + D000BCC1D100A3A8B80000000000000000000000000000000000000000000000 + 0000000000005E79D3005F76C5009FB3F500A3B6F800A4B7F8009FB3F7009FB3 + F7009FB3F700A3B6F800A0B4F7009FB3F5005F76C5005E79D300000000000000 + 0000000000000000000000000000000000000000000000000000000000007991 + E3005069C0005069C0005069C0005069C0005069C0005069C0005069C0005069 + C0005069C0005069C0005069C0005069C0005069C0005069C0005069C000506A + C3007991E3000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000007489C8008E92 + A200828BAF007A8ED40000000000000000000000000000000000000000000000 + 00000000000000000000AEBEF2005C74C500768CD500859AE40090A6F10091A7 + F10090A6F100839AE500758AD5005C73C400AEBEF20000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000DADA + DA002F417A002834600028346000283460002834600028346000283460002834 + 600028346000283460002834600028346000283460002834600028346000CACA + CA00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000CDD6F6000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000092A1D7002635640026356300C3C3C300CACACA00D3D3D300000000000000 + 0000000000000000000000000000D5D5D50090A1D5002532600025326000C8C8 + C800DADADA0000000000000000000000000000000000C2C2C200C0C0C0003345 + 7F0034437B0034437B0034437B0034437B0034437B0034437B0034437B003443 + 7B0034437B0034437B0034437B0034437B0034437B0034437B0034437B003443 + 7B0033457F00C0C0C000D6D6D600000000000000000000000000000000000000 + 00002A3970000525910004208000031D7300031D7300031D7300031D7300031D + 7300031D7300031D7300031D7300031D7300031D7300031D7300031D73000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000B6C3F0002939 + 740027366B000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000B9C6 + F100405396003F5AB6003F5AB5002A3D7D00B9C6F10000000000000000000000 + 0000000000000000000000000000B7C5F1003F5291003E58AF003E58AF00283A + 7800B7C5F100000000000000000000000000000000000000000000000000364B + 99007E93D7007D92D7007D92D7007C91D7007C91D7007C91D7007B90D7007B90 + D7007B90D7007A8FD700798FD700798FD700788ED700788ED700778DD70099A9 + E100364B99000000000000000000000000000000000000000000000000000000 + 00002D407F00637BCA005771CB006684EA006684EA006684EA006684EA006684 + EA006684EA006684EA006684EA006684EA006584EA008AA1EF00032288000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000B7C5F1004A5B99003E59 + B1003E59B1002C3B73008195DB00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000BAC6F2002C40 + 83003E5AB9000F32A8000F32A800415599002B3F8000B9C6F100000000000000 + 00000000000000000000B9C6F1002A3E7D003F5AB4000F31A0000F31A0004052 + 94002A3C7B00B7C5F1000000000000000000000000000000000000000000384F + 9D008398DC008398DC008297DC008297DC008297DC008196DC008196DC008196 + DC008196DD008095DC007F94DC007F94DC007E94DC007E94DC007E94DD009EAE + E500384F9D000000000000000000000000000000000000000000000000000000 + 000030438400667ECF00536ECB005D7EEB005D7EEB005D7EEB005D7EEB005D7E + EB005D7EEB005D7EEB005D7EEB005D7EEB005D7EEB00879FF00003238D000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000B9C6F1002E4281003F5AB6000F31 + A3000F31A3004A5D9E002D3E79008196DC000000000000000000000000000000 + 00000000000000000000000000000000000000000000BAC6F2002E4288004358 + A0000F34AD00042AAA00042AA9003E5BBC0042569D002D418500000000000000 + 000000000000B9C6F1002C41820041569A000F32A7000328A1000328A1003F5A + B700415598002B3F7F0000000000000000000000000000000000000000003A51 + A2008A9EE100899DE100899DE100889DE100879CE100879CE100869BE100869B + E100869BE100859AE100859AE100859AE1008499E1008499E1008499E100A2B2 + E8003A51A2000000000000000000000000000000000000000000000000000000 + 000032478A006780D3004C68C8005477EA005477EA005477EA005477EA005477 + EA005477EA005477EA005477EA005477EA005477EA00829CF000032493000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000B9C6F100304285004C5FA1000F33A9000328 + A4000328A4003E5AB9004C5FA1002F417E000000000000000000000000000000 + 000000000000000000000000000000000000000000006678B5004261C800183D + BC001036B7001036B7000F35B6000A31B4001338B700405EC40032468E00BAC7 + F200BAC7F2004459A4003F5DC2001035B200042BAD00042BAC00042BAC00042A + AB000F34AE003E5BBD002F428800000000000000000000000000000000003E56 + AA0097AAEC0097AAEC000633C9000633C9000633C9000633C9000633C9000633 + C9000633C90092A7EB0092A7EB0092A7EB0091A6EB0091A6EB0091A6EB00ABBB + F0003E56AA000000000000000000000000000000000000000000000000000000 + 0000374C96006883DB003C5CC6004268E9000434D2004268E9004268E9004268 + E9004268E9004268E9004268E9000434D2004268E9007893F00003279D000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000BAC7F2004E62AA003E5CC2001035B400042BB000042B + B000042BB000042BB0001035B4003E5CC200344688008499DF00000000000000 + 000000000000000000000000000000000000000000007D8DC1007D93DC001C42 + C200183EBF001A40C000193FBF00143BBC001037BB00183EBD00465CA900344A + 9200344991003F5EC6001036B700042CB400042CB300042CB200042CB200042B + B0001035B400798ED40032478C00000000000000000000000000000000004159 + AE00A1B3F200A1B3F200A1B3F200A0B3F200A0B3F2009FB2F2009FB2F2009EB1 + F2009EB1F2009DB0F2009DB0F2009CB0F2009BAFF1009BAFF1009BAFF100B1C1 + F4004159AE000000000000000000000000000000000000000000000000000000 + 00003A509A006984DF003455C4003962EA000434D3003962EA003962EA003962 + EA003962EA003962EA003962EA000434D3003962EA00728FEF000328A1000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000BAC7F200374B94003F5EC7001037B900042DB600042DB600042D + B600042DB600042DB600042DB6001037B9004F65AF0036498C00859AE1000000 + 00000000000000000000000000000000000000000000384E9A007F8FC4007F95 + DF001D44C5002147C7002248C7001E44C4001B42C300163DC1004564CD004860 + AD00485FAD00153CBE000831BA000730B900042DB700042DB700042DB7001037 + B9007A90D8007C8BBE00BAC7F20000000000000000000000000000000000425C + B300A9BBF600A9BBF6001541D3001541D3001541D3001541D3001541D3001541 + D3001541D3001541D3001541D3001541D3001541D3001541D300A3B6F600B8C7 + F800425CB3000000000000000000000000000000000000000000000000000000 + 00003C53A1006985E2002B4EC300305BEA000534D400305BEA00305BEA00305B + EA00305BEA00305BEA00305BEA000534D400305BEA006C8AF0000429A6000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000BCC8F300394F98005167B200153CC0000932BC000932BC000932BC000932 + BC000932BC000932BC000932BC000932BC004161CC005167B200394C91000000 + 0000000000000000000000000000000000000000000000000000BDC9F4003C53 + A200839AE5002C52D2002A50D1003055D2002E53D1002C52D100264DCE002D52 + CF002B50CF001E46CB001C44CA001A42C900143DC600103AC500173FC700808F + C500394F9B00BCC8F3000000000000000000000000000000000000000000455F + B600B6C6F900B6C6F900244DD600244DD600244DD600244DD600244DD600244D + D600244DD600244DD600244DD600244DD600244DD600244DD600B1C1F900C0CE + FA00455FB6000000000000000000000000000000000000000000000000000000 + 00004259AD006987EA001B41C1001E4DEA000535D6001E4DEA001E4DEA001E4D + EA001E4DEA001E4DEA001E4DEA000535D6001E4DEA006081F000042BB0000000 + 000000000000000000000000000000000000000000000000000000000000BDC9 + F400536BBC00496AD7002C51D000284ECE002A50D0002048CD001C44CC001C44 + CC001C44CC001C44CC001C44CC002A50D000254CCE002C51D000496AD7003D52 + 9C00899EE400000000000000000000000000000000000000000000000000BDCB + F4008393CD00859CE7003056D600375CD800365BD700355AD6003056D5002E54 + D4002C52D300274ED100254CD000234BD0001942CC001E46CE007E95E2003A52 + A000BDC9F4000000000000000000000000000000000000000000000000004660 + B700BCCAFA00BCCAFA00BBCAFA00BBCAFA00BAC9FA00BAC9FA00B9C8F900B9C8 + F900B9C8F900B9C8F900B8C7F900B8C7F900B7C7F900B7C7F900B7C7F900C4D1 + FA004660B7000000000000000000000000000000000000000000000000000000 + 0000455EB2006987ED00133ABE00153CBF000535D7001546EA001546EA001546 + EA001546EA001546EA001546EA000535D7001546EA005A7DF100042DB6000000 + 0000000000000000000000000000000000000000000000000000000000003D56 + A500506ED2005370D2005673D3005B77D4005A78DC002B52D400254DD300254D + D300254DD300254DD300244CD3005A78DC005974D3005673D3005370D2005D72 + B9004056A000D1DAF80000000000000000000000000000000000000000000000 + 00004059AB008495D000869DEA003A5FDC003F64DD003D62DC003A5FDB00385D + DB00355BDA003157D7002E55D6002C53D600254DD4008097E5008292CB00BDC9 + F400000000000000000000000000000000000000000000000000000000004760 + B800C1CEFA00C2CFFA003358D7003358D7003358D7003358D7003358D7003358 + D7003358D7003358D7003358D7003358D7003358D7003358D700BCCAFA00C8D4 + FB004760B8000000000000000000000000000000000000000000000000000000 + 00004761B8006988F1000B34BD009DB2F6000535D7000C3FEA000C3FEA000C3F + EA000C3FEA000C3FEA000C3FEA000535D7000C3FEA005478F000042EBA000000 + 0000000000000000000000000000000000000000000000000000000000004B62 + AF003F56A5003F56A5003F56A5003F56A5005D79D8002A52D9002F56DA002F56 + DA002F56DA002F56DA002951D9005D79D7003F56A5003F56A5003F56A5003F56 + A5003F58AA000000000000000000000000000000000000000000000000000000 + 000000000000BECCF500455EB5006483EA005275E8004F72E7004B6FE600496D + E500466BE4004267E3004166E3004267E2007C8FD100425BB000BDCBF4000000 + 0000000000000000000000000000000000000000000000000000000000004962 + BA00CBD6FB00CBD6FB004164D8004164D8004164D8004164D8004164D8004164 + D8004164D8004164D8004164D8004164D8004164D8004164D800C7D3FB00CFD9 + FB004962BA000000000000000000000000000000000000000000000000000000 + 00004A64BC006989F300042DB6009AAFF3002242AE002245BA000538E4000538 + E4000538E4000538E4000538E4000434D2000538E4004F73EB00042EBC000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000445DB100607DE000375FE5004167E6004167 + E6004167E6004167E600375FE500607DE0000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000BFCCF5004861BA006887EE00597BEC00597BEC005578EB005275 + EA005074EA004C70E800496EE8004B6FE7005670CB00465EB400BFCCF5000000 + 0000000000000000000000000000000000000000000000000000000000004A63 + BB00D0DAFB00D1DBFB00D0DAFB00CFD9FB00CFD9FB00CFD9FB00CED8FB00CED8 + FB00CED8FB00CDD8FB00CDD8FB00CDD8FB00CCD7FB00CCD7FB00CCD7FB00D2DB + FB004A63BB000000000000000000000000000000000000000000000000000000 + 00004B65BD006989F300042CB4009AAEF2009BADEC009AAEF2000537E1000537 + E1000537E1000537E1000537E1000433D0000537E1004F73EA00042EBC000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000004760B5006381E5003E65EA004A6FEB004A6F + EB004A6FEB004A6FEB003E65EA006280E5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000BFCCF5004B65BE005975D300577AF0005E80F0006384F1005E80EF005C7E + EF00597CEE005477ED005276ED004E73EC00597BEC005973CF004861B9000000 + 0000000000000000000000000000000000000000000000000000000000004B64 + BC00D5DEFC00D5DEFC005070D9005070D9005070D9005070D9005070D9005070 + D9005070D9005070D9005070D9005070D9005070D9005070D900D0DAFB00D5DE + FC004B64BC000000000000000000000000000000000000000000000000000000 + 00004C66BD006989F300042CB2009AAEF1000433CE000537DE000537DE000537 + DE000537DE000537DE000537DE000433CE000537DE004F72E800042EBC000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000004964BB006683E800466DEE005478F0005478 + F0005478F0005478F000456CEE006582E8000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000BFCD + F6005B76D5006183F200577BF2007693F4007894F4007592F400718FF4006E8D + F3006B8AF3006888F3006586F3006384F3005277F1004A70F0005C7FF2004D67 + C000BFCDF6000000000000000000000000000000000000000000000000004D66 + BD00DDE4FC00DDE4FC005F7BDA005F7BDA005F7BDA005F7BDA005F7BDA005F7B + DA005F7BDA005F7BDA005F7BDA005F7BDA005F7BDA005F7BDA00D9E1FC00DBE2 + FC004D66BD000000000000000000000000000000000000000000000000000000 + 00004E68BF006989F300042BAD000535D9000432CA000535D9000535D9000535 + D9000535D9000535D9000535D9000432CA000535D9004F71E300042EBC000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000004D67BE006B88EA005479F1006686F3006686 + F3006686F3006686F3005479F1006A87EA000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000BFCDF6004E68 + C1006384F3005C7FF2006C8BF300829DF500819BF5007F9AF5007290F400718F + F4006F8DF3006F8DF3006F8DF3006C8BF3006485F300577BF2004E73F1005D78 + D6004E68C100BFCDF60000000000000000000000000000000000000000004E67 + BE00E1E7FD00E1E7FD00E1E7FD00E0E6FC00E0E6FC00E0E6FC00E0E6FC00E0E6 + FC00DFE6FC00DEE5FC00DEE5FC00DEE5FC00DEE5FC00DDE4FC00DDE4FC00DFE6 + FC004E67BE000000000000000000000000000000000000000000000000000000 + 00004F69C0006989F300042AAB000535D6000431C7000535D6000535D6000535 + D6000535D6000535D6000535D6000431C7000535D6005072E200042EBC000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000004D67BF006D8AEA005C7FF200708EF400708E + F400708EF400708EF4005C7FF2006D8AEA000000000000000000000000000000 + 00000000000000000000000000000000000000000000BFCDF6004F69C2005C77 + D6005F81F2007290F400849EF5008CA5F60089A2F600829DF5006B8AF300A3B6 + F800A3B6F8006A8AF3007391F4007592F400718FF4006989F3005A7DF2005D80 + F2005A76D6004F69C20000000000000000000000000000000000000000004F68 + BF00E5EAFD00E5EAFD006D87DB006D87DB006D87DB006D87DB006D87DB006D87 + DB006D87DB006D87DB006D87DB006D87DB006D87DB006D87DB00E1E7FD00E1E7 + FD004F68BF000000000000000000000000000000000000000000000000000000 + 0000506AC1006989F300042AA9000434D3000431C5000434D3000434D3000434 + D3000434D3000434D3000434D3000431C5000434D3004F70DF00042EBC000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000004E68C000708CEA006485F3007995F4007995 + F4007995F4007995F4006485F300708BEA000000000000000000000000000000 + 00000000000000000000000000000000000000000000778EDB005B7EF2005579 + F10086A0F50098AEF700A0B4F70091A8F6007D98F5006888F3008FA1E000506A + C400506AC40095ACF7005B7EF2006B8AF300829CF500809BF5007995F4005378 + F1003E67F0005075F100506AC40000000000000000000000000000000000516A + C100EAEFFD00EAEFFD00EAEFFD00E9EEFD00E9EEFD00E9EEFD00E9EEFD00E8ED + FD00E8EDFD00E8EDFD00E8EDFD00E8EDFD00E8EDFD00E8EDFD00E7ECFD00E6EB + FD00516AC1000000000000000000000000000000000000000000000000000000 + 0000526CC3006989F3000328A4000433CE000430C1000433CE000433CE00B2C0 + F000B2C0F0000433CE000433CE000430C1000433CE004F6FDC00042EBC000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000506AC1007590EC007491F4008CA5F6008CA5 + F6008CA5F6008BA4F6007491F400748FEC000000000000000000000000000000 + 000000000000000000000000000000000000000000008B9FE0008FA7F600577B + F20089A2F60099AFF7009EB3F700829CF5006C8BF3009AAFF700516BC400BFCD + F600BFCDF6008EA1E00095ACF7005D80F2007E99F500819BF5007A96F4005479 + F1003E67F00086A0F500516BC40000000000000000000000000000000000526B + C200EDF1FE00EDF1FE00EDF1FE00EDF1FE00EDF1FE00ECF0FE00ECF0FE00ECF0 + FE00ECF0FE00EBF0FD00EBF0FD00C8CCD800C8CBD600C8CBD600C8CCD700C6CA + D700526BC2000000000000000000000000000000000000000000000000000000 + 0000536DC4006989F3000328A2000432CB00042FBF000432CB000432CB000432 + CB000432CB000432CB000432CB00042FBF000432CB004F6FDA00042EBC000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000516BC2007892EC007B97F40095ACF70095AC + F70095ACF70095ACF7007B97F4007691EC000000000000000000000000000000 + 00000000000000000000000000000000000000000000526CC50090A2E1009AAF + F7007F9AF5008EA6F60091A8F6006E8DF3009BB0F7008FA2E100BFCDF6000000 + 000000000000526CC5008FA1E10095ACF7006F8DF3007693F400718FF4005378 + F1008DA5F6008D9FE100BFCDF60000000000000000000000000000000000526C + C300F0F3FE00F0F3FE00F0F3FE00EFF3FE00EFF3FE00EFF3FE00EFF3FE00EFF3 + FE00EFF3FE00EEF2FE00EEF2FE00CBCED800516BC100526CC300526CC300526C + C300526CC3000000000000000000000000000000000000000000000000000000 + 0000546EC5006989F3000328A0000431C800042EBC000431C8000431C8000431 + C8000431C8000431C8000431C800042EBC000431C800506FD800042EBC000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000526CC3007994EC00829CF5009EB3F7009EB3 + F7009EB3F7009EB3F700819BF5007993EC000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000BFCDF600536E + C7009DB2F7006082F2006082F20090A3E100536EC700BFCDF600000000000000 + 00000000000000000000BFCDF600536EC70095ACF7004F74F1004E73F10091A3 + E100536EC700BFCDF6000000000000000000000000000000000000000000546E + C500F4F7FE00F5F7FE00F5F7FE00F4F7FE00F4F7FE00F4F7FE00F4F7FE00F4F7 + FE00F4F7FE00F3F6FE00F3F6FE00CFD1D800FAFBFF00FAFBFF00F5F7FD00536E + C700BFCDF6000000000000000000000000000000000000000000000000000000 + 00005670C7006888F30003269C000430C2000430C2000430C2000430C2000430 + C2000430C2000430C2000430C2000430C2000430C200506ED400042EBC000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000546EC5007A94ED00829CF500B0C0F900B0C0 + F900B0C0F900A9BBF800829CF5007993ED000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000C1CD + F60092A4E20092A9F60092A9F600556FC700C1CDF60000000000000000000000 + 0000000000000000000000000000C1CDF60090A3E2008DA5F6008CA5F600556F + C700C1CDF600000000000000000000000000000000000000000000000000556F + C600F5F7FE00F7F9FE00F7F9FE00F6F8FE00F6F8FE00F6F8FE00F6F8FE00F6F8 + FE00F6F8FE00F5F7FE00F5F7FE00D0D2D800FAFBFF00F5F7FD00B7C2E800C1CD + F600000000000000000000000000000000000000000000000000000000000000 + 00005771C8006586F30003269900042FC000042FC000042FC000042FC000042F + C000042FC000042FC000042FC000042FC000042FC0004F6DD2000430C2000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000556FC600738FEC007693F400A3B6F800A6B9 + F800A6B9F80098AEF7007693F400728EEC000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005670C8008DA1E3008DA1E300C1CDF6000000000000000000000000000000 + 0000000000000000000000000000000000005670C8008DA1E3008DA1E300C1CD + F600000000000000000000000000000000000000000000000000000000005670 + C700F5F7FE00F7F9FE00F8FAFE00F8FAFE00F8FAFE00F8FAFE00F8FAFE00F8FA + FE00F8FAFE00F8FAFE00F7F9FE00D2D4D800F4F6FD00B7C3E8005670C8000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005771C8005D80F20003259700032597000325970003259700032597000325 + 970003259700032597000325970003259700032597003F57A6000536D9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005670C7006D88E5007590ED00859DEE00869E + EE00869EEE00829AEE007691ED006C88E5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000005771 + C9005871C8005871C8005871C8005871C8005871C8005871C8005871C8005871 + C8005871C8005871C8005871C8005871C8005771C900C1CDF600000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005A76D2005771C8005A73C9005A73C9005A73C9005A73C9005A73C9005A73 + C9005A73C9005A73C9005A73C9005A73C9005A73C9005A73C9005771C8000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B9C6F1002A3B78002F448B00B9C6F1000000000000000000000000002F44 + 8B002A3B78002F448B0000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000C5CEF3006A7FC8002A3A75002433 + 6900243369002A3A7500364D95006A7FC8000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B6C3F000414F800023316200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000374887006D84CF005B73C7007286C800566EBE000E30A300334FB1008496 + D5006D84CF005D74C10000000000000000000000000000000000000000000000 + 000000000000000000004259A70046589700455EAF002F4BAB001333A0000326 + 9900032699001333A0001E3DA4002F4BAB004658970035447A004259A7000000 + 0000000000000000000000000000000000000000000000000000000000004256 + 9B008E9ED10095A7E2009FB0E900A1B1E9009DADE40099A9DF008E9ED3008999 + CD008595C7007C8BBB007785B5007381AF007180B2007A8ABF008191C3004256 + 9B00000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000CCD6 + F60022357800435BAA0023336900000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000364C98009EADDD008492C30031448600506CCA00042CB400314486008391 + C3009EADDD008291C30000000000000000000000000000000000000000000000 + 0000B9C6F1002E42880042538E002B49AE000B2EA10003279F0003279F000327 + 9F0003279F0003279F0003279F0003279F002B49AE004760B10042538E00B9C6 + F100000000000000000000000000000000000000000000000000000000002736 + 6E00708ADF007993E70091A7F10098ADF1008CA2EB007F96E200667FD0005A73 + C6004F68BC003751A5002B44980020398C001D3892002D4AAC00516CC8002736 + 6E00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000002F43 + 840043538C00425CB00025356D00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000BAC7F20033478B00374D9C00BAC7F2004F6CCE00042EB90033478B00374D + 9C0033478B00374D9C0000000000000000000000000000000000000000000000 + 0000334686006E7AA6004C65B8000328A3000328A3000328A3000328A3000328 + A3000328A3000328A3000328A3000328A3000328A3001336A900415CB7002F42 + 8400B9C6F1000000000000000000000000000000000000000000000000002A3A + 74006A84DE00859CEA0097ACF2009AAEF1008DA3EB008198E3006880D1005C75 + C7005069BC003851A5002C45990020398C001E399300324EAE00415FC4002A3A + 7400000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000046589600405B + B8000F33A900435EBA002A3B7700000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000384D9600384D9600384D9600384D9600384D + 9600384D9600384D9600384D9600384D96001F46CB000C37C600384D96000000 + 000000000000000000000000000000000000000000000000000000000000475F + B100BCBFC900A6ABBA00808DB6001438AE00042BAC00042BAC00042BAC00042B + AC00042BAC00042BAC00042BAC00042BAC00042BAC00042BAC00042BAC00415D + BD0046589A00475FB10000000000000000000000000000000000000000003042 + 8200718BDF00859CEA0097ACF2009AAEF1008DA3EB008198E3006880D1005C75 + C7005069BC003851A5002C45990020398C001E399300324EAE004461C4003042 + 820000000000000000000000000000000000000000000000000090A3E3003B51 + A2002F4385002F4284002E4284002E4183002E4183002E408100405DBD000F34 + AF00042AAA00425EBD002C3E7D002B3D7C002B3C7A002B3C7A002B3C79002A3C + 7800344A95008196DC0000000000000000000000000000000000000000000000 + 0000000000000000000000000000617BD4001F44C1002C50C6005F79D3005F79 + D3005F79D3005F79D3005F79D3006079D3005A78DC00133ECD003754BA000000 + 0000000000000000000000000000000000000000000000000000A8B7ED005665 + 9800B2B6C300ADB1BF00A9AEBE004A63B7001439B200042CB100042CB100042C + B100042CB100042CB100042CB100042CB100042CB100042CB100042CB1001439 + B6004964BF003E508E0000000000000000000000000000000000000000003346 + 8800708ADF00859CEA0097ACF2009AAEF1008DA3EB008198E3006880D1005C75 + C7005069BC003851A5002C45990020398C001E399300324EAE00415FC4003346 + 88000000000000000000000000000000000000000000546CC100405498004D66 + B7004261CA004362CA004362C9004261C7004361C7004361C7001036B600042C + B100042BB0003655BE00425FC1004360C100425FBF00425EBE00435FBE004661 + B9004B60A8003B4C870000000000000000000000000000000000000000000000 + 00000000000000000000000000005E7CE0002C53D7003D52A0003D52A0003D52 + A0003D52A0003D52A0003D52A0003D52A0005670CA00163BB4003D52A0000000 + 0000000000000000000000000000000000000000000000000000455BAE00A2A9 + BF00B1B6C300B1B6C300B1B6C3008794C0004B65BB00153AB700042DB600042D + B600042DB600042DB600042DB600042DB600042DB600042DB600042DB600042D + B6002B4EC2004C62AD000000000000000000000000000000000000000000364A + 8F007790E1007C95E90092A8F10098ADF1008CA2EB007F96E200667FD0005A73 + C6004F68BC003751A5002B44980020398C001D3892002D4AAC00516CC800364A + 8F000000000000000000000000000000000000000000506AC100294FD0000C38 + CA000D38C8000C37C6000C37C6000934C3000833C2000833C1000631BF00052F + BD00042EBC00042EBA00042EB900042DB800042DB600042DB600042DB500042C + B300042CB2002346BB00354B9600000000000000000000000000374E9B002C3F + 7E002C3F7E002C3F7E002C3F7E002C3F7E002C3F7E002C3F7E002C3F7E002C3F + 7E002C3F7E00374E9B00000000004259AB008099EB005879E7004960AF000000 + 00000000000000000000000000000000000000000000788DD7008D98BA00CACE + D900C1C5D300C1C5D300C1C5D300C1C5D300BDC2D10097A4CE00274CC500173F + C400173FC400173FC400173FC400173FC400173FC400173FC400173FC400173F + C400153DC400395BCD00788DD70000000000000000000000000000000000D1DA + F7003D529D003D529D003D529D003D529D003D529D003D529D003D529D003D52 + 9D003D529D003D529D003D529D003D529D003D529D003D529D003D529D00D1DA + F70000000000000000000000000000000000000000004B6BD7001440D1001641 + D1001943CF001943CF001842CE00153FCB00143ECA00133DC900103AC7000E38 + C5000D37C4000B35C2000933C1000832BF000630BD00052FBC00052FBB00042E + B900042DB8000831B90033468A0000000000000000000000000032468C00506D + CF00506DCF00506DCF00506DCF00506DCF00506DCF00506DCF00506DCF00506D + CF00506DCF0032468C00000000004C66C0008195D8004462C700445DB0000000 + 000000000000000000000000000000000000000000004963B600B6BCD100CBCF + DB00C6CAD800C6CAD800C6CAD800C6CAD800C6CAD800C4C9D8006780D1003256 + CD00234ACB00234ACB00234ACB00234ACB00234ACB00234ACB00234ACB00234A + CB002148CB003357CF004963B600000000000000000000000000000000005E77 + CD0092A4E00094A8EC009EB1F300A1B4F3009CAEED0098AAE8008EA0DC00899A + D5008596CF007C8CC3007787BC007282B6007182BB007A8CC9008697D3005E77 + CD000000000000000000000000000000000000000000496CE1001945D800214B + D800264FD800254ED700234CD500214AD3001F48D1001E47D1001B44CE001A43 + CD001841CC00163FCA00143DC800133DC800103AC5000F39C4000E38C3000A34 + C0000933BF000630BD00364A9000000000000000000000000000384E99004F6F + DA000432CB000432CB000432CB000432CB000432CB000432CB000432CB000432 + CB000432CB00384E9900000000005069C4003D5DC9003156D300466AE2000000 + 000000000000000000000000000000000000000000003D54A200D6D9E200CED2 + DF00CED2DF00CED2DF00CED2DF00CED2DF00CED2DF00CED2DF00A7B3DB007088 + D7003D60D3002E53D2002E53D2002E53D2002E53D2002E53D2002E53D2002E53 + D2002C52D2003257D3003D54A20000000000000000000000000000000000435B + AC006F89DF007892E8008FA6F10096ABF1008AA0EA007E95E200657ED0005972 + C6004E68BC003751A5002B4498001F388C001C3792002D4AAC00506BC800435B + AC0000000000000000000000000000000000000000004E72EA002B56E5003961 + E6003D64E5003B62E3003A61E300375EE100365DE000355CDF003259DD003057 + DC002F56DB002C54D9002B53D8002A52D700274FD500264ED400244CD3002149 + D1001E47D0001640CD003A519B00000000000000000000000000455EB5004F74 + EF0098ABEA005474DD005474DD00445EB400445EB4005474DD005474DD00435D + B100053AE900455EB50000000000516CC9008B9EDE00536FCE004B65BC000000 + 000000000000000000000000000000000000000000004158A600DFE2EB00D8DC + E900DADEEA00DADEEA00DADEEA00DADEEA00DADEEA00DADEEA00DADEEA00D8DD + EA00B6C1E7005373DF004569DF004569DF004569DF004569DF004569DF004569 + DF004468DF003A5FDC004158A600000000000000000000000000000000004A63 + BA00708AE000859CEA0097ACF2009AAEF1008DA3EB008198E3006880D1005C75 + C7005069BC003851A5002C45990020398C001E399300324EAE004361C4004A63 + BA0000000000000000000000000000000000000000005176EE00335DEB00436A + EB00486DEB00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF002C53 + D8002850D7001E48D4003E54A0000000000000000000000000004761B8005176 + F1009AADEC005575DE005575DE00455FB400455FB4005575DE005575DE00455F + B300073CEB004761B80000000000526DC9004D6BCE004366D9005577E8000000 + 00000000000000000000000000000000000000000000435BAB00E3E6EF00DCE0 + ED00E0E4EF00E0E4EF00E0E4EF00E0E4EF00E0E4EF00E0E4EF00E0E4EF00E0E4 + EF00DDE1EF008CA1E8005F7EE4005173E3005173E3005173E3005173E3005173 + E3004F71E3004267E000435BAB00000000000000000000000000000000004C66 + BD00718BDF00859CEA0097ACF2009AAEF1008DA3EB008198E3006880D1005C75 + C7005069BC003851A5002C45990020398C001E399300324EAE004461C4004C66 + BD0000000000000000000000000000000000000000005378F1003B64EF004D72 + F0005277EF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00385E + DF003259DD00264FDA004157A6000000000000000000000000004A63BA00567A + F200A0B1EC00A0B1EC00A0B1EC00A0B1EC00A0B1EC00A0B1EC00A0B1EC0094A2 + D2001546EC004A63BA00000000004D67BE0099AEF6007995F4005971C3000000 + 00000000000000000000000000000000000000000000475EB400E6E9F200E2E6 + F200E5E8F300E5E8F300E5E8F300E5E8F300E5E8F300E5E8F300E5E8F300E5E8 + F300E5E8F300C3CDF00095A9EC006A87E9005C7CE8005C7CE8005C7CE8005C7C + E800597AE8005375E700475EB400000000000000000000000000000000004D67 + BE00718BDF00859CEA0097ACF2009AAEF1008DA3EB008198E3006880D1005C75 + C7005069BC003851A5002C45990020398C001E399300324EAE004260C5004D67 + BE000000000000000000000000000000000000000000587CF2004A70F0006283 + F2006989F3006888F3006787F3006485F3006384F3006183F2005F81F2005D80 + F2005C7FF200597CF100587BF100567AF0005478EF005276EE005074EC004E73 + EB00486DEA00365FE700465FB3000000000000000000000000004E67BE006283 + F2009FABD3006174B5006174B5006174B5006174B5006174B5006174B5005F73 + B500325EEF004E67BE0000000000556FCC005B76CE005573D9006382EA000000 + 000000000000000000000000000000000000000000007790E100A7B3DC00EBEE + F900EDF0FA00EDF0FA00EDF0FA00EDF0FA00EDF0FA00EDF0FA00EDF0FA00EDF0 + FA00EDF0FA00EDF0FA00EBEFFA00D0D9F8007E99F1007390F0007390F0007390 + F0006988EF006E8CF0007790E100000000000000000000000000000000006680 + DA0096A7E4009EB0EB00A6B7F000A8B8F000A4B4EC00A0B0E80096A6DE0093A2 + D9008E9ED4008595CA008191C4007D8DC0007C8CC3008294CE00899BD8006680 + DA0000000000000000000000000000000000000000005A7DF2005176F1006C8B + F3007592F4007491F4007290F400708EF4006E8DF3006D8CF3006A8AF3006989 + F3006787F3006485F3006384F3006283F2005F81F2005E80F2005C7FF100597C + F0005176EF003D65EC004962B8000000000000000000000000005069C1006787 + F300B2C0ED008399E2008399E2006B7CB7006B7CB7008399E2008399E2006779 + B4004068F0005069C10000000000506AC100A5B8F70088A2F6005F76C6000000 + 00000000000000000000000000000000000000000000BFCDF6006C81CA00F1F4 + FD00F1F4FD00F1F4FD00F1F4FD00F1F4FD00F1F4FD00F1F4FD00F1F4FD00F1F4 + FD00F1F4FD00F1F4FD00F1F4FD00EFF2FD00AFBFF8008AA3F500819BF5007E99 + F500718FF4007E98F100CED8F70000000000000000000000000000000000D3DB + F900516AC100516AC100516AC100516AC100516AC100516AC100516AC100516A + C100516AC100516AC100516AC100516AC100516AC100516AC100516AC100D3DB + F90000000000000000000000000000000000000000005D80F200587CF2007693 + F400809BF500FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF + FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF006485 + F3005B7EF200456CF0004C66BD00000000000000000000000000526CC3006B8A + F300B8C5EE0090A3E40091A4E4007585B9007585B90091A4E40090A3E4006E7E + B5004A70F000526CC300000000005671CD009EADDF007086D000516BC2000000 + 00000000000000000000000000000000000000000000000000005975D100CAD1 + ED00F2F5FE00F3F6FE00F3F6FE00F3F6FE00F3F6FE00F3F6FE00F3F6FE00F3F6 + FE00F3F6FE00F3F6FE00F3F6FE00F3F6FE00DAE2FC00B6C6F90095ACF700829C + F500809BF500768DDD0000000000000000000000000000000000000000006882 + DB0094A6E40094A8EC009EB1F300A1B4F3009CAEED0098AAE8008EA0DC008A9B + D6008697D0007C8CC3007787BC007282B6007182BB007A8CCB008899D8006882 + DB0000000000000000000000000000000000000000006183F2006586F30088A2 + F60096ACF7007F92D2007D90D1007C90D2007A8ED1007A8ED100778CD100758A + D000758AD1007288D1007086D0007086D1006E85D0006C83CF006B82D0007B97 + F4006E8DF3005277F1004F69C0000000000000000000000000005670C7006A8A + F3005A7DF2006586F3006B8AF3006F8DF3006F8DF3006D8CF3006586F300597C + F200476EF0005670C70000000000546DC400B1C1F80098AEF700647BCA000000 + 000000000000000000000000000000000000000000000000000000000000607A + D700F4F6FD00F4F7FE00F5F7FE00F5F7FE00F5F7FE00F5F7FE00F5F7FE00F5F7 + FE00F5F7FE00F5F7FE00F5F7FE00F5F7FE00F5F7FE00F4F7FE00E0E6FC009FB2 + F500758AD500607AD7000000000000000000000000000000000000000000546E + C5006A84DE00859CEA0097ACF2009AAEF1008DA3EB008198E3006880D1005C75 + C7005069BC003851A5002C45990020398C001E399300324EAE004260C500546E + C50000000000000000000000000000000000000000006183F2006A8AF3008FA7 + F600A2B6F800A0B4F7009FB3F7009CB1F7009BB0F70099AFF70097ADF70095AC + F70094ABF60091A8F60090A8F6008EA6F6008CA5F6008AA3F60089A2F600849E + F5007693F400577BF200506AC1000000000000000000000000005871C8006C8A + ED00809AEF00859EF000889FF00089A1F00089A1F00089A1F000849DF0007F99 + EF007A95EE005871C800000000005973CF00A8B5E0007F92D200556EC5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D6DCF200F4F7FE00F5F7FE00F6F8FE00F6F8FE00F6F8FE00F6F8FE00F6F8 + FE00F6F8FE00F6F8FE00F6F8FE00F6F8FE00F6F8FE00F6F8FE00F3F6FE00ACBA + E800546FCA00000000000000000000000000000000000000000000000000556F + C6006D88DF00859CEA0097ACF2009AAEF1008DA3EB008198E3006880D1005C75 + C7005069BC003851A5002C45990020398C001E399300324EAE004562C500556F + C60000000000000000000000000000000000000000006183F2006989F30091A8 + F600ADBEF800ACBDF800AABCF800A7B9F800A6B9F800A5B8F800A2B6F800A1B5 + F7009FB3F7009CB1F7009BB0F7009AAFF70097ADF70096ACF70094ABF6008CA5 + F6007A96F4005A7DF200516BC2000000000000000000000000005B76D2005872 + C9005872C9005872C9005872C9005872C9005872C9005872C9005872C9005872 + C9005872C9005B76D200000000005974CF007C8FD1007A91DC007D97EE000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005C74C900D8DDF200F4F6FD00F6F8FE00F7F9FE00F8FAFE00F8FAFE00F8FA + FE00F8FAFE00F8FAFE00F8FAFE00F8FAFE00F6F8FE00F5F7FE00F4F6FD005B74 + C900BFCDF6000000000000000000000000000000000000000000000000005670 + C7006D88DF00859CEA0097ACF2009AAEF1008DA3EB008198E3006880D1005C75 + C7005069BC003851A5002C45990020398C001E399300324EAE004663C5005670 + C70000000000000000000000000000000000000000006581E0006183F200708E + F400A2B6F800A9BBF800ACBDF800ABBDF800AABCF800AABCF800A8BAF800A6B9 + F800A5B8F800A2B6F800A1B5F700A0B4F7009CB1F70099AFF70093AAF6007B97 + F4006283F2005D80F2005570CB00000000000000000000000000000000000000 + 0000000000000000000000000000B0C0F9009BB0F7005871C8005871C8005871 + C8005871C8005871C8005871C8005871C800B3C3F900A6B9F8005871C8000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000627DD900CDD4EF00F4F6FD00F6F8FE00F5F7FE00F5F7 + FE00F5F7FE00F5F7FE00F6F8FE00F5F7FE00CDD4EF007E91D300627DD9000000 + 0000000000000000000000000000000000000000000000000000000000005872 + C9006F89DF007993E70090A6F10098ADF1008CA2EB007F96E200667FD0005A73 + C6004F68BC003751A5002B44980020398C001D3892002F4CAD00556FC9005872 + C90000000000000000000000000000000000000000005C75CB006282EC006686 + F3007995F400829CF500849EF50086A0F500859FF500849EF500839EF500829D + F500829CF500809BF5007F9AF5007E99F5007B97F4007894F4007290F4006586 + F3006183F2006583EC007A92E500000000000000000000000000000000000000 + 0000000000000000000000000000ABBCF400B9C7F600ACBBF000A5B6EF00A5B6 + EF00A5B6EE00A5B6EF00A5B6EF00A7B6EF00BAC9FA00A4B7F8007E97E8000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005E79D5007489D100AFBBE500F3F6FD00F3F6 + FD00F3F6FD00F3F6FD00D5DCF200AFBBE5005E79D500AFBFF300000000000000 + 0000000000000000000000000000000000000000000000000000000000006B85 + DE0096A7E5009DAFEB00A6B7F000A9B9F100A5B5ED00A1B1E80098A8E00094A3 + DA00909FD5008696CB008191C5007E8EC1007E8EC5008494CF008A9CDA006B85 + DE0000000000000000000000000000000000000000006983DD006079CB00627E + E0006586F3006888F3006A8AF3006B8AF3006B8AF3006B8AF3006B8AF3006B8A + F3006B8AF3006A8AF3006A8AF3006A8AF3006989F3006888F3006586F3006A88 + EC006380E0005D77CC0000000000000000000000000000000000000000000000 + 00000000000000000000000000005872C9005872C9005872C9005872C9005872 + C9005872C9005872C9005872C9005872C900ABBCF400ABBCF4005872C9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000CED8F8007C93E5005771C9005871 + C8005871C8005771C9005E79D6007C93E5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005872C9005872C9005872C9005872C9005872C9005872C9005872C9005872 + C9005872C9005872C9005872C9005872C9005872C9005872C9005872C9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000DCDCDC00DADADA0098A8DC006075BD00455BA3003B4C8B003A4B + 8900394B88003849850042579C005C71B700C8C8C800D2D2D200DADADA000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000B6C5F1006177C500273773002534 + 6A0025346A0027377300364D96006177C5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000009BAFEC004B61AF007787C000A0ABD400BAC5EA00B5C1 + E700B1BDE500ACB9E20092A0CF006E7EB600465EB000A3B4EC00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000C7C7C700C0C0C000AEBA + E40028345E0028345E0028345E0028345E0028345E0028345E0028345E002834 + 5E0028345E0028345E0028345E0028345E0028345E0028345E0028345E004053 + 9300AEBAE400C0C0C000D6D6D600000000000000000000000000000000000000 + 00000000000000000000000000002D4085003A4A7D0047589300556AB000556A + B000556AB000556AB0004F62A100475893002D4085008195DB00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000465FB40095A1CD00DCE1F100BBC8F100AABAEE00A7B7ED009CAEE90094A7 + E8008CA1E500889DE4007991E0006882DC00C8D3F800CED7F500929EC90096A9 + E800000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000AFBEED004C5D9500364E9D00364E9D00364E9D00364E + 9D00364E9D00A3B2E50000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000002E42 + 86002445B400042AAA00042AAA00042AAA00042AAA00042AAA00042AAA00042A + AA00042AAA00042AAA00042AAA00042AAA00042AAA00042AAA00042AAA00586F + BA002D3F7F000000000000000000000000000000000000000000000000000000 + 00008297DD00334580005467A7003351B7001134AA002444B1004E68BF004E68 + BF004E68BF004E68BF003C59B9002444B1003351B700506ABE005467A7008297 + DD00000000000000000000000000000000000000000000000000000000008EA2 + E800C5CAE000E9EDFA00D7DEF500C4CEF100BBC7EF00ADBCEC0092A5E500889D + E2007D94DF008096E0008096E0009CAEE900AFBFF400BAC8F600E3E8FA003E51 + 9400859AE1000000000000000000000000000000000000000000000000000000 + 000000000000B9C8F20040529200324FB0000C2FA10003279F0003279F000327 + 9F002947AD00788DD80000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000003043 + 8600042CB30003279D0003238F0003238F0003238F0003238F0003238F000323 + 8F0003238F0003238F0003238F0003238F0003238F0003238F0003238F00506C + CA00304386000000000000000000000000000000000000000000000000000000 + 00003A4B8900566DB800415EC100294AB900546FC70093A3DB00E7EBF700E7EB + F700B9BCC600E7EBF700C2CBEA0093A3DB00294AB9001136B100415EC1003A4B + 89005068BB0000000000000000000000000000000000000000009DAFED004860 + B200F2F4F900E2E7F500DBE0F400C4CEEE00B5C1EA00ADBBE9009FAFE50095A7 + E2008C9FE000879BDE007B91DC00ADBDF000BBC9F600D3DCF900D4DCF900B9C1 + DE003D50940096A9E80000000000000000000000000000000000000000000000 + 0000BAC7F300425496004C60A8000C31A9000429A6000429A6000429A6000429 + A600193CAE004C61B00000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000003448 + 8F00042FBD00E0E6F700DFE4F600DFE4F600DEE3F600DEE3F600DDE2F600DDE2 + F600DCE2F600DAE0F500DAE0F500DAE0F500D9DFF500D9DFF500D8DEF400506E + D10034488F00000000000000000000000000000000000000000000000000859A + E0005971C1003253C2000D34B6008999CC00CACFDF00E6EAF800E6EAF800E6EA + F800C9CDD900E6EAF800E6EAF800E6EAF8008999CC00415FC5000D34B6005971 + C1003D4F8F00859AE000000000000000000000000000506BC80098A5CF00ECEF + FA00F0F1F600F0F1F400E5E8F100D2D8EC00C4CCE800B8C2E500A2B0DF0099A9 + DD0090A1DA00899BD900B4C2EE00C1CDF500DCE3F900D7DFF900BFCAED00A6B5 + E600C8D1F0008492C2000000000000000000000000000000000000000000BAC9 + F3005066B3003153C3000D34B9000A32B9000A32B9000A32B9000A32B9000A32 + B9000A32B9004E61A200889DE300000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000003B52 + 9F000433D000C5D0F400C4CFF400C2CDF300C1CDF300C0CCF300BECAF200BECA + F200BDC9F200BBC8F200BBC8F200B9C6F100B7C5F100B6C4F100DAE1F7005071 + DE003B529F0000000000000000000000000000000000000000003B53A3005A70 + BB000934C5004B6AD300E1E6F800E5EAF800DADFEC00E5EAF800E5EAF800E5EA + F800E5EAF800E5EAF800E5EAF800E3E8F600E5EAF800E5EAF800E1E6F8000934 + C5004162D1005A70BB000000000000000000000000005B71B900DEE3F200DAE0 + F600E6E9F400EAECF000EBECF000D5DAE900CAD0E600C6CDE700C0C9E700B8C2 + E400B2BDE300AAB7E300CED7F600C6D1F500DDE3F900C1CBEC00AAB8E400A9B8 + E8007B91DA0097A7D90099ABEA00000000000000000000000000BCCAF400455A + A500395BCC00163EC400133BC300133BC300133BC300133BC300133BC300133B + C300133BC3004E66B700556DC200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000003F57 + A8000536D900C6D1F600C6D1F600C4D0F600C4D0F600C3CFF600C1CDF500C0CC + F500BFCCF500BECBF500BDCAF500BCC9F500BAC8F500B9C7F500DCE3F9005073 + E5003F57A800000000000000000000000000000000008A9DE4004E61A8005271 + D8002A50D100CDD6F500E5EAF900E5EAF900E5EAF900E5EAF900E5EAF900E5EA + F900E5EAF900E5EAF900E5EAF900E5EAF900E5EAF900E5EAF900E5EAF9002A50 + D100123DCD005271D8008A9DE4000000000000000000AFBADD00D5DDF700CAD3 + F200D7DCEF00E0E4EF00E6E8EC00DDE0E900D9DDEA00C1C9E600627CD0005B75 + CC005771CA008FA1DC00D3DBF700E2E7F900C4CDED00B3BFE600B3BFE7007288 + D300516DCC007E93D8004C64B500000000000000000000000000445CA9006E82 + C7001E46CD001C45CD001C45CD001C45CD00274DCE006B86DE001E46CD001C45 + CD001C45CD00516DCE004A5FA700000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000435B + B0000538E300CAD5F900C9D4F900A4A9BC00A3A8BC00A3A8BC00A2A8BC00C3CF + F800C2CFF800BFCCF700BECBF700BDCBF700BCCAF700BBC9F700DDE4FA004F73 + EB00435BB00000000000000000000000000000000000425AAE005B75CA003359 + D9008497D600D2D7E400E5EAFA00E5EAFA00E5EAFA00E5EAFA00E5EAFA00E5EA + FA00E5EAFA00E5EAFA00E5EAFA00E5EAFA00E5EAFA00E5EAFA00E5EAFA008497 + D6000938D3003359D900425AAE0000000000758BDE00C6D1F500AABAEE00BCC8 + EF00C4CDEB00C8CFE800CFD4E700ADB9E1006880CF00657FD300758CD900738A + D8006F87D6005B76CE004A66C4004C66BF00BCC5E4007A8DCC00697FC9005C76 + CC007189D7005673D5006D7EBA007288D9000000000000000000000000004E67 + BF00708BE700335ADE002D56DE00879DE7006679BE00475FB2006F89E6003159 + DE002D56DE003F64E1005C75CF004B62B9000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004861 + B800053AEB00CFD9FB00CED8FB00A6ABBD00A6ABBE00A6ABBE00A4A9BD00A4A9 + BD00A3A9BD00A2A8BD00A2A8BD00A1A7BD00C1CEFA00C0CEFA00DFE6FC005075 + F1004861B800000000000000000000000000000000005871C8004268E7000537 + DF00E5EAFB00DFE4F500E5EAFB00E5EAFB00E5EAFB00E5EAFB00E5EAFB00E5EA + FB00E5EAFB00E5EAFB00E5EAFB00E5EAFB00E5EAFB00E5EAFB00E5EAFB00E5EA + FB00809AEE000537DF005871C800738BDD00516CC700B1C0F100A7B7ED00ADBC + EC00B8C3E800BBC5E500C9D0E6006880D0006780D4007B91DB006879B2005C6C + A7005B6BA5006E81C500637CCF004965C3008E9DCF008192CC006E83CB006B84 + D5007089DA006A85DD008E9DD4004E67C0000000000000000000000000000000 + 0000788CCD00738EEB006B89EC00596EBA00627BD400000000008093D6005779 + E900365EE6003860E600597AE800576CB8000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004962 + BA00053AEB00D1DBFB00D0DAFB00CFD9FB00CED8FB00CDD8FB00CBD6FB00CAD5 + FB00C9D5FB00C7D3FB00C6D2FA00C6D2FA00C4D1FA00C3D0FA00E1E7FD005075 + F1004962BA00000000000000000000000000000000005C78D8002A56EA000539 + E600E5EBFC00E5EBFC00E5EBFC00E5EBFC00E5EBFC00E5EBFC00E5EBFC00E5EB + FC00E5EBFC00E5EBFC00D5DAE6009C9B9D00E5EBFC00E5EBFC00E5EBFC00E5EB + FC00C2CFF8000539E6005C78D800536ECA00435CB0009BADEC00A2B2EB00A0B0 + E900ABB9E500AFBBE300C5CDE7005E78CE007088D9007E90CE007189D800E0E6 + F900000000005668A2006D81C5005B76CE007085CC0098A7D9007B8FD3007990 + DB00728BDD007B93E200A4B3E4004159A9000000000000000000000000000000 + 00004D67C200798DD1008499DC0090A4EA0000000000000000005A71BF0089A0 + EC004A6FEE003E66ED005276EE006079D3000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004A64 + BB000E41EC00D5DEFC00D4DDFC00A8ADBD00A8ADBD00A8ADBD00A7ACBD00A6AC + BD00A6ACBD00A6ABBD00A5AABD00A5AABD00C8D4FB00C7D3FB00E3E9FD005479 + F1004A64BB00000000000000000000000000000000005C7CE9001849EC00053A + EB00E6ECFD00E6ECFD00E6ECFD00E6ECFD00E6ECFD00E6ECFD00E6ECFD00C5CA + D900B8BDCA00C9CCD6009B989800B8B9BF00E6ECFD00E6ECFD00E6ECFD00E6EC + FD00E8EDFD00053AEB005C7CE9004862BC00445CAF008098E60092A6E800849A + E20094A5DF0099A9DD00B9C3E4005873D000758BD6005E6EA900000000000000 + 000000000000E0E6F9005C6CA7007088D6005873CB00B1BDE3008FA0DA008DA0 + E1007F96E1008CA1E600B2C0EC00445CAF000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004F6A + C5008A9EE1004F74F1004F74F1006586F3005873CE0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004C66 + BD002553EE00DDE4FC00DDE4FC00ACB0BE00ACB0BE00ACB0BE00ABB0BD00ABB0 + BE00ABB0BE00A9AEBD00A9AEBD00A9AEBD00D1DBFB00D0DAFB00E7ECFD005E80 + F2004C66BD00000000000000000000000000000000006683E9002C59EE001B4B + ED00CBD0DD00E8EDFD00E8EDFD00E8EDFD00E8EDFD00E8EDFD00E9EEFD00ADAB + A9009C999700E0E4F100E8EDFD00E8EDFD00E8EDFD00E8EDFD00E8EDFD00CBD0 + DD00BABECB001B4BED006683E9004A63BB00445CAE007690E400899EE5007C93 + DF008A9DDD008FA0DA00B1BDE3005470CE007289D4005D6EA800000000000000 + 000000000000000000005F6EA900738AD8005C76CD00B7C1E40099A9DE0096A8 + E300879CE30095A8E900B7C4ED00455EB1000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000AEBE + F2005E75C4006686F300577BF2005D80F2005A72C200AEBEF200000000000000 + 0000000000000000000000000000000000000000000000000000000000004D67 + BE00305CEE00E1E7FD00E0E6FC00DFE6FC00DEE5FC00DDE4FC00DCE3FC00DBE2 + FC00DAE2FC00D8E0FC00D8E0FC00D7DFFC00D6DFFC00D5DEFC00E9EEFD006485 + F3004D67BE00000000000000000000000000000000006A88EB003761EF002755 + EE00E9EEFD00E9EEFD00E9EEFD00E9EEFD00E9EEFD00E9EEFD00E9EEFD00CACA + CB00C3C1C000E9EEFD00E9EEFD00E9EEFD00E9EEFD00E9EEFD00E9EEFD00E9EE + FD00D8DDEA002755EE006A88EB004B64BC00445CAD006E88E2008198E300718A + DD007F94DA008497D800A8B5E0004F6BCA006B83D4006677B000000000000000 + 000000000000738ADA006B7BB400758CD900627CD000C0C9E700A4B2E1009FAF + E60092A5E6009EB0EB00BBC7EF00465FB3000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00006F89DF008DA5F4006686F3006082F2006C85D900546FCB00000000000000 + 0000000000000000000000000000000000000000000000000000000000004E68 + BF003C65EF00E4E9FD00E4E9FD00B0B3BE00B0B3BE00AFB3BE00AFB3BE00AFB3 + BF00AEB2BE00ADB1BE00ADB1BE00ACB0BE00DAE2FC00D9E1FC00EBF0FD006989 + F3004E68BF0000000000000000000000000000000000708BEB00426AF000335E + EF00EAEFFD00EAEFFD00EAEFFD00EAEFFD00EAEFFD00EAEFFD00EAEFFD00EAEF + FD008D8A8800EAEFFD00EAEFFD00EAEFFD00EAEFFD00EAEFFD00EAEFFD00EAEF + FD00D4D8E600335EEF00708BEB004C66BF00516BC3007E95E3006580DB006B84 + D8007086D1006B81C9007F91CC005872C6004A66C400637CCE006878B0005F70 + AA006070AB008091CF007B91DB00647ED300C2CAE700C6CDE700B9C3E600AEBC + EA00AEBDED00A8B8EF00A7B4E0005471CC000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000576FC600A0AFE7008BA4F6007D98F5007F95E300536DC6000000 + 000000000000000000000000000000000000000000000000000000000000516A + C1005378F100EAEFFD00EAEFFD00B4B7BE00B3B6BE00B3B6BE00B2B5BE00B2B5 + BE00B2B5BE00B2B5BF00B2B5BF00B0B3BE00E2E8FD00E1E7FD00EFF3FE007491 + F400516AC100000000000000000000000000000000006D85D8007391F4004C72 + F100EDF1FE00EDF1FE00EDF1FE00EDF1FE00EDF1FE00EDF1FE00EDF1FE00EDF1 + FE0098959300EDF1FE00EDF1FE00EDF1FE00EDF1FE00EDF1FE00E9EDFA00EDF1 + FE007588C8004C72F1006D85D8007990E300748CDB008FA3E500506ED4006C84 + D5006980CB006B81CB0092A2D600B1BDE4004D68C0004A66C4006B83D4007088 + D600748BD8007088D9006780D4006880CF00DADEEB00CBD1E700C5CDE900B7C3 + EC00BDC9F100AABAEF008494CE007790E1000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000009FB1EF00637AC800A4B4ED007A96F40086A0F500758AD5000000 + 000000000000000000000000000000000000000000000000000000000000526B + C2005F81F200ECF0FE00ECF0FE00EBF0FD00EBF0FD00EAEFFD00E9EEFD00E8ED + FD00E7ECFD00E6ECFD00E6ECFD00E6EBFD00E5EAFD00E4E9FD00F1F4FE007995 + F400526BC20000000000000000000000000000000000647AC700819CF3005E80 + F200C1C6D400CCCFDA00E2E6F100EEF2FE00EEF2FE00EEF2FE00EEF2FE00EEF2 + FE009E9B9900EEF2FE00EEF2FE00EEF2FE00EEF2FE00EEF2FE00EEF2FE00C1C6 + D4005370D2005E80F2006479C700BFCDF600BDCBF40097A7DD005772CE00617B + CF006B82CF00A3B1E000B1BDE500E3E8F800C5CEEE005D76CA004F6BCA00536F + CD005873D0005E78CF00667FD000ADB9E100DEE1EA00D6DBEA00D2D8ED00C6D0 + F000C4CFF200BDCAF3005D74C100BFCDF6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000092A7EC006A7FCB0092A9F60086A0F5008BA3F100849B + E80000000000000000000000000000000000000000000000000000000000536C + C4006B8AF300EFF3FE00EFF3FE00EEF2FE00EDF1FE00EDF1FE00ECF0FE00EBF0 + FD00EBF0FD00EAEFFD00E9EEFD00E8EDFD00E7ECFD00E7ECFD00F3F6FE007E99 + F500536CC40000000000000000000000000000000000526CC8008399E4007D98 + F5007582AE00D7DAE400EFF3FE00EFF3FE00EFF3FE00EFF3FE00EFF3FE00EFF3 + FE00A8A5A400EFF3FE00EFF3FE00EFF3FE00EFF3FE00EFF3FE00EFF3FE007582 + AE006282EE007E99F500526CC8000000000000000000566AAC009EADDE00A0B0 + E500AEBCE800AAB8E600D2DAF500D5DDF800C3CFF500C4CFF200B1BDE400B1BD + E300BAC4E500C6CEE800C9D0E700D0D5E800E8EAEE00EDEEF200E6E9F200DDE2 + F600D9E0F700DFE4F500AABBF100000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000778BD200ABBBEF009DB2F7008298 + E0005871C900C1CDF6000000000000000000000000000000000000000000556F + C600819BF500F2F5FE00F2F5FE00DADDE500D9DCE400D9DCE400D8DBE400D8DB + E400D8DBE400D7DAE400D7DAE400D6D9E400E0E4F000EDF1FE00F6F8FE0087A1 + F500556FC6000000000000000000000000000000000000000000536EC900889D + E4007F9AF5006377B900D1D5E100F2F5FE00F2F5FE00F2F5FE00F2F5FE00F2F5 + FE00DCDDE200F2F5FE00F2F5FE00F2F5FE00F2F5FE00F2F5FE00D1D5E1007F9A + F50095ACF7008A9FE2000000000000000000000000004F69BE0093A0CC00C5CF + F000B0BEEA00D0D8F500D6DEF900C1CDF500C0CCF500A2B2E7008FA0DB008FA0 + DA0099A9DD00B0BCE400BCC6E600C8CFE900E2E6F100ECEEF200F2F3F600E4E9 + F700EAEEFB00A1AFDA0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000007C93E500687FCD00ADBCED008DA5 + F600788EDA005874CD0000000000000000000000000000000000000000005670 + C70088A2F600F3F6FE00E9ECF3008E8C8D008986860089868600898686008986 + 860089868600898686008986860089868600BABBC100E5E8F300F7F9FE008BA4 + F6005670C7000000000000000000000000000000000000000000BFCDF6006178 + C9009DB2F700869FF1006878B100DDE0E700C8CAD100ECEFF700F3F6FE00F3F6 + FE00F3F6FE00F3F6FE00F3F6FE00F3F6FE00DADDE400C0C5D6006878B1009DB2 + F7009EAFEE005C74C700000000000000000000000000D1DAF8004C62AA00B4BE + DE00C5D0F400D7DFF900D8DFF900BAC8F500BDCAF4008599DC00899CDD00899C + DD0094A5DF00ADBBE700BAC5EA00C6CFED00D9DEF100E8EBF600F2F3F800F4F6 + FB00CED3E9005972C70000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000093A8ED005C75CC00A5B7 + F5008EA6F400778DD70000000000000000000000000000000000000000005771 + C8008DA5F600F5F7FE00E1E3EA00EEEEEF00FDFDFD00FDFDFD00FDFDFD00FDFD + FD00FDFDFD00FDFDFD00FDFDFD00FDFDFD00A09FA100DFE2EA00F8FAFE008CA5 + F6005771C80000000000000000000000000000000000000000000000000092A7 + EC00A7B8F300A6B9F80094AAF2008A92AF00C9CCD500F4F7FE00F4F7FE00F4F7 + FE00D4D6DD00F4F7FE00F4F7FE00F4F7FE008A92AF007182BB0094AAF200ABBB + F4006279C90092A7EC000000000000000000000000000000000000000000889D + E400CAD0E800DDE3F900B3C3F500BBC9F600879CE3007C93DF00778FDF007C93 + E000869BE300A0B1EA00AEBDED00BECAF100CCD5F400DCE2F800ECF0FB005C74 + C70092A7EC000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000AFBF + F3006B85DE005A74CF005B76D20000000000000000000000000000000000728C + E20093A8F0009BAFF20099ABE900B3B2B400B5B3B200ABA9A700ABA9A700ABA9 + A700ABA9A700ABA9A700ABA9A700B5B3B200919BBB0099ABE9009AAEF200748A + D8006B85DE000000000000000000000000000000000000000000000000000000 + 000092A7EC005F77CA009AABE600B5C5F900AEBEF40096A5D7007985AD007985 + AD007985AD007985AD008694C00096A5D700B6C6F900B3C3F8009AACE70092A7 + EC00000000000000000000000000000000000000000000000000000000000000 + 00004A61AA0094A2D100D0D9F7009CAEED00637FDC00748DE100849AE500899E + E60093A7E900A3B4ED00A8B8EF00AABAEF00D6DEF800E2E7F600A4B1DC009FB1 + F000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005872C9005872C9005872C900A1A1A700EDECED00F4F4F300E8E8E700E8E8 + E700E8E8E700EBEBEA00F4F4F300EDECED006277BF005872C9005872C9006B85 + DE00000000000000000000000000000000000000000000000000000000000000 + 000000000000C1CDF6005872CD00A0B0EB00B9C8F900BECCFA00BBCAFA00BCCA + FA00BCCAFA00BBCAFA00BDCBFA00BFCDFA00A1B2EB007489D3005872CD000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D1DAF800526AC0006175B500AEBCEB009CAEEA008BA0E7006E89E3007690 + E4008199E8009CAFEE00B3C2F300C7D2F600B7C2E6006E83CC005D78D5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000B1B1B1009C999800ABABAA00EDECEC00E4E3 + E300E4E3E300D8D7D600ABABAA00959391000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005874CD007287D1008B9FE100ACBCF400ACBC + F500ADBDF500ACBCF4009DAEEA008C9FE1005874CD0093A7ED00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000BFCCF500778DDF005771CA005068BA005169 + BC00526BBE00546DC1005C77D2007A92E5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000009F9E9D009F9C + 9B009F9C9B000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000DCDCDC00DADADA00C7C7C7007486C4004659970028345F002835 + 5F0028355F0028345F002F3F770046599700C8C8C800D2D2D200DADADA000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000CED7F7003C54A200475B9D00455FB6003754B6001739AA001336 + A9001336A9001739AA002343AF003754B600475B9D00384881003C54A2000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000859AE000344991003F51 + 90003F5190003F5190003F5190003F5190003F5190003F5190003F5190003F51 + 90003F5190003F5190003F5190003F5190003F5190003F5190003F5190003F51 + 90003F51900030468E00000000000000000000000000000000005B74C7004455 + 94004F64AD005062A1004057A900000000000000000000000000000000000000 + 00006780CF005369B3004F64AD005062A1000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000BAC6F2002D418600445796003352B8001337AE000429A8000429A8000429 + A8000B30AB000429A8000429A8000429A8003352B8004761B70044579600BAC6 + F20000000000000000000000000000000000000000004D64B6002A3B78002A3B + 7800344B960000000000344B96002A3B78002A3B78002A3B78002A3B78002A3B + 78002A3B78002A3B78002A3B78002A3B78002A3B7800344B9600000000002A3B + 78002A3B78002A3B7800000000000000000000000000344A96005C72BF00506E + D300506ED300506ED300506ED300506ED300506ED300506ED300506ED300506E + D300506ED300506ED300506ED300506ED300506ED300506ED300506ED300506E + D300506ED3005C72BF0000000000000000000000000000000000374E9E005671 + CE000B206700435FBF0041569C002A3B75002A3B75002A3B75002A3B75002A3B + 7500364C960010266E000B206700435FBF00D1DAF80000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000032468C004C61A700405DBE00042BAD00042BAD002245B700617ACC00677F + CD006B81CB00617ACC004360C1002245B700042BAD001B3FB600405DBE003246 + 8C00BAC6F200000000000000000000000000000000006E7CAC00ACB6DC00A8B5 + E0002D3F7F00000000002D3F7F00A5B3E100A4B2E000A4B2E000A4B2E000A3B1 + E000A3B1E000A3B1E000A2B0DF00A2B0E000A2B0E0002D3F7F0000000000A1B0 + E000A0AFDF00A5B1DA005067BA000000000000000000364C9700506FD8000431 + C8000431C8000431C8000431C8000431C8000431C8000431C8000431C8000431 + C8000431C8000431C8000431C8000431C8000431C8000431C8000431C8000431 + C8000431C800506FD800000000000000000000000000000000003E58AE00274F + D600021C7100153EC700455DAE000E2D9A000E2D9A000E2D9A000E2D9A000E2D + 9A003A54AE00031E7900021C7100153EC7000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000455C + AE004160C6001037BB00042DB7002F52C4005069BA003D509100859AE100A8B7 + ED00C1CCF200859AE1004B61B1003D5091006981D0002E51C300042DB7004160 + C600495DA200455CAE00000000000000000000000000ACBAE800899DDF00A7B6 + E700546CC10000000000546CC100A5B4E600869ADE00869ADE008499DD008499 + DD008499DD008398DD008398DD008297DD006C7BAF00546CC100000000006B7A + AF00A0B0E5007F94DC0033478D0000000000000000003F57A7005072E4000535 + D9000535D9000535D9000535D9000535D9000430C3000430C2000430C2000430 + C2000430C2000430C2000430C2000430C3000535D9000535D9000535D9000535 + D9000535D9005072E40000000000000000000000000000000000000000006983 + DA00435CB300516CCA0000000000000000000000000000000000000000000000 + 000000000000435CB300435CB3003754B7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000869BE1004255 + 96001C42C300042FBD00042FBD001038C0004161CA004D62A700BCC8F3000000 + 0000000000000000000000000000B4C2F0005264A2006B83D100294EC6001C42 + C3004966C70042559600000000000000000000000000AFBDEC008DA1E300AEBC + EC00000000000000000000000000B0BEEA008A9FE3008A9FE300889DE200889D + E200879CE200879CE300869BE200869BE2005667A60000000000000000005869 + A700AAB8E8008399E200374B95000000000000000000435CAF005074EA000638 + E1000638E1000638E1000638E1000E3EE2003C60D6000533CA000533CA000533 + CA000533CA000533CA000533CA003C60D6000638E1000638E1000638E1000638 + E1000638E1005074EA0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000003F56A6001939A600869BE10000000000000000000000 + 00000000000000000000000000000000000000000000000000003C54A3004F66 + B5000934C300153EC6004162D1000934C300143DC6004363CF00384E9B00BCC8 + F300000000000000000000000000000000005671C4005466A700647ED5000833 + C3003558CE004E66B600000000000000000000000000B2C0F00094A8EA00B0BF + EF005B74CA00000000005B74CA00AFBEEF0090A4E80090A4E8008FA4E8008FA4 + E8008FA4E8008EA3E8008CA1E7008CA1E7007381BA005B74CA00000000007483 + BB00AABAED00899FE7003A509C0000000000000000004760B700567AF0001445 + E9001445E9001445E9001445E9001B4AEA008199E900889EE900889EE900889E + E900889EE900889EE900889EE9008199E9001445E9001445E9001445E9001445 + E9001445E900567AF00000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000007A8FDB002D469B004E66BC0000000000000000000000 + 000000000000000000000000000000000000000000005B74CA005067B2004467 + D9002E54D4006882D700465BA300617DDC00214AD2001842D0004A6AD700556A + B5003D53A40000000000000000000000000000000000B7C5F100465BA3002B52 + D3001742D0004063D8006C83CF000000000000000000BCCAF600A2B4F200A2B4 + F200BBC9F600BCC9F500BAC8F6009FB2F2009FB2F2009FB2F2009EB1F2009DB0 + F2009DB0F2009CB0F2009CB0F2009BAFF100AABBF400B7C6F600B8C6F600A7B8 + F30099ADF10099ADF1004259AD0000000000000000004C65BC006586F300335E + EF00345FEF00345FEF00345FEF00345FEF00345FEF00345FEF00345FEF00345F + EF00345FEF00345FEF00345FEF00345FEF00345FEF00345FEF00345FEF00345F + EF00335EEF006586F300000000000000000000000000465EB3006279C300607C + D900617EDE00617EDE00627EDE00637FDF00637FDF00637FDF00637FDF00637F + DF00627EDE00617EDE00607DDE005F7CDE004F64AB008A9EE500000000000000 + 000000000000000000000000000000000000000000004760B700556EC8003A5F + DB004266DD00657AC4004760B6006B7FC0006480E0002750D8002750D8004E6F + DC00566DB800BDCBF40000000000000000000000000000000000556DC1003F63 + DB001F49D600365CDB004E66BA000000000000000000BFCCF800A8BAF500A8BA + F500A7B9F500A7B9F500A6B8F500A5B7F500A5B7F500A5B7F500A5B7F500A4B6 + F500A4B6F500A3B6F500A2B5F500A2B5F500A1B4F500A1B4F500A0B3F500A0B3 + F5009FB3F5009FB3F500455EB40000000000000000004D67BE006C8BF300446B + F000456CF000456CF000456CF000456CF000456CF000456CF000446BF000446B + F000446BF000446BF000456CF000456CF000456CF000456CF000456CF000456C + F000446BF0006C8BF3000000000000000000000000004057A6006B85DC00355B + DA002F54CE003D62DC00365BD3003E63DB00365AD2003357CF00365AD2003256 + CE003E63DC003055CE003A5FDC002B50CD00647CCB00556FC700000000000000 + 000000000000000000000000000000000000000000004058A8005775D900375D + DD005576E3005D71B7008CA1E6004059AC006D81C4006883E300254FDB002D55 + DD004F70DF004159AC00BECCF5000000000000000000000000008CA1E6005374 + E300254FDB00335ADD00445BA8000000000000000000C3D0FA00B0C0F900AFC0 + F900AFC0F900AEBFF800AEBFF800ADBEF800ADBEF800ADBEF800ACBDF800ABBD + F800ABBDF800ABBDF800AABCF800AABCF800AABCF800A9BBF800A9BBF800A8BA + F800A7B9F800A7B9F8004962BA0000000000000000004F69C0007391F4005378 + F1005479F1005479F1005479F100829CF300819BEF007E98EE007E98EE007D97 + EE007D97EE007E98EE007E98EE00819BEF00718FF4005479F1005479F1005479 + F1005378F1007491F4000000000000000000000000005066B100758FE600476B + E300032597004A6AD700082A9C004B6BD700082A9C0003259700082A9C000325 + 97004B6BD700032597004768D600032597007B93E100485FAE00000000000000 + 00000000000000000000000000000000000000000000455EB2006482E6004167 + E7006180E7005168B600C6D1F50000000000BECCF500465FB6006E8BEB003A62 + E700335CE5005577E8005D75C600465FB6000000000000000000C6D1F5005477 + EA003D64E7003B62E700455EB2000000000000000000CBD6FB00BBCAFA00BBCA + FA004068F0004068F0004068F0004068F0004068F0004068F000B8C7F9004068 + F0004068F0004068F0004068F0004068F0004068F000B5C5F900B5C5F900B4C4 + F900B4C4F900B4C4F9004C65BC000000000000000000536DC400809BF500708E + F4007592F4007A96F40096ACF4002750D900053AEB00053AEB007B97F4007A96 + F4007A96F4007995F4007894F4007894F400667DCB0097ACF4007D98F5007592 + F400708EF400809BF500000000000000000000000000657BC5007F9AF1007490 + F0000328A000607DDD000328A000607DDD000328A0000328A0000328A0000328 + A000607DDD000328A000607DDD000328A0007D98F200758BD8005C76D2000000 + 000000000000000000000000000000000000000000004861B7006885E8004B70 + ED005E7FEE00556CBC00AEBDF2000000000000000000BFCCF5007187D0006E8B + EE004067EB003F66EB005D7EEC00627ACB00BFCCF50000000000AEBDF2005A7C + EE003C64EB00446AEB004861B7000000000000000000CED8FB00C1CEFA00C1CE + FA00496FF000496FF000496FF000496FF000496FF000496FF000BECCFA00BECC + FA00BDCBFA00BCCAFA00BCCAFA00BCCAFA00BCCAFA00BBCAFA00BBCAFA00BAC9 + FA00BAC9FA00B9C8F9004D67BE000000000000000000556EC500839EF5007A96 + F400859FF50099AFF700889ADE000D40EC000D40EC000D40EC00A2B6F800A1B5 + F7007D98F5007C97F4007B97F4007B97F400536FD000889BDE0098AEF700859F + F5007A96F400839EF5000000000000000000000000006C83D3008AA3F500859F + F4000328A4006D87E1000328A4006D87E1000328A4000328A4000328A4000328 + A4006D87E1000328A4006D87E1000328A4007A95F00094A9EF00526AC0000000 + 000000000000000000000000000000000000000000004B65BC006F8BEB005075 + F0006384F2005B73C50090A4EB000000000000000000000000004B65BE00748C + DB007290F300426AEF00466DEF006081F0004B65BE00BFCDF50090A4EB006384 + F200466DEF004D72F0004F68BC000000000000000000D1DBFB00C6D2FA00C6D2 + FA005176F1005176F1005176F1005176F1005176F1005176F100C4D1FA005176 + F1005176F1005176F1005176F1005176F1005176F1005176F1005176F1005176 + F100C0CEFA00BFCDFA004E68BF0000000000000000005770C700819BF5007491 + F4008FA7F6009DAFF0006078CB002553EE002553EE002553EE00B1C1F900B0C0 + F9002553EE002553EE002553EE002553EE002C58E9006078CB009EB0F000839E + F5007592F400839DF300000000000000000000000000748AD6008DA5F60095AC + F7000328A4007891E3000328A4007891E3000328A4000328A4000328A4000328 + A4007891E3000328A4007891E3000328A4006E88E20095ACF7006A80CB000000 + 000000000000000000000000000000000000000000006580D9007087D2006A8A + F3005B7EF2006A87EA00536CC00000000000000000000000000000000000BFCD + F6005069C3007995F4005479F1005479F1006685F000667FD000536CC0006384 + F300587CF2006686F300778FDE000000000000000000D8E0FC00D1DBFB00D1DB + FB006384F3006384F3006384F3006384F3006384F3006384F300CED8FB006384 + F3006384F3006384F3006384F3006384F3006384F3006384F3006384F3006384 + F300CBD6FB00CAD5FB00516BC200000000000000000093A8ED005872CA005872 + C9005872C9005A78DB00567AF200567AF200567AF200567AF200CBD6FB00CAD5 + FB00567AF200567AF200567AF200567AF200567AF200567AF2005A78DB005872 + C9005872C9005872CA000000000000000000000000007A91E200839EF50094AB + F6000328A4007D94E2000328A4007D94E2000328A4000328A4000328A4000328 + A4007D94E2000328A4007D94E2000328A4007991E20090A8F60098ACF0000000 + 000000000000000000000000000000000000000000009FB0EF005B74C5007B96 + F100567AF2006A8AF3006881D400000000000000000000000000000000000000 + 0000BFCDF6007D93DE007E99F5005F81F2006485F3007592F2008197E2006686 + F3006888F3007793F000B7C4F2000000000000000000DBE2FC00D6DFFC00D6DF + FC006C8BF3006C8BF3006C8BF3006C8BF3006C8BF3006C8BF300D3DCFB00D3DC + FB00D3DCFB00D2DBFB00D2DBFB00D2DBFB00D1DBFB00D1DBFB00D1DBFB00D0DA + FB00D0DAFB00CFD9FB00526CC30000000000000000000000000000000000556E + C500C0CEFA006F8DF3006F8DF3006F8DF3006F8DF3006F8DF300D6DFFC00D5DE + FC006F8DF3006F8DF3006F8DF3006F8DF3006F8DF3006F8DF3006F8DF300C3D0 + FA00556EC50000000000000000000000000000000000829BED007290F400849E + F5003C5BC30095AAF2003454BE008EA4ED00173AAF000328A4000D31A9000328 + A4007D94E2000328A4007D94E2000328A4007891E30088A2F60090A8F60092A7 + EC00000000000000000000000000000000000000000000000000516CC8008196 + DF005D80F2006283F2006C8AEF006681DA000000000000000000000000000000 + 000000000000526BC4007E94DF00849EF5007C97F400809BF5008FA7F6007592 + F4007D98F5007E94DF00000000000000000000000000DEE5FC00DAE2FC00DAE2 + FC007592F4007592F4007592F4007592F4007592F4007592F400D8E0FC007592 + F4007592F4007592F4007592F4007592F4007592F4007592F4007592F4007592 + F400D5DEFC00D4DDFC00546DC400000000000000000000000000000000005770 + C700DCE3FC00DFE6FC00E0E6FC00E1E7FD00E0E6FC00E0E6FC00DFE6FC00DFE6 + FC00DFE6FC00DEE5FC00DEE5FC00DEE5FC00DCE3FC00DCE3FC00D9E1FC00D7DF + F9005770C700000000000000000000000000000000008098E700859FF5008CA5 + F6009AAFF70092A9F60094ABF6008CA5F600859EF1008099EC006E89E100617C + D8009EB3F7003E5DC30095AAF200294AB9007D97EB007D98F5007D98F500617C + D800000000000000000000000000000000000000000000000000000000005D78 + CF00819CF3006787F3006888F300718EEF006C85D6005770C40092A5EC00AEBE + F300C8D2F60092A5EC005671CE005A73C600A7B9F8009AAFF70095ACF7008FA6 + F400788ED6005D78CF00000000000000000000000000E6EBFD00E2E8FD00E2E8 + FD00E2E8FD00E2E8FD00E2E8FD00E1E7FD00E1E7FD00E1E7FD00E1E7FD00E0E6 + FC00E0E6FC00E0E6FC00E0E6FC00DFE6FC00DFE6FC00DFE6FC00DEE5FC00DEE5 + FC00DEE5FC00DBE2FC005770C7000000000000000000000000000000000093A8 + ED005872C9005872C9005872C9005872C9005872C9005872C9005872C9005872 + C9005872C9005872C9005872C9005872C9005872C9005872C9005872C9005872 + CA0093A8ED000000000000000000000000000000000000000000AFBFF300AFBF + F3007C92E5007C92E5007C92E5005E79D5005E79D500566FC700687ECD006A80 + CD006A80CD00768BD9007B91DB007F97E4008098E600809AEF007893EE006077 + CA0093A7ED00000000000000000000000000000000000000000000000000D3DB + F900859AE100859FF5006D8CF3007491F4007A96F4007892EC00647CCC006078 + C8006078C800647CCC006D85D9007F99EC00A3B6F8009DB2F7008EA6F600899E + E200526CC50000000000000000000000000000000000E7ECFB00E5EAFD00E4E9 + FD00E5EAFD00E6EBFD00E5EAFD00E5EAFD00E5EAFD00E5EAFD00E4E9FD00E4E9 + FD00E4E9FD00E3E9FD00E3E9FD00E3E9FD00E3E9FD00E2E8FD00E2E8FD00E1E7 + FD00DFE6FC00DEE5FC005871C800000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000C1CD + F600AFBFF300859BE9007C93E5007C93E5005E79D6005E79D6005770C8004D6A + CC00647EDA000000000000000000000000000000000000000000000000000000 + 00005871C800869AE2008AA3F4007995F4007A96F400819BF500829DF5007F9A + F5007F9AF500859FF50088A2F6008FA7F60099AFF70095ACF70099AEF5005871 + C800BFCDF600000000000000000000000000000000009FAFE100E7ECFB00E8ED + FB00E8EDFB00E8EDFB00E8EDFB00E7ECFB00E7ECFB00E7ECFB00E7ECFB00E7EC + FB00E7ECFB00E6EBFB00E6EBFB00E6EBFB00E6EBFB00E5EAFB00E5EAFB00E5EA + FB00E4EAFB00E3E8FB006B85DE00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000006B85DE002C57 + E700647CCD00647CCD005A72CB00000000000000000000000000000000000000 + 000000000000D3DBF9006179D1008A9EE2009AAFF40099AFF70097ADF70097AD + F7009AAFF7009AAFF7009DB2F700A0B4F7008B9FE200687FCC005D78D5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000005872 + C9005872C9005872C9005872CA00000000000000000000000000000000000000 + 00000000000000000000000000005772CD00637BCC007A8FD90092A8F00098AD + F0009AAEF10092A8F000879DE6007A8FD9005772CD0092A7ED00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000009FB1F000728BE0005771C8005771 + C8005771C8005771C8005A75D100728BE0000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000DBDBDB002E3F79002632 + 5B0026325B0026325B0026325B0026325B0026325B0026325B0026325B002632 + 5B0026325B0026325B002E3E7700C5C5C500C5C5C500C5C5C500C7C7C7000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000027366E004F65 + AE004F64AC00485B9B004F64AC004F64AC00485B9B004F64AC004F64AC00485B + 9B004F64AC004F64AC002736680026335C0026335B0026335B0026335B002632 + 5D002E3F7900CBCBCB0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000C4C4C400B9B9B9004558 + 9700253159002531590025315900253159002531590025315900253159002531 + 5900253159002531590025315900253159002531590025315900253159004558 + 9700BDBDBD00DADADA0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000002C3D7A004F69 + BE000328A200032082001D3EAC000328A200032082001D3EAC000328A2000320 + 82001D3EAC004F69BE002C3D7A001D3EAC000328A200032082001D3EAC004F69 + BE002C3D7A0000000000000000000000000000000000A6A4A400E2E2E200E2E2 + E200E2E2E200E2E2E200E2E2E200E2E2E200E2E2E200E2E2E200E2E2E200E2E2 + E200E2E2E200E2E2E200E2E2E200E2E2E200A6A4A400B6B5B500A09E9E000000 + 00000000000000000000000000000000000000000000000000002C3B75004B62 + AC0003279D0003279D0003279D0003279D0003279D0003279D0003279D000327 + 9D0003279D0003279D0003279D0003279D0003279D0003279D0003279D004B62 + AC002C3B75000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000002E407E004F69 + C200042AA900032187001D3FB100052AA900042288001E40B100052AA9000321 + 87001D3FB1004F69C2002E407E001D40B300062CAB00052389001F42B400506A + C4002F41800000000000000000000000000000000000A7A6A500E2E2E200D6D6 + D600D6D6D600D6D6D600D6D6D600D6D6D600D6D6D600D6D6D600D6D6D600D6D6 + D600D6D6D600D6D6D600D6D6D600D6D6D600A7A6A500D8D8D800B7B6B600D5D5 + D5000000000000000000000000000000000000000000000000002B3D7900435E + BB00546393005A6792005A6792000328A300546393005A679200546393000328 + A300546393005A679200546393000328A3005A6792005A67920054639300435E + BB002B3D790000000000000000000000000000000000B1BCE500465792003441 + 6E00333F6800333F6800333F6800333F6800333F6800333F6800333F6800333F + 6800333F6800333F6800333F6800333F6800333F6800333F6800333F6800333F + 680034416E00485C9B0000000000000000000000000000000000304385004760 + B30005248C0006258D000E2C910009278D0009278D000F2D900009278D000827 + 8D000D2B90004760B300304385002346BC000E34B5000B2A91002548BD00516C + C9003144870000000000000000000000000000000000A8A7A600E2E2E200D6D6 + D600D6D6D600D6D6D600D6D6D600D6D6D600D6D6D600D6D6D600D6D6D600D6D6 + D600D6D6D600D6D6D600D6D6D600D6D6D600A8A7A600ECECEC00D8D8D800A1A1 + A000D5D5D50000000000000000000000000000000000000000002D407F00435F + BF008190C2008194D4008194D400092EAC008190C2008194D4008392C300042A + AA007080B8008194D4007080B800092EAC008194D4008194D4008392C300435F + BF002D407F00000000000000000000000000000000002D3F7F0043548D004B60 + A8004A60A9004A60A9004A60A9004A60A9004A60A9004A60A9004A60A900495F + A700465BA000425698004256980042569800465BA000495FA7004A60A9004A60 + A9004B60A80044559000DBE2F80000000000000000000000000035498F00516E + CF001239BE00102F98002D50C600183EBF00133299002F52C600183EBF001231 + 99002B4FC600526FCF0035498F003256CE001F46C8001938A1003357CE005472 + D500384D950000000000000000000000000000000000AEACAB00E6E6E600DCDC + DC00DCDCDC00DCDCDC00DCDCDC00718BE400DCDCDC00DCDCDC00DCDCDC00718B + E400DCDCDC00DCDCDC00DCDCDC00718BE400AEACAB00EFEEEE00ECECEC00CDCD + CD00B6B5B400A3A1A1000000000000000000000000000000000032478A004261 + C800042DB600042DB600042DB600042DB600042DB600042DB600042DB600042D + B6008196DA008196DA008196DA00042DB600042DB600042DB600042DB6004261 + C80032478A00000000000000000000000000000000003E58B5001544DF000537 + E0001229760026387700042AAB00042AAB00042AAB00042AAB00182F7F004142 + 4A0079777700ADACAC00ADACAC00ADACAC007977770041424A00182F7F00042A + AB00042AAB001B3EB4003F519200000000000000000000000000374D94005371 + D4001840C50015359E003256CC001E45C70018379F003558CC001E45C6001736 + 9F003054CC005371D400374D94003A5ED600274ED100203FA8003A5ED6005574 + DB003B519D0000000000000000000000000000000000B3B1B100ECECEC00E4E4 + E400E4E4E400E4E4E400E4E4E400758FE800E4E4E400E4E4E400E4E4E400758F + E800E4E4E400E4E4E400E4E4E400758FE800BCBBBA00B3B1B100B3B1B100B3B1 + B100B3B1B100B3B1B10000000000000000000000000000000000354890004262 + CD0055659D005A699B005A699B00042FBD0055659D005A699B0055659D00042F + BD008196DE008196DE008196DE00042FBD005A699B005A699B0055659D004262 + CD0035489000000000000000000000000000000000003555BE000839DD000537 + E000032187002A3B7500042CB200042CB200042CB200042AAA004D4B4C009493 + 92009492920043414200454344004341420094929200949392004D4B4C004C66 + C0004B67C7001439B70041548F0000000000000000000000000039509A004B66 + C2001838A4001B3BA5002241A7001D3CA4001D3CA4002341A7001D3CA4001C3B + A4001F3EA6004B66C20039509A004064DC002F56DA002645AE004064DC005777 + E1003F56A40000000000000000000000000000000000B8B6B600F1F1F100EBEB + EB007892EB007892EB007892EB007892EB007892EB007892EB007892EB007892 + EB007892EB007892EB007892EB007892EB007B95EE007B95EE007B95EE00F1F1 + F100F1F1F100B8B6B60000000000000000000000000000000000384D96004364 + D3008192CB008197E1008197E1000934C5008192CB008197E1008494CD000934 + C50090A3E5008197E10092A5E5000934C5008197E1008197E1008494CD004364 + D300384D9600000000000000000000000000000000003555BE000537DE000537 + E000032187002C3C7600042DB700042DB700042DB600072AA0008F8E8D008483 + 82004342450024283900202537001E23360041404400848382008F8E8D004760 + B2004F6BCA00143BBC00455794000000000000000000000000003F56A5005676 + E1002951D9002545AF004468DE003259DA002847AF004669DE003259DA002645 + AE003F64DC005676E1003F56A5004F73EB003F66E8003352BA004E72EA00597B + EB00455FB30000000000000000000000000000000000C0BEBD00F9F9F900F6F6 + F600F6F6F600F6F6F600F6F6F6007E98F100F6F6F600F6F6F600F6F6F6007E98 + F100F6F6F600F6F6F600F6F6F6007E98F100F6F6F600F6F6F600F6F6F600F6F6 + F600F9F9F900C0BEBD00000000000000000000000000000000003C54A1004266 + DC000433D0000433D0000433D0000433D0000433D0000433D0000433D0000433 + D0000433D0000433D0000433D0000433D0000433D0000433D0000433D0004266 + DC003C54A100000000000000000000000000000000003555BE000537DE000537 + E000032187002F3F79000E38C6000E38C6000D34B500434757006D6B6B004242 + 4900333540002D2F3C00292C3B00262A3800313648002C303D006D6B6B004347 + 57000D34B5001B43C9004B5FA000000000000000000000000000425AAA005778 + E5003058DF002A4AB300496DE300385FE0002D4CB3004D70E300385EDF002B4A + B200456AE2005778E500425AAA005579F000476DEE003A59BF005478F0005A7D + F1004963BB0000000000000000000000000000000000C2C1C000FBFBFB00F9F9 + F9007F99F2007F99F2007F99F2004E73EF004E73EF004E73EF004E73EF004E73 + EF007F99F2007F99F2007F99F2007F99F2007F99F2007F99F2007F99F200F9F9 + F900FBFBFB00C2C1C000000000000000000000000000000000003F58A8004368 + E1005669A8005B6CA5005B6CA5000535D8005669A8005B6CA5005669A8000535 + D8005669A8005B6CA5005669A8000535D8005B6CA5005B6CA5005669A8004368 + E1003F58A800000000000000000000000000000000003555BE000537DE000537 + E0000321870030417A001B44CE001B44CE00193EBA004E4C4C004D4B4C004243 + 4A00393B42003537400032333F002E313E0025293800222839004D4B4C004E4C + 4C00193EBA00264DD0004E62A400000000000000000000000000445DB100506E + D2002A4AB7002F4FB8003553B9003251B8003251B7003856BA003251B8003150 + B8003150B9004F6DD200445DB1005D80F2005075F100405EC1005B7EF2005C7F + F2004C66BD0000000000000000000000000000000000C5C3C300FDFDFD00FCFC + FC00FCFCFC00FCFCFC00FCFCFC004F74F00099AEF50099AEF50099AEF5004F74 + F000FCFCFC00FCFCFC00FCFCFC00819BF400FCFCFC00FCFCFC00FCFCFC00FCFC + FC00FDFDFD00C5C3C30000000000000000000000000000000000425AAD004469 + E6008295D600819AEE00819AEE000A3ADE008295D600819AEE008598D7000A3A + DE008295D600819AEE008598D7000A3ADE00819AEE00819AEE008598D7004469 + E600425AAD00000000000000000000000000000000003555BE000537DE000537 + E0000321870032427C002951D6002951D6002448C0004F4D4E004F4D4E004545 + 4A006060650072737A0053555D00353741002B2F3D00272B3A004F4D4E005856 + 56002448C0003056D7005166AA000000000000000000000000004A64BB005A7D + F1004169EF003857BF005B7EF1004C71F0003D5BC0005E80F1004C71F0003B59 + BF005478F000597CF1004A64BB006684E8005F81F2004D68C2006482E8005E80 + F2004E68BF0000000000000000000000000000000000C8C7C600FFFFFF00FFFF + FF00829CF500829CF500829CF5005075F1005075F1005075F1005075F1005075 + F100829CF500829CF500829CF500829CF500829CF500829CF500829CF500FFFF + FF00FFFFFF00C8C7C600000000000000000000000000000000004862B9004A70 + F0001C4CEC001C4CEC001C4CEC001C4CEC001C4CEC001C4CEC001C4CEC001C4C + EC001C4CEC001C4CEC001C4CEC001C4CEC001C4CEC001C4CEC001C4CEC004C71 + F0004862B900000000000000000000000000000000003555BE000537DE000537 + E0000321870035457F004368E4004368E4003E60D1004F526000686666004E4C + 4D00959495008C8C8E008283880044444A00373944003A3C4400686666004F52 + 60003D5FD1004469E400586DB6000000000000000000000000004B65BD005C7F + F200466DF0003E5CC1006183F2005176F100425FC1006586F3005176F100405E + C100597CF2005B7EF2004B65BD006D89E9006787F300536DC2006986E8005F81 + F2004F69C10000000000000000000000000000000000CAC8C700FEFEFE00FEFE + FE00FEFEFE00FEFEFE00FEFEFE00829CF500FEFEFE00FEFEFE00FEFEFE00829C + F500FEFEFE00FEFEFE00FEFEFE00829CF500FEFEFE00FEFEFE00FEFEFE00FEFE + FE00FEFEFE00CAC8C700000000000000000000000000000000004A64BB004E73 + F1006777AC006777AC006777AC006777AC006777AC006777AC006777AC006777 + AC006777AC006777AC006777AC006777AC006777AC006777AC006777AC005075 + F1004A64BB00000000000000000000000000000000003555BE000537DE000537 + E00003218700324176005275EB005275EB004D6FDE004F5C8B008F8D8D005452 + 530071707000969496006F6E710049494E003A3B4300514F51008F8D8D004F5C + 8B004D6FDE004E72EA005C72BB000000000000000000000000004C66BD005473 + D9003D5BC100425FC1004965C2004763C1004864C1004C67C3004763C1004561 + C100425FC2005372D9004C66BD00728DE9006F8DF3005871C3006E8AE8006082 + F200516BC20000000000000000000000000000000000C9C7C600FCFCFC00FBFB + FB00FBFBFB00FBFBFB00FBFBFB00809AF300FBFBFB00FBFBFB00FBFBFB00809A + F300FBFBFB00FBFBFB00FBFBFB00809AF300FBFBFB00FBFBFB00FBFBFB00FBFB + FB00FCFCFC00C9C7C600000000000000000000000000000000004B65BC005075 + F10090A4E80099AFF70090A4E80090A4E80099AFF70090A4E80090A4E80099AF + F70090A4E80090A4E80099AFF70090A4E80090A4E80099AFF70090A4E8005479 + F1004B65BC0000000000000000000000000000000000465EB2001743D5001844 + D60019307D0039497A00809AF300657AC2006D84D1005D77D100908E8E007F7D + 7D00575555004F4D4D004D4B4D0047474A00545254007F7D7D00908E8E003E52 + 94004158A5004059AC005F75C1000000000000000000000000004E68BF005F81 + F200567AF2004C67C200718FF4006586F300516BC2007693F4006586F3004F69 + C2006888F3005D80F2004E68BF00829DF5007C97F4005D75C3007491F4005F81 + F200536DC40000000000000000000000000000000000BDBBBA00E8E8E800DEDE + DE00DEDEDE00DEDEDE00DEDEDE00DEDEDE00DEDEDE00DEDEDE00DEDEDE00DEDE + DE00DEDEDE00DEDEDE00DEDEDE00DEDEDE00DEDEDE00DEDEDE00DEDEDE00DEDE + DE00E8E8E800BDBBBA00000000000000000000000000000000004D67BE00587C + F2004C72F1004C72F1004C72F1004C72F1004C72F1004C72F1004C72F1004C72 + F1004C72F1004C72F1004C72F1004C72F1004C72F1004C72F1004C72F1005E80 + F2004D67BE00000000000000000000000000000000005E79D0006B86E2006179 + CA005669AB005669AB007B97F4006279C4006B84D6007B97F4006879B2005959 + 5F00757373008F8E8D008F8E8D008F8E8D007573730059595F006879B2005669 + AB004D62AA004B62AE00617AD3000000000000000000000000004F69C0006082 + F2005B7EF2004F6AC2007794F4006B8AF300566FC3007C97F4006B8AF300536D + C2006D8CF3005E80F2004F69C00086A0F5007995F400566FC3006989F3005C7F + F200556FC60000000000000000000000000000000000AEADAC00D2D2D200D2D2 + D200D2D2D200D2D2D200D2D2D200D2D2D200D2D2D200D2D2D200D2D2D200D2D2 + D200D2D2D200D2D2D200D2D2D200D2D2D200D2D2D200D2D2D200D2D2D200D2D2 + D200D2D2D200AEADAC00000000000000000000000000000000004D67BF005B7E + F2004D5B8B005563930055639300556393005563930055639300556393005563 + 9300556393005563930055639300556393005563930055639300556599006283 + F2004D67BF0000000000000000000000000000000000627ACE007592F4003E4E + 8000343D5D006071AB0089A2F60089A2F60089A2F60089A2F600829AEA007A8E + D5006A7191005A585800646262005A5858006A7191007A8ED500829AEA00829C + F5006D8CF3006F8CF1008EA3E900000000000000000000000000506AC1005775 + DA004D68C200546EC2005B73C4005A72C3005B73C3006077C4005B73C3005871 + C300526CC3005674DA00506AC1009CB1F70096ACF7007A91DC00819BEF006483 + EB005670C700000000000000000000000000000000005263A1005F6FA8005F6F + A8005F6FA8005F6FA8005F6FA8005F6FA8005F6FA8005F6FA8005F6FA8005F6F + A8005F6FA8005F6FA8005F6FA8005F6FA8005F6FA8005F6FA8005F6FA8005F6F + A8005F6FA8005263A100000000000000000000000000000000004E68C0005F81 + F2002C3B6C003242790032427900324279003242790032427900324279003242 + 7900324279003242790032427900324279003242790039497E005B6894006787 + F3004E68C000000000000000000000000000000000005C75CC00728ADD00404F + 8100404C72006575AC0091A8F60092A9F60092A9F60093AAF60097ADF70099AE + F30095A9EB008C9EDD008C9EDD008C9EDD0095A9EB0098ADF30094ABF600819B + F5007390F2006983D80000000000000000000000000000000000526CC3006283 + F2006989F3005D75C300859FF5007E99F500657BC3008DA5F6007F9AF5006279 + C4007A96F4006082F200526CC300375EE5003159E4002551E3005771C8000000 + 00000000000000000000000000000000000000000000556CBD005A79DF000536 + D900042EBB00042BAE00042EBB000536D9000536D9000536D9000536D9000536 + D9000536D9000536D9000536D9000536D900042EBB00042BAE00042EBB000536 + D9005A79DF00556CBD0000000000000000000000000000000000506AC1006686 + F30038446D003E4C7A003E4C7A003E4C7A003E4C7A003E4C7A003E4C7A003E4C + 7A007982A2005C688F00737D9E004A5782003E4C7A003E4C7A00646F9400708E + F400506AC1000000000000000000000000000000000000000000000000008DA2 + E800536DC400536DC4004E66B8004B62B0004E66B800536DC400546DC0005870 + BF007D8DC6008D9BC7008E9BC7008D9BC7007789C5004F69BE00556EC100637A + CE008DA2E8000000000000000000000000000000000000000000536DC4006283 + F2006C8BF3006077C3008AA3F600839EF5006B80C40092A9F600849EF500657B + C3007C97F4006183F200536DC4005771C8005771C8005771C8005A76D2000000 + 00000000000000000000000000000000000000000000566FC6006A89F200053A + EA005574DB006886EB005574DB00053AEA00053AEA00053AEA00053AEA00053A + EA00053AEA00053AEA00053AEA00053AEA004D6CD3006482E7004D6CD300053A + EA006A89F200566FC60000000000000000000000000000000000516BC2006A8A + F3003D486E0044517A0044517A0044517A0044517A0044517A0044517A004451 + 7A009097B0007881A000848CA8007881A00044517A0044517A00687294007491 + F400516BC2000000000000000000000000000000000000000000000000000000 + 000000000000DAE1F900637BCE00556FC600637BCE00DAE1F9006C84D800607B + D9007D98F500AABCF800ADBEF800AABCF8007491F4005775D9006C84D8000000 + 0000000000000000000000000000000000000000000000000000546EC5005876 + DA00566FC3006379C4006C81C5006E82C4007083C5007587C6006E82C400687D + C4005B73C4005775DA00546EC500000000000000000000000000000000000000 + 000000000000000000000000000000000000000000005771C8007794F4001C4C + ED0090A7F4007995F40090A7F4001E4EED001E4EED001E4EED001E4EED001E4E + ED001E4EED001E4EED001E4EED001E4EED0090A7F4007995F40090A7F4001C4C + ED007794F4005771C80000000000000000000000000000000000526CC3006D8C + F300434D6E00485378004A557B004A557B004A557B004A557B004A557B004A55 + 7B004A557B004A557B004A557B004A557B004A557B004A557B006F7896007995 + F400526CC3000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000A8B8F0005570 + CB00466BE300CFD8F800CFD8F800CFD8F8004165E300546ECA00A8B8F0000000 + 00000000000000000000000000000000000000000000000000005670C7005D80 + F200587CF2005972C3008EA6F60093AAF600798AC500A3B6F80087A1F5005B73 + C3006989F3005B7EF2005670C700000000000000000000000000000000000000 + 000000000000000000000000000000000000000000005872C900889FEB0091A6 + EC0097ABED0098ABED0098ABED0099ACED0099ACED0099ACED0099ACED0099AC + ED0099ACED0099ACED0099ACED0099ACED0099ACED0098ABED0097ABED0091A6 + EC00889FEB005872C900000000000000000000000000000000005670C6007794 + F400AABCF800ADBEF800AEBFF800AEBFF800AEBFF800AEBFF800AEBFF800AEBF + F800AEBFF800AEBFF800AEBFF800AEBFF800AEBFF800ADBEF800A9BBF800829C + F500546EC5000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000005771C8006583 + EB00809AEE007B92DD009BB0F700AEBFF8009FAEDF00B2C2F9009EB3F7007C92 + DD00809AEE006382EB005771C800000000000000000000000000000000000000 + 000000000000000000000000000000000000000000005B76D2005872C9005872 + C9005872C9005872C9005872C9005872C9005872C9005872C9005872C9005872 + C9005872C9005872C9005872C9005872C9005872C9005872C9005872C9005872 + C9005872C9005B76D200000000000000000000000000000000005A74C7008CA3 + ED009BB0F700A6B9F800A9BBF800AABCF800AABCF800AABCF800AABCF800AABC + F800AABCF800AABCF800AABCF800AABCF800A9BBF800A5B8F80098AEF70092A7 + EF005972C6000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000005A76D2005771 + C8005771C8002A4DBF00425FC100566FC3005B73C3005A72C3004360C100294C + BF005771C8005771C8005A76D200000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000728BDF007289 + D7009BAFF1009FB2F200A0B3F200A0B3F200A0B3F200A0B3F200A0B3F200A0B3 + F200A0B3F200A0B3F200A0B3F200A0B3F200A0B3F2009EB1F2009AAEF1007389 + D700728BDF000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005A76D2005771C8005771C8005771C8005771C8005771C8005771C8005771 + C8005A76D2000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003044890030448900000000000000000000000000000000000000 + 0000000000003044890000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000263569004F5E9400000000000000000000000000000000000000 + 0000536BBA002635690000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000004D66 + BC007D94DF007B94E7007F97E7008098E7008199E7008199E7008199E7008199 + E7008199E7008199E7008199E7008199E7008098E7007F97E7007C94E5006377 + BB004D66BC000000000000000000000000000000000000000000000000000000 + 00000000000029397200627DD900334992000000000000000000000000003349 + 92005E71B3002939720000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000003F58AD003D59B9003857BF003857 + BF003857BF003857BF003857BF003857BF003857BF003857BF003857BF003857 + BF003857BF003857BF003857BF003857BF003857BF003857BF003857BF003857 + BF003857BF003857BF003A5097005169BF000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000D2DBF8004E66 + B7006686F3006888F3006F8DF3007592F4007693F4007693F4007693F4007693 + F4007693F4007693F4007693F4007693F4007391F4006F8DF3006888F3007F99 + F0004E66B700D2DBF80000000000000000000000000000000000000000000000 + 0000000000002C3C7700617DDA00445591007389D300000000007389D300495A + 9300526FD2002C3C770000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000283C82000730BA00042EB900042E + B900042EB900042EB900042EB900042EB900042EB900042EB900042EB900042E + B900042EB900042EB900042EB900042EB900042EB900042EB900042EB900042E + B900042EB900042EB9003453B900283C820000000000364C9A002C3E7D002C3E + 7D002C3E7D002C3E7D002C3E7D002C3E7D002C3E7D002C3E7D002C3E7D002C3E + 7D002C3E7D002C3E7D002C3E7D002C3E7D002C3E7D002C3E7D002C3E7D002C3E + 7D002C3E7D002C3E7D0000000000000000000000000000000000AEBDF100556C + BB00617FE30040508500576AAB00819BF500819BF500435180005D70B000829C + F500829CF5005A6CAB005C6FAF00819BF500425080005669AA005469AF007B97 + F400556CBB00AEBDF10000000000000000000000000000000000000000000000 + 0000000000002E3F7C00617DDB005872C70032478800CED7F70033478800647B + CB002447BB002E3F7C0000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000027387A00042BAD00042BAD00042B + AD00042BAD00042BAD00042BAD00042BAD00042BAD00042BAD00042BAD00042B + AD00042BAD00042BAD00042BAD00042BAD00042BAD00042BAD00042BAD00042B + AD00042BAD00042BAD001035B10027387A00000000002F4284005872CB004F6B + C8004F6BC8004F6BC8004F6BC8004F6BC8004F6BC8004F6BC8004F6BC8004F6B + C8004F6BC8004F6BC8004F6BC8004F6BC8004F6BC8004F6BC8004F6BC8004F6B + C8004F6BC8005872CB00000000000000000000000000000000008FA3E900627A + CD004862BC0036488600445BA9006283F2006283F20031417700445BA9006283 + F2006283F200445BA900445BA9006283F20031417700445BA900445BA9007290 + F400627ACD008FA3E90000000000000000000000000000000000000000000000 + 00000000000032458600617EDF00173CBA005472D800435492005D7ADA001238 + B700042BAF003245860000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000002A3C7E00042BB000042BB000042B + B000042BB000042BB000042BB000042BB000042BB000042BB000042BB000042B + B000042BB000042BB000042BB000042BB000042BB000042BB000042BB000042B + B000042BB000042BB000042BB0002A3C7E0000000000354A92005875D600BBC2 + DA00D0D8F400D0D8F400D0D8F400CED6F300CED6F300CED6F300CED6F300CCD5 + F200CDD6F300CED6F300CED6F300D0D8F400D1D9F400D1D9F300D3DAF400D5DC + F400E9EDFA005875D60000000000000000000000000000000000768EE1006079 + CD003955B3002F458F003751A8005075F1005075F100273975003751A8005075 + F1005075F1003751A8003751A8005075F100273975003751A8003751A8006183 + F2006079CD00768EE10000000000000000000000000000000000000000000000 + 00000000000034478B00627FE100042CB4002E53CB005B73C7002E53CB00042C + B400042CB40034478B0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000002C408400042EB900042EB900042E + B900042EB900042EB900042EB900042EB900042EB900042EB900042EB900042E + B900042EB900042EB900042EB900042EB900042EB900042EB900042EB900042E + B900042EB900042EB900042EB9002C40840000000000384E99005876DB00BDC4 + DC00D2DAF500D1D9F500D1D9F500D1D9F500D1D9F500D1D9F500CFD7F400CFD7 + F400CED7F400CED7F400CED7F400CED7F500CED7F500CED7F500CED7F500CED7 + F500E6EBF9005876DB00000000000000000000000000000000007790E100657E + D3002844A200243D8E002C48A7003E67F0003E67F0001E3274002C48A7003E67 + F0003E67F0002C48A7002C48A7003E67F0001E3274002C48A7002C48A7005075 + F100657ED3007790E10000000000000000000000000000000000000000000000 + 000000000000374B8F006280E300042EB9000932BC004164D8000932BC00042E + B900042EB900374B8F0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000002F448C000430C2000430C2000430 + C2000430C2000430C2000430C2000430C2000430C2000430C2000430C2000430 + C2000430C2000430C2000430C2000430C2000430C2000430C2000430C2000430 + C2000430C2000430C2000430C2002F448C00000000003C53A0005A79E000C0C7 + DE00D5DDF700D3DBF600D3DBF600D3DBF700D2DAF600D2DAF600D2DAF700D1D9 + F600D2DAF700D1D9F600D0D9F600D0D9F600D0D9F600CFD8F600CFD8F600CFD8 + F600E6EBFA005A79E00000000000000000000000000000000000516AC2005E7A + D8000D257600112D8A00123095001A45D6001A45D6000C216800123095001A45 + D6001A45D60012309500123095001A45D6000C2168001230950012309500335B + E1005E7AD800516AC20000000000000000000000000000000000000000000000 + 0000000000003B509A00617FE5000430C4000430C4000430C4000430C4000430 + C4000430C4003B509A0000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000354B9B000534D4000534D4000534 + D4000534D4000534D4000534D4000534D4000534D4000534D400042AAA00042A + AA00042AAA00042EB9000534D4000534D4000534D4000534D4000534D4000534 + D4000534D4000534D4000534D400354B9B0000000000435CAF006181EC00C2C9 + E000D8E0FA00D8E0FA00D7DFFA00D7DFFA00D7DFFA00D7DFFA00D6DEFA00D6DE + FA00D6DEFA00D6DEFA00D6DEFA00D5DDFA00D5DDFA00D4DDFA00D4DDFA00D4DD + FA00E9EEFC006181EC00000000000000000000000000000000004D66BA005E7A + D80003185F0005207B00062489000833C3000832BD0004195F00062489000833 + C3000832BD0005218000062489000833C30004195F0005218000062489001A43 + CE005E7AD8004D66BA0000000000000000000000000000000000000000000000 + 0000000000003E539E006180E7000432C9000432C9000432C9000432C9000432 + C9000432C9003E539E0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000003850A3000537DD000537DD000537 + DD000537DD000537DD000537DD000537DD000537DD000537DD00C5C3C200C3C1 + BF00C0BEBC00042EBC000537DD000537DD000537DD000537DD000537DD000537 + DD000537DD000537DD000537DD003850A300000000004660B6006182F100C5CB + E100DAE1FB00DAE1FB00DAE1FB00D9E1FB00D9E1FB00D9E1FB00D8E0FB00D8E0 + FB00D8E0FB00D7DFFB00D7DFFB00D7DFFB00D6DEFB00D6DEFB00D6DEFB00D6DE + FB00EBF0FD006182F100000000000000000000000000000000004960B2005D7D + EA0002175D000216580002165800042CB300042BAC0002175D0002175D00042C + B300042BAC000216580002175D00042CB30002175D000216580002165800173E + C2005D7DEA004960B20000000000000000000000000000000000000000000000 + 0000000000004056A3006180E9000433CE000433CE000433CE000433CE000433 + CE000433CE004056A30000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000003B54AA000539E5000537E0000434 + D1000433CE000433CE000433CE000433CE000433CE000433CE00D9D8D700D7D5 + D400D4D2D100042BB0000433CE000433CE000433CE000433CE000433CE000433 + CE000434D3000538E2000539E5003B54AA00000000004962BA006283F200C7CD + E300DEE5FC00DDE4FC00DDE4FC00DCE3FC00DCE3FC00DCE3FC00DBE2FC00DBE2 + FC00DBE2FC00DAE2FC00DAE2FC00DAE2FC00D9E1FC00D9E1FC00D8E0FC00D8E0 + FC00EBF0FD006283F2000000000000000000000000003C4E9300405190000D26 + 7800031F7D00031F7D00031F7D00031F7D00031F7D00031F7D00031F7D00031F + 7D00031F7D00031F7D00031F7D00031F7D00031F7D00031F7D00031F7D00031F + 7D000D2678003C4E8C00879DE200000000000000000000000000000000000000 + 000000000000455DAE006887ED001543DC001543DC001543DC001543DC001543 + DC001543DC00455DAE0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000003F59B000193BAD004565CF005D7D + EA006082F2006082F2006082F2006082F2006082F2006082F200D9D7D600D3D1 + D000CDCBCA00516DCD006082F2006082F2006082F2006082F2006082F2006082 + F2005B7BE5003959C2001646E9003F59B000000000004C65BC006B8AF300CCD1 + E300E3E9FD00E2E8FD00E2E8FD00E2E8FD00E1E7FD00E1E7FD00E0E6FC00E0E6 + FC00E0E6FC00DFE6FC00DFE6FC00DFE6FC00DEE5FC00DEE5FC00DEE5FC00DDE4 + FC00EDF1FE006B8AF3000000000000000000000000007A93E4003F64E0004569 + E0004A6DE0004C6EE0004D6FE1004D6FE1004D6FE1004D6FE1004D6FE1004D6F + E1004D6FE1004D6FE1004D6FE1004D6FE1004D6FE1004D6FE1004C6EE000486B + E0004569E0004266DD004C64B700000000000000000000000000000000000000 + 0000000000004760B3006D8BF0001F4CE1001F4CE1001F4CE1001F4CE1001F4C + E1001F4CE1004760B30000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000415AB1005E7CE2005579F100486F + F000466DF000466DF000466DF000466DF000466DF000466DF000F1F0F000EFED + ED00ECEBEA003B5DCC00466DF000466DF000466DF000466DF000466DF000466D + F000486FF000587CF2002247C400415AB100000000004D67BE006B8AF300CED3 + E300E5EAFD00E5EAFD00E5EAFD00E4E9FD00E4E9FD00E4E9FD00E3E9FD00E3E9 + FD00E2E8FD00E2E8FD00E2E8FD00E1E7FD00E1E7FD00E1E7FD00E0E6FC00E0E6 + FC00EFF3FE006B8AF3000000000000000000000000007290F4006A8AF3006888 + F300708EF4007290F4007290F4007391F4007391F4007391F4005771CE00354A + 940032458D007391F4007391F4007391F4007290F4007290F4007290F4006E8D + F3006888F3006A8AF3005771C800000000000000000000000000000000000000 + 0000000000004A63B8006F8DF1002854E7002854E7002854E7002854E7002854 + E7002854E7004A63B8004A63B8004A63B8004A63B8004A63B800516BC7000000 + 000000000000000000000000000000000000425BB200597CF2005277F1005277 + F1005277F1005277F1005277F1005277F1005277F1005277F1004766CD004766 + CD004766CD004B6CDA005277F1005277F1005277F1005277F1005277F1005277 + F1005277F1005277F1004D68C400425BB200000000004E68BF006B8AF300CFD4 + E300E7ECFD00E6ECFD00E6ECFD00E6ECFD00E6EBFD00E6EBFD00E5EAFD00E5EA + FD00E5EAFD00E4E9FD00E4E9FD00E4E9FD00E3E9FD00E3E9FD00E3E9FD00E2E8 + FD00F0F3FE006B8AF3000000000000000000000000005872CA005872C9005872 + C9005872C9005872C9005872C9005872C9005872C9005872C9003C53A3005072 + E2000535D7005872C9005872C9005872C9005872C9005872C9005872C9005872 + C9005872C9005872C90093A8ED00000000000000000000000000000000000000 + 0000000000004F69C0007894F4003D66EF003D66EF003D66EF003D66EF003D66 + EF003C65EF004F69C0003656C2005579F1005378F1007592F4004F69C0000000 + 000000000000000000000000000000000000445DB5006C8BF3006C8BF3006C8B + F3006C8BF3006C8BF3006C8BF3006C8BF3006C8BF3006C8BF3006C8BF3006C8B + F3006C8BF3006C8BF3006C8BF3006C8BF3006C8BF3006C8BF3006C8BF3006C8B + F3006C8BF3006C8BF3007491F400445DB50000000000516BC2006D8CF300D3D7 + E400EBF0FD00EAEFFD00EAEFFD00EAEFFD00E9EEFD00E9EEFD00E9EEFD00E9EE + FD00E8EDFD00E8EDFD00E8EDFD00E8EDFD00E7ECFD00E7ECFD00E7ECFD00E6EC + FD00F2F5FE006D8CF30000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000425AAF004F73 + EB000538E3000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000506AC1007C97F400476EF000476EF000476EF000476EF000476E + F000466DF000506AC1003555C2005176F1005075F1007290F400506AC1000000 + 000000000000000000000000000000000000455EB6007A96F4007A96F4007A96 + F4007A96F4007A96F4007A96F4007A96F4007A96F4007A96F4007A96F4007A96 + F4007A96F4007A96F4007A96F4007A96F4007A96F4007A96F4007A96F4007A96 + F4007A96F4007A96F4007A96F400455EB60000000000526CC3007491F400D6D9 + E400EDF1FE00EDF1FE00EDF1FE00ECF0FE00ECF0FE00EBF0FD00EBF0FD00EBF0 + FD00EAEFFD00EAEFFD00EAEFFD00E9EEFD00E9EEFD00E9EEFD00E9EEFD00E8ED + FD00F4F7FE007491F40000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000004760B8005075 + F100053AEB000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000516BC200819BF5005075F1005075F1005075F1005075F1005075 + F1005075F100516BC2002A4DBF004169F0004068F0006B8AF300516BC2000000 + 0000000000000000000000000000000000004660B70086A0F50086A0F50086A0 + F50086A0F50086A0F50086A0F50086A0F50086A0F50086A0F50086A0F50086A0 + F50086A0F50086A0F50086A0F50086A0F50086A0F50086A0F50086A0F50086A0 + F50086A0F50086A0F50086A0F5004660B70000000000546DC4007491F400D8DB + E400F0F3FE00EFF3FE00EFF3FE00EFF3FE00EEF2FE00EEF2FE00EDF1FE00EDF1 + FE00EDF1FE00ECF0FE00ECF0FE00ECF0FE00EBF0FD00EBF0FD00EBF0FD00EAEF + FD00F4F7FE007491F40000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000004C65BD005075 + F100053AEB000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000536DC40088A2F6006485F3006485F3006485F3006485F3006485 + F3006384F300536DC4000F35B6001546EC001546EC00577BF200536DC4000000 + 0000000000000000000000000000000000005570CD00A3B6F500A0B4F700A0B4 + F700A0B4F700A0B4F700A0B4F700A0B4F700A0B4F700A0B4F700A0B4F700A0B4 + F700A0B4F700A0B4F700A0B4F700A0B4F700A0B4F700A0B4F700A0B4F700A0B4 + F700A0B4F700A0B4F7008798D6005570CD00000000005770C7007B97F4001B46 + D500254ED600274FD600274FD6002850D6002850D6002850D6002850D6002850 + D6002850D6002850D6002850D6002850D6002850D600274FD600274FD600214A + D5001B46D5007B97F40000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000004E68BF005075 + F100053AEB000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000546DC4008BA4F6006F8DF3006F8DF3006F8DF3006F8DF3006F8D + F3006E8DF300546DC400042BB0000538E5000538E5005075EF00546DC4000000 + 000000000000000000000000000000000000000000004963BA004963BA004963 + BA004963BA004963BA004963BA003D5BC300042EBC003B57B9004963BA004963 + BA004963BA004963BA003B57B900042EBC004963BA004963BA004963BA004963 + BA004963BA004963BA005670CE0000000000000000005871C800829CF5003E67 + F0005176F1005579F100577BF200597CF200597CF200597CF200597CF200597C + F200597CF200597CF200597CF200597CF200587CF200577BF2005579F1004A70 + F0003E67F000829CF50000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000516AC1005075 + F100053AEB000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000556EC6008FA7F6007995F4007995F4007995F4007995F4007995 + F4007995F400556EC600042AA9000434D3000434D3005073E900556EC6000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000004A64BB000430C4004760B300000000000000 + 000000000000000000004760B3000430C4000000000000000000000000000000 + 000000000000000000000000000000000000000000005872C90089A1F00093A9 + F2009DB0F2009FB2F400A0B3F400A1B4F400A1B4F400A1B4F400A1B4F400A1B4 + F400A1B4F400A1B4F400A1B4F400A1B4F400A0B3F400A0B3F4009FB2F40098AD + F20093A9F20089A1F00000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000005971C7005075 + F1001345EC000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000005770C8009DB1F3008CA5F6008CA5F6008CA5F6008CA5F6008CA5 + F6008CA5F600697ECB0003269B00042AAA000930B3005D78D6005770C7000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000516ABE002049D4004862BD004D66BD004D66 + BD004D66BD004D66BD004862BD002049D3000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000005972CB006A86 + E4006A86E4000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000647EDA0095A8E80097ADF70096ACF70096ACF70096ACF70096AC + F70096ACF700758AD4001A36940003269B002042B3005E78CF005874CF000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000536CC0006481E4000B39D4000434D3000434 + D3000434D3000434D3000B39D4006D88E3000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000093A8ED005872 + CA005872CA000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000093A8ED007086D2009DB2F70098AEF7009CB1F7009DB2F7009AAF + F70095ACF70096A9EB005E74BF0016349A004D6ACB00657BC5007C93E6000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000006680D9007489D400879FF200829DF500829D + F500829DF500829DF500879FF2007489D4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005872C9005872C9005872C9005872C9005872 + C9005872C9005872C9005872C9005872C900647EDB0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000031458E000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000002E3E + 79002A396C0090A1D600C8C8C800B6C3EC00667CC4003D559D0025356A002535 + 6A00243468003C5198006277BD00ABB9E500C3C3C30090A1D6002A396C002E3E + 7900000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000008196DC002F42 + 820056659A002F4282008196DC00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000DADADA00CECECE00C0C0C000C0C0C0009EACDC00273360002631 + 590026315900384987008D9DD300C0C0C000C0C0C000CECECE00D3D3D3000000 + 0000000000000000000000000000000000000000000000000000000000003B51 + 9F0003279F0022377D002F3F79003C56AA002F4CAF001F3FA9000F31A3000F31 + A3000F31A3001F3FA9002F4CAF003C56AA002F3F790022377D0003279F003B51 + 9F00000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000859AE000364C98004C5D99005F79CD003D5C + C4002447BD003D5CC4005F79CD00697CBD00364C9800859AE000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000002B3F800030458B0000000000000000000000 + 00000000000000000000000000004055A3007085D00000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000CED7F6002A3D7D0056669F004B5989002A3A + 73002A3A73007381AE005264A4002A3A73000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000005871 + C1001C368C00374986003F57A9001639AD001034AB002344B1003553B7003553 + B7003553B7002344B1001034AB001639AD003F57A900374986001C368C005871 + C100000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000A9B9EE005062A1006E81C300627CD300294EC600294E + C600294EC600294EC600294EC6004161CD006E81C3005062A10039509E000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000008196DB002E4187005366A6003F4E84007287D200000000000000 + 0000000000000000000090A3E30039487D003F4E84002E4187008196DB000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000004F65B600213783007181B600A3B4EB000000 + 000000000000354B97007281B300213783000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000008297 + DE003C4E8D003C58B6002244B6002849B8005C73C1009EA8C800CCCCCC006C6C + 6C00CCCCCC009EA8C8005D74C200294AB9002244B6003C58B6003C4E8D008297 + DE00000000000000000000000000000000000000000000000000000000000000 + 000000000000627ACE00465A9E006882DB004A6AD6003E61D3003E61D3002E53 + CF002E53CF002E53CF002E53CF003257D0005674D900748CDD006E82C600627A + CE00000000000000000000000000000000000000000000000000000000000000 + 0000364C980047578E005568AB003C58B800576CAF0030428500000000000000 + 0000000000000000000030468D005568AB004B65BB005568AB0047578E000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000002F428600324CA4004F5E9300000000000000 + 000000000000A5B6EC004F5E9300324CA4000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000D0D8F7003C4E + 91002348C300163DBE004B66C100DFDEDE00F5F5F500F8F8F800F9F9F900FAFA + FA00FAFAFA00FBFBFB00F8F8F800E2E2E2004D68C300163DBE002348C3003D50 + 9300D0D8F7000000000000000000000000000000000000000000000000000000 + 00005469B1008BA0E8005E7CE2005A6DB400445AA9004D67C0006F83C8007590 + EA004469E3003A60E1004E67BE00445DB200445AA9005A6DB4007388CF009FB0 + EA005469B100ABBBF00000000000000000000000000000000000000000000000 + 0000A8B7ED00495A96006A81CF00042DB6001C41BD005771C500BAC7F2000000 + 000000000000374B9400576FBE002045BE000E35B8006880CF004D5E9B000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000334689002440A30033468900000000000000 + 00000000000000000000334689001C399F000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000566FC400455C + A900113AC3004765CB00B1B4BB00E2E2E200F5F5F500F6F6F600F7F7F700F8F7 + F700F8F8F800F9F9F900F9F9F900FAFAFA00B7BAC1004967CD00113AC300455C + A900566FC40000000000000000000000000000000000000000004B66BF00435C + B4008F9FDA005878E0005B71BD009DAFED0000000000000000004860B5008299 + E7005B7DEC004E6EDD00455EB40000000000000000009DAFED00516AC600859C + E60092A3DB004761BA004B66BF00000000000000000000000000000000000000 + 000000000000455EB2006B7DB900042FBF00042FBF003C5DCC00465EB2000000 + 0000000000005267AE004161CE00042FBF004363CE007081BD00455EB2000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000465EB100364A8F002B49AB00364A8F00000000000000 + 000000000000364A8F00364A8F001D3CA5000000000000000000000000000000 + 00000000000000000000000000000000000000000000D1DAF7003F539C004463 + CA003156CF00A2AAC700E1E1E100EEEDED00D6D6D600F3F3F300F4F4F400F5F5 + F500F6F5F500F7F6F600F7F7F700F8F7F700E9E9E900A8B1CE003055D0004463 + CA003F539C00D1DAF70000000000000000000000000000000000455FB600A4B4 + E900708CE9006076C4005169BB00000000000000000000000000627CD500798F + DC006A89F2005471D500627CD5000000000000000000000000004E67C5006076 + C400708CE9006E82CB00455FB600000000000000000000000000000000000000 + 000000000000D1DAF70044589E002048CD000431C7000E39CA00485CA000899D + E300A9B9EF005772D1001740CB000431C7007189D70044589E00BDC9F3000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000394D9500394D95003350B300394D9500000000000000 + 0000000000003953AE00394D95001E3EAC000000000000000000000000000000 + 00000000000000000000000000000000000000000000556EC7004B68C700385E + DD009CA5C800E5E4E400E9E8E800EAEAEA00EBEAEA00E1E0E000EEEDED00EBEB + EB00EFEFEF00F1F0F000F1F1F100F2F1F100F3F3F300F1F0F000A5AED100385E + DD004B67C700556EC700000000000000000000000000000000004861B8008CA3 + EF004F74F100607EE0004A63BC00000000000000000000000000AEBDF200657A + C400839EF500586FBF00AEBDF200000000000000000000000000BFCCF5008DA1 + E800839EF500587CF2004861B800000000000000000000000000000000000000 + 0000000000000000000000000000778DD7002C55DE000536D9004D6FE100576D + BA005369B4000D3DDA000536D9002751DE00455DB00000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000003E53A1003E53A1004260C2003E53A100000000000000 + 0000000000004260C2003E53A1002143B8000000000000000000000000000000 + 000000000000000000000000000000000000000000004960B3004C6DDB003A61 + E300C8C9D000E7E6E600E6E6E600E6E5E500E7E6E600E8E7E700BEBEBE00D2D2 + D200D5D4D400EDECEC00EEEDED00EEEEEE00F0EFEF00F1F0F000CFD1D8003960 + E2005473D9004660B700000000000000000000000000000000004962B9008FA4 + EF005E7DE500516ABD0090A4EA00000000000000000000000000D2DBF8006076 + C20087A1F500576FBF00D2DBF800000000000000000000000000000000005970 + C0008CA1EC00849EF5004962B900000000000000000000000000000000000000 + 00000000000000000000000000005C71BD006886EA000E3FE200204EE5005A78 + DE00607BDA000538E2000A3CE3005E7EEA00758CDE0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000004157A7004157A7004A66C9004157A700000000000000 + 0000000000004A66C9004157A7002246BD000000000000000000000000000000 + 00000000000000000000000000000000000000000000455EB2005474E0004369 + E900E0E0E000EFEEEE00EDECEC00EAE9E900E9E8E800E7E6E6007B7979006A68 + 68007F7D7D00E9E8E800EAE9E900EBEAEA00ECECEC00EDECEC00DEDDDD004268 + E8005878E100455EB200000000000000000000000000000000004A63BA0092A8 + F0005971C4007790E2000000000000000000000000000000000000000000546C + BF0091A7F2005068BD0000000000000000000000000000000000000000007790 + E200697EC90091A7F2004A63BA00000000000000000000000000000000000000 + 00000000000000000000000000005570CC00768DD9004068EF00073BEA003560 + EE003A63EE00073BEA003963EE00778EDD000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000445CAD00445CAD00516ED000445CAD00000000000000 + 000000000000516ED000445CAD002449C4000000000000000000000000000000 + 000000000000000000000000000000000000000000004A64BB006E8BEE005A7D + F200E9E9E900F9F8F800F8F8F800F6F6F600F5F5F500F4F4F4009F9E9C009290 + 8E009F9D9B00EDECEC00EBEBEB00EAE9E900E7E6E600E6E5E500D7D6D600587C + F2007490EE004A64BB00000000000000000000000000000000004C65BC007A8D + D000000000000000000000000000000000000000000000000000000000004C65 + BC009AAEF1004C65BC0000000000000000000000000000000000000000000000 + 000000000000526CC9004C65BC0000000000000000005F7FE9006381E9006382 + E9006483E9006483E9006483E9006784EA006A87EA006484EE001A4AED001A4A + ED001A4AED002654EE006484EE006986EA006583E9006483E9006483E9006483 + E9006382E9006381E9004A64BB00000000000000000000000000000000000000 + 000000000000000000004963B9004963B900607CDC004963B900000000000000 + 000000000000607CDC004963B9003458D2000000000000000000000000000000 + 00000000000000000000000000000000000000000000526CC100819BEF006384 + F300DBDDE200FCFCFC00FBFBFB00FAFAFA00F9F9F900F9F8F800E0DFDF005856 + 5500DEDDDD00F3F3F300F2F1F100F1F0F000EEEDED00EDECEC00CCCDD2006183 + F20089A1F100526CC10000000000000000000000000000000000536ECA004F6A + C50000000000000000000000000000000000000000000000000000000000536E + CA009DB0F200536ECA0000000000000000000000000000000000000000000000 + 00000000000000000000536ECA000000000000000000587CF2001949ED001D4D + ED002050ED002150ED002150ED002352ED002352ED002352ED002352ED002352 + ED002352ED002352ED002352ED002352ED002251ED002150ED002150ED001F4F + ED001D4DED001949ED004B65BC00000000000000000000000000000000000000 + 000000000000000000004C66BD004C66BD006782E0004C66BD00000000000000 + 0000000000006782E0004C66BD003C60D7000000000000000000000000000000 + 000000000000000000000000000000000000000000005F79D2008DA1E6006D8C + F300BEC5DE00FAFAFA00FDFDFD00FDFCFC00FCFCFC00FCFBFB00FBFAFA007674 + 7300F9F9F900F8F7F700F7F7F700F6F6F600F4F4F400F0EFEF00B7BDD6006B8A + F30092A5E7005F79D20000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000546ECB006177C5006177 + C5007893ED006177C5006177C5005C73C4000000000000000000000000000000 + 000000000000000000000000000000000000000000005B7EF2001F4FED002453 + EE002957EE002A57EE002B58EE002D5AEE002D5AEE002D5AEE002D5AEE002D5A + EE002D5AEE002D5AEE002D5AEE002D5AEE002C59EE002B58EE002A57EE002755 + EE002453EE001F4FED004C66BD00000000000000000000000000000000000000 + 000000000000000000004D67BE004D67BE006E88E2004D67BE00000000000000 + 0000000000006E88E2004D67BE004365DA000000000000000000000000000000 + 00000000000000000000000000000000000000000000919FD0005C74C500A6B8 + F3009FB3F700C5CADA00EFEFEF00FFFFFF00FFFFFF00FFFEFE00FEFEFE008785 + 8400FEFEFE00FDFDFD00FDFDFD00FCFCFC00ECECEC00C4C9D9009DB2F600A3B5 + F3005D75C5008A97C60000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000556FCC005069C0005069 + C000A9BAF3005069C0005069C0005069C0000000000000000000000000000000 + 000000000000000000000000000000000000000000004E68BF004E68BF004E68 + BF004E68BF004E68BF004E68BF004E68BF005870C300829AEB00426AF000426A + F000426AF0004D72F100849CEE005870C3004E68BF004E68BF004E68BF004E68 + BF004E68BF004E68BF00546FCB00000000000000000000000000000000000000 + 000000000000000000004F69C0004F69C000879EE9004F69C000000000000000 + 000000000000879EE9004F69C0005171DE000000000000000000000000000000 + 000000000000000000000000000000000000000000007F7E7D008390C10092A3 + DD0091A8F600B2C1F300C2C3C700FFFFFF00FFFFFF00FFFFFF00FFFFFF009D9B + 9A00FFFFFF00FEFEFE00FEFEFE00EBEBEB00C0C1C500B1C1F3008DA5F50091A2 + DD00818FBE008785840000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000516A + C100B0C0F600516AC10000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000005975D1007B90DA007592F4004D72F1007794 + F4007995F4004D72F1007592F4007D92DD000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000506AC100506AC1009AAEF0005D75C600000000000000 + 0000D3DBF9009AAEF000506AC1005977DF000000000000000000000000000000 + 00000000000000000000000000000000000000000000B2B0AF009A9CA6005E76 + C70096ACF700A3B6F800B8C4EC00E5E5E500FBFBFB00FFFFFF00FFFFFF00D7D6 + D600FFFFFF00FFFFFF00FBFBFB00E5E5E500B7C3EC00A0B4F70092A9F6005E76 + C7009498A100B5B4B30000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000092A7EC00526B + C200A0B3F400526BC20092A7EC00000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000006278C800869EF2005F81F2006989F300A1B3 + EE00A3B3ED00567AF2005C7FF200859EF20092A5EC0000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000516BC200516BC200A3B2E7008396D900000000000000 + 0000607BD700A3B2E700516BC200607DE1000000000000000000000000000000 + 00000000000000000000000000000000000000000000BDBCBB00A3A1A0007978 + 77007B90D300BAC8F600A9BBF800C9D5FB00D1D8F200D0D3DE00CECECE006D6D + 6D00CECECE00D0D3DE00D1D8F200C8D4FB00A5B8F800B8C6F6007B90D3007372 + 71009B999800B5B4B30000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000009FB1F000BDCAF6009FAE + E3007287CF00A6B4E400CAD5F800798DD2000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000007A92E4008CA4F4006D8CF3006A8AF30099ABEA00556F + CB00556FCB00859FF5006A8AF3006D8CF3007389D3007A92E400000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000546DC400546DC400718AE0007388CF00C9D3F500C9D3 + F500B2C0EC00718AE000546DC4006E89E4000000000000000000000000000000 + 00000000000000000000000000000000000000000000B4B3B200908E8D007D7B + 7A006C7BAA00758AD200B8C6F200B8C7F900C1CEFA00CED8FB00D5DEFC00D5DE + FC00D5DEFC00CDD8FB00BFCDFA00B6C6F900B6C4F200748AD200707DAE007371 + 700089888700B1B0AF0000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000627DD8009AAAE1005973 + CF00D3DBF9005973CF00A4B2E300C0CBF1000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000005971C80086A0F5007592F4007C97F4006B81CC009FB1 + F000AEBEF300A7B9F5007F9AF5007592F40092A7EE005D75C800D3DBF9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000556EC500556EC500000000009FB1F000556EC500556E + C5005D78D50000000000556EC5007892E6000000000000000000000000000000 + 00000000000000000000000000000000000000000000A9A8A600898887006E6C + 6B008C8B8B00919BBC00637BCB00C6D1F700C0CEFA00BECCFA00BAC9FA00BAC9 + FA00B7C7F900BCCAFA00BECCFA00C4D0F700627ACB0097A1C200989796006F6E + 6D00817F7E00ADABAA0000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000566FC7007085CF00D3DB + F90000000000D3DBF9007488D100C7D1F6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000006983DD007E92DA007F9AF5007F9AF5009AAFF7005D78D5000000 + 0000000000008DA0DF009CB1F7007F9AF50094ABF6008195DC00627DD9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000566FC600566FC6000000000000000000000000000000 + 00000000000000000000566FC6008AA0EB000000000000000000000000000000 + 00000000000000000000000000000000000000000000B3B3B300A19F9D00CBCA + CA00F2F1F100DEDEDE00B9B9B9007D808B008891B2006B81D3005771C8005771 + C8005771C8006681D8008A93B4007D808B00A8A8A800D1D1D100F2F2F200D6D5 + D500A9A8A6009F9F9F0000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000647EDA00B1BEE8005B76 + D200D3DBF9005B76D200AAB8E800A5B5ED000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000647EDA0090A3E4009DB2F70093AAF600AABCF7008497D900000000000000 + 0000000000007C93E5008497D900A9BBF7008BA4F60097ADF70093A6E8000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000647EDA008B9FE2005B76D200AFBFF300000000000000 + 0000000000005B76D2008C9EDF00A2B2E7000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000B4B4B400AAA9 + A700E4E4E400D2D1D100BAB9B900A09F9D00A0A09F0000000000000000009896 + 94000000000000000000B4B4B400A09E9D00B1B0B000C9C9C900E1E0E000B1AF + AE00A0A09F000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000009FB2F000D3DCF900B2BF + E9007B8FD400AEBCE700CDD7F800798ED5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00005B76D2008195D900AEBDF100A0B4F700A3B4ED005A74CF00000000000000 + 000000000000000000005A74CF00A1B1EC00ACBDF700A2B2EC00778CD5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000C1CDF600BFCBF200A2B1E600778BD3005872C9005872 + C9005872C900A0AFE300BCC9F2006F84D0000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00009F9D9B00A9A7A500A1A09E00C8C8C800000000000000000092918F009896 + 940092918F000000000000000000D5D5D5009F9D9B00A9A7A5009F9D9B00C8C8 + C800000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000758AD300BFCA + EF00D7DFF900C1CBEF00758AD3006B85DE000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000007C93E6005C75CC00A5B6EF006F84D0009FB2F000000000000000 + 000000000000000000009FB2F0006F84D0008296DA005872CA00879CE9000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000677ECE00A0B0E400C8D3F600CAD4F500CAD4 + F500CAD4F500A6B5E8006F85D00093A8ED000000000000000000000000000000 + 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 + 000000000000000000000000000000000000000000000000000000000000DCDC + DC00DADADA00C9C9C900C7C7C700C7C7C700C0C0C000C0C0C000A4B1DD00333F + 6900303A62004656900000000000000000000000000000000000000000000000 + 00000000000000000000DADADA00C1C1C1002C3C720025315900253159002531 + 590025315900253159002531590025315900C1C1C100C8C8C800DADADA000000 + 0000000000000000000000000000000000000000000000000000798CD2001926 + 54001F2E65002233700024367500243675002436750024367500243675002436 + 7500243675002436750024367500243675002436750024367500243675000000 + 0000000000000000000000000000000000000000003200000052000000520000 + 0052000000520000005200000052000000520000005200000052000000520000 + 0052000000520000005200000052000000520000005200000052000000520000 + 00520000005200000052000000320000001E0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000D5DCF600384C8A00445698002D49 + A7004D67C1006780D300627ACA00000000000000000000000000000000000000 + 00000000000000000000000000000000000027387100425CB10013339E001333 + 9E0013339E0013339E001F3DA300425CB1000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000001A2755002231 + 6A003655BD001C41BA00042CB300042CB300042CB300042CB300042CB300042C + B300042CB300042CB300042CB300042CB300072FB400193EB9003656C200273A + 7D00667DCD00000000000000000000000000031D3D85093C7BFF093C7BFF093C + 7BFF093C7BFF093C7BFF093C7BFF093C7BFF093C7BFF093C7BFF093C7BFF093C + 7BFF093C7BFF093C7BFF093C7BFF093C7BFF093C7BFF093C7BFF093C7BFF093C + 7BFF093C7BFF093C7BFF010D1D3A000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000394D8C0043569800435CB0004E69 + C1006982D500768FE2004962B200000000000000000000000000000000000000 + 000000000000000000000000000000000000293A7500435DB60003279E000327 + 9E0003279E0003279E001334A300435DB6000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000001B2957002333 + 6D003555BF00042DB700042DB700042DB700042DB700042DB700042DB700042D + B700042DB700042DB700042DB700042DB700042DB700042DB7003556C500AAAF + BE00293D80000000000000000000000000000C458BFF1D54ABFF1E54A9FF1E54 + A9FF1E54AAFF1E54AAFF1E54AAFF1E54AAFF1E54AAFF1E54AAFF1E54AAFF1E54 + AAFF1E54ABFF1E54ABFF1E54ABFF1E54ABFF1E54ABFF1E54ABFF1D54ABFF1D54 + ABFF1D54ABFF1C54AEFF0D468CFF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000D5DCF60044579900425BAF00324DAA008196 + DB0097AAE900889FED004961B200000000000000000000000000000000000000 + 0000000000000000000000000000000000002C3D7B00435EBB000328A4000328 + A4000328A4000328A4001336AA00435EBB000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000001D2A5A002435 + 70003656C300042EBB00042EBB00042EBB00042EBB00042EBB00042EBB00042E + BB00042EBB00042EBB00042EBB00042EBB00042EBB00042EBB003658C800B6BB + C8002A3E84000000000000000000000000000F4791FF14439DFF14439DFF1544 + 9EFF15449EFF15449EFF15449EFF15449EFF15449EFF15449EFF15449EFF1544 + 9EFF15449EFF15449EFF15449EFF15449EFF15449EFF15449EFF15449EFF1544 + 9EFF15449EFF3E8AD8FF0C458BFF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000D5DCF6003E508F0046589A00314CA9005670C4008297DB00AFBF + F3008DA5F400607ACD00D8E0F800000000000000000000000000000000000000 + 000000000000000000000000000000000000314486004361C500042CB100042C + B100042CB100042CB1001439B6004361C5000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000001F2D5F002839 + 77003658C9000430C3000430C3000430C3000430C3000430C3000430C3000430 + C3000430C3000430C3000430C3000430C3000430C3000430C3003559CF00BEC3 + D1002E438D000000000000000000000000000F4792FF15459FFF1546A0FF1546 + A0FF1647A1FF1647A1FF1647A1FF1647A1FF1647A1FF1647A1FF1647A1FF1647 + A1FF1647A1FF1647A1FF1647A1FF1647A1FF1647A1FF1647A1FF1647A1FF1647 + A1FF1647A1FF1D55AFFF0C458BFF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000003F519100475A9C00435CAF005771C5008297DB00A6B6EB00849E + F2005C76CE004C63AF0000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000033478C004362C900042DB700042D + B700042DB700042DB700143BBC004362C9000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000203063002A3B + 7B00375ACD000633C8000633C8000633C7000633C7000633C7000633C7000633 + C7000633C7000633C7000633C7000633C7000633C8000633C800375BD300C3C8 + D600314691000000000000000000000000000F4892FF1749A3FF184CA6FF194D + A7FF1A4FA9FF1A4FA9FF1A4FA9FF1A4FA9FF1A4FA9FF1A4FA9FF1A4FA9FF1A4F + A9FF1A4FA9FF1B4FA9FF1A4FA9FF1A4FA9FF1A4FA9FF1A4FA9FF1A4FA9FF1A4F + A9FF1B51ABFF448EDAFF0C458BFF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D5DCF700475A9C00425BAF00324DAA008297DB00A8B8EC00A8B9F2005E79 + CF004F65B000D8E0F80000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000364A91004363CF00042FBE00042F + BE00042FBE00042FBE00143CC3004363CF000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000213164002B3D + 7E003D5FD1000F3BCD00103CCE00123ECF00123ECF00123ECF00123ECF00123E + CF00123ECF00123ECF00123ECF00123ECF00103CCE000F3BCE003D61D700C6CB + DA00324894000000000000000000000000000F4893FF1A4EA8FF1B51ABFF1C54 + AEFF1E57B1FF1E57B1FF1E57B1FF1E57B1FF1E57B1FF1E57B1FF1E57B1FF1E57 + B1FF1E57B1FF1E57B1FF1E57B1FF1E57B1FF1E57B1FF1E57B1FF1E57B1FF1E57 + B1FF1E57B1FF4C92DCFF0B448AFF000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000000000000D3D3 + D300485584004B63B4004A65C000758CD800ABBBF2008FA6F400607BD100D8E0 + F80000000000000000000000000000000000000000003B519C003B519C003B51 + 9C003B519C003B519C003B519C003B519C003B519C004366D8000432CB000432 + CB000432CB000432CB00143FCE004366D8003B519C003B519C003B519C003B51 + 9C003B519C003B519C003B519C004B63BA00000000000000000025356A002E41 + 8400496BDA00214BD900244ED9002750D9002750D9002750D9006985E5006985 + E5006985E5002750D9002750D9002750D900244ED900204AD800486BDF00CFD4 + E400364D9C00000000000000000000000000104894FF1A4EA8FF1B52ACFF1C55 + AFFF1E58B2FF1E58B2FF1E58B2FF1E58B2FF1E58B2FF1E58B2FF1E58B2FF1E58 + B2FF1E58B2FF1E58B2FF1E58B2FF1E58B2FF1E58B2FF1E58B2FF1E58B2FF1E58 + B2FF1E58B2FF1E58B2FF0B448AFF000000000000000000000000000000000000 + 0000A2A2A2007A7978006B6969006A6867006B6969007A797800C5C5C5007371 + 710072737D005366A8007088D7007F96E30089A2F400667FD300526AB5000000 + 000000000000000000000000000000000000000000004F6ED500516FD5005270 + D6005270D6005270D6005270D6005270D6005370D600496CDE000E3CD4000E3C + D4000E3CD4000E3CD400113ED4004A6DDF005270D6005270D6005270D6005270 + D6005270D6005270D600506ED4003E55A300000000000000000027366E003044 + 88004E6FDE002A53DE002E57DF00325ADF00325ADF005878E500112B8400112B + 8400112B8400325ADF00325ADF00325ADF002E57DF002A53DE004F72E400D3D8 + E8003951A000000000000000000000000000104894FF1A4EA8FF1B52ACFF1C55 + AFFF1E58B2FF1E58B2FF1E58B2FF1E58B2FF1E58B2FF1E58B2FF1E58B2FF1E58 + B2FF1E58B2FF1E58B2FF1E58B2FF1E58B2FF053D82FF053D82FF0D4187FF053D + 82FF053D82FF053D82FF053D82FF03254F9B000000000000000000000000A3A2 + A200AAA9A900DAD9D900EDEDEC00E7E7E700EBEBEB00D8D7D60078767500706E + 6D007D7B7A005567A300637AC4007B95EB00647ED400546CB700D8E0F8000000 + 00000000000000000000000000000000000000000000476BE300244FDD002852 + DE002953DE002953DE002953DE002953DE002A53DE00224DDD001C48DC001C48 + DC001C48DC001C48DC001C48DC00224DDD002953DE002953DE002953DE002953 + DE002953DE002852DE00496DE3004058AA000000000000000000283870003246 + 8C005475E200335BE300385FE3003C62E3003C62E3005268B000607FE8007792 + EC007792EC00607FE8003C62E3003C62E300385FE300325BE3005476E700D6DB + EC003B52A500000000000000000000000000114995FF1A4EA8FF1C53ADFF1D56 + B0FF1F59B3FF1F59B3FF1F59B3FF1F59B3FF1F59B3FF1F59B3FF1F59B3FF1F59 + B3FF1F59B3FF1F59B3FF1F59B3FF1F59B3FF1C54AEFF3D5978FF6C715CFF3458 + 88FF1C54AEFF1C54AEFF1A4FA9FF053D82FF000000008C8B8B00A7A5A500ECEB + EB00BFBDBC00AAA8A700A09E9D009A9897009F9D9C00A8A6A500CFCECD00E6E5 + E500A4A3A200BABABA009C9EAD006C80C200D8E0F80000000000000000000000 + 000000000000000000000000000000000000000000005175ED00325CEA003760 + EA003760EA003760EA003760EA003760EA003760EA003760EA003760EA003760 + EA003760EA003760EA003760EA003760EA003760EA003760EA003760EA003760 + EA003760EA003760EA00577AEE00465FB50000000000000000002B3B7500354A + 9400607FE800446AEA004A6FEB004F73EB004F73EB0042548F0042548F004F73 + EB0042548F0042548F004F73EB004F73EB004A6FEB004369EA006081EE00DFE4 + F5003F58AD00000000000000000000000000114A96FF194FA9FF1C53ADFF1D57 + B1FF1F5AB4FF1F5AB4FF1F5AB4FF1F5AB4FF1F5AB4FF1F5AB4FF1F5AB4FF1F5A + B4FF1F5AB4FF1F5AB4FF1F5AB4FF1F5AB4FF1C54AEFF3F463CFF32372CFF3B45 + 42FF1A4FA9FF1A4FA9FF1A4FA9FF053D82FF00000000A2A1A000EDECEC00D1CF + CF00A09E9D00B1B1B000BEBDBC00C3C2C200C2C2C200B6B5B400AFADAC00CAC8 + C800E6E5E50087858400A19F9D00D5D5D3000000000000000000000000000000 + 000000000000000000000000000000000000000000005579F1003E67EF00446B + EF00446BEF00446BEF00446BEF00446BEF00446BEF00446BEF00446BEF00446B + EF00446BEF00446BEF00446BEF00446BEF00446BEF00446BEF00446BEF00446B + EF00446BEF00446BEF005C7FF2004963BA0000000000000000002D3E7800384D + 97006685EC004C71EF005377EF00597CF000597CF00044569100364B90008BA3 + F400364B900044569100597CF000597CF0005377EF004B70EF006686F100E3E9 + FA00415BB100000000000000000000000000114A97FF1A4FA9FF1D54AEFF1E58 + B2FF205BB5FF205BB5FF205BB5FF205BB5FF205BB5FF205BB5FF205BB5FF205B + B5FF205BB5FF205BB5FF205BB5FF205BB5FF1C54AEFF43586CFFD3D6B6FF3956 + 7BFF1A4FA9FF1A4FA9FF1A4FA9FF053D82FF00000000EDEDED00D7D6D500B4B2 + B100B9B8B700B9B8B700B7B6B500B7B7B600BCBABA00C1C0C000A19F9E00AEAC + AB00CFCECD0088868500C8C8C800000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000597CF2004B71F1005277 + F1005277F1005277F1005277F1005277F1005277F1005277F1005277F1005277 + F1005277F1005277F1005277F1005277F1005277F1005277F1005277F1005277 + F1005277F1005277F1006183F2004A64BB0000000000000000002E407A003A50 + 9A006B89EE005277F1005B7EF2006384F3006384F300394D91003B57B400223C + 90003B57B400394D91006384F3006384F3005B7EF2005277F1006C8BF300E6EC + FD00445DB400000000000000000000000000114B97FF1A50AAFF1D55AFFF1E59 + B3FF205CB6FF205CB6FF205CB6FF205CB6FF205CB6FF205CB6FF205CB6FF205C + B6FF205CB6FF205CB6FF205CB6FF205CB6FF5495DEFF3786D5FF327DCEFF327D + CEFF327DCEFF327DCFFF2D77C4FF032F65C788878700D9D7D700ADABAA00B2B1 + B100C1C0BF00C3C3C200C3C2C200C0C0BF00BFBFBF00BBBABA00BCBCBB00B4B3 + B200A8A6A500DCDBDB0088878700000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000587CF2005479F1006183 + F2006888F3006888F3006888F3006A8AF3006E8DF3006D8CF3006D8CF3006D8C + F3006D8CF3006D8CF3006D8CF3006E8DF3006A8AF3006989F3006888F3006888 + F3006686F3006183F2006082F2004C66BD00000000000000000030417B003C51 + 9C007792EF006283F2006C8BF3007592F4007592F4007592F400294190002941 + 9000294190007592F4007592F4007592F4006B8AF3006183F2007693F400E6EC + FD00465FB700000000000000000000000000124B98FF1A4FA9FF1D55AFFF1F59 + B3FF215CB6FF215CB6FF215CB6FF215CB6FF215CB6FF215CB6FF215CB6FF215C + B6FF215CB6FF215CB6FF215CB6FF215CB6FF215CB6FF215CB6FF215CB6FF215C + B6FF215CB6FF6EA7E8FF0B4489FF0000000085848300D0CECD00A3A1A000C4C3 + C300CECDCD00D0D0D000D1D0CF00CAC9C900C7C6C600C2C2C000B6B4B400BCBC + BC009F9D9C00EBEBEB0085848300000000000000000000000000000000000000 + 000000000000000000000000000000000000000000005A7BE9006987EA006E8A + EA00728EEA00738EEB00738EEB00748EEB007994EB00849EF5007B97F4007B97 + F4007B97F4007B97F4007C97F4008CA5F600748EEB00738EEB00738EEB00728E + EA00718DEA006E8AEA005E7EE9004D67BE00000000000000000031427C003D53 + 9C007C96F0006A8AF3007491F4007E99F5007E99F5007E99F5007E99F5007E99 + F5007E99F5007E99F5007E99F5007E99F5007491F4006888F3007C97F400E6EC + FD004761B800000000000000000000000000124C99FF1A50AAFF1D56B0FF1F59 + B3FF215DB7FF215DB7FF215DB7FF215DB7FF215DB7FF215DB7FF215DB7FF215D + B7FF215DB7FF215DB7FF215DB7FF215DB7FF215DB7FF215DB7FF215DB7FF215D + B7FF215DB7FF70A9EAFF0B4489FF000000008C8A8800CBCAC9009E9D9C00CBCA + CA00D8D7D700DBDBDB00DDDDDD00D7D7D600CFCFCE00C7C6C600B9B7B600B8B8 + B8009A989700E7E7E6008C8A8800000000000000000000000000000000000000 + 000000000000000000000000000000000000000000004E68BF004E68BF004E68 + BF004E68BF004E68BF004E68BF004E68BF004E68BF007391F40087A1F50087A1 + F50087A1F50087A1F5008BA4F600829DF5004E68BF004E68BF004E68BF004E68 + BF004E68BF004E68BF004E68BF00546FCB00000000000000000032437D003E53 + 9E007F99F000708EF4007B97F400849EF500849EF500849EF500849EF500849E + F500849EF500849EF500849EF500849EF5007A96F4006F8DF300819BF500E6EC + FD004862B900000000000000000000000000134C99FF2661B5FF3071C2FF3479 + C9FF377DCDFF377DCDFF377DCDFF377DCDFF377DCDFF377DCDFF377DCDFF377D + CDFF377DCDFF377DCDFF377DCDFF377DCDFF377DCDFF377DCDFF377DCDFF377C + CDFF387ECEFF2360B9FF0B448AFF000000008F8D8D00D1D0CF00A4A2A100D2D2 + D100E7E7E700EDEDED00F0F0F000ECEBEB00E4E4E400DADADA004863C0004D68 + C1004D68C2004D68C2004D68C2004D68C2004D68C2004C66C1004964C1000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000506AC1007290F400A2B6F800A3B6 + F800A3B6F800A3B6F8009FB3F700859FF5000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000034447F004056 + A00088A0F1007B97F40086A0F50091A8F60094ABF60095ACF70095ACF70095AC + F70095ACF70095ACF70094ABF60091A8F600849EF5007A96F40089A2F600E6EC + FD004A64BB00000000000000000000000000134C9AFF2D6ABCFF377ACBFF3B81 + CFFF3D84D2FF3D84D2FF3D84D2FF3D84D2FF3D84D2FF3D84D2FF3D84D2FF3D84 + D2FF3D84D2FF3D84D2FF3D84D2FF3D84D2FF3D84D2FF3D84D2FF3D84D2FF3D84 + D2FF3D84D2FF74ABEBFF0B448AFF0000000093929100DCDADA00AFADAD00C5C5 + C400EBEBEB00F0F0F000F6F6F600F2F2F200E8E8E800DFDEDE00607EE4005D7C + E2005E7DE3005E7DE3005E7DE3005E7DE3005E7DE3005D7CE2006B87E5000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000516BC2007693F400B0C0F900B1C1 + F900B1C1F900B1C1F900ABBDF8008AA3F6000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000034457F004156 + A1008DA4F2007F9AF50088A2F60094ABF60097ADF70098AEF7009AAFF7009AAF + F70099AFF70098AEF70097ADF70094ABF60087A1F5007E99F5008DA5F600E6EC + FD004C65BC00000000000000000000000000134D9BFF1E57B1FF6AA0E3FF70A6 + E7FF225FB9FF74ABEBFF74ABEBFF225FB9FF74ABEBFF74ABEBFF225FB9FF74AB + EBFF74ABEBFF225FB9FF74ABEBFF74ABEBFF225FB9FF74ABEBFF74ABEBFF225F + B9FF74ABEBFF74ABEBFF0C458AFF00000000ACACAC00EAE9E900C6C4C400A7A5 + A400EBEBEB00F0F0F000F6F6F600F3F3F300E9E9E900DFDFDF00728DEA0094A9 + ED0096AAEC0096AAEC0096AAEC0096AAEC0096AAEC0093A8ED007B95EB000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000526CC3007A96F400BDCBFA00BDCB + FA00BDCBFA00BDCBFA00B5C5F9008FA7F6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000354681004157 + A2008FA6F100819BF50089A2F60093AAF60096ACF70097ADF70098AEF70098AE + F70098AEF70097ADF70095ACF70093AAF60087A1F5007F9AF5008FA7F600E6EC + FD004D66BD000000000000000000000000001A529AFF7FB5F2FF337ECFFF3481 + D1FF3786D5FF3786D5FF3786D5FF3786D5FF3786D5FF3786D5FF3786D5FF3786 + D5FF3786D5FF3786D5FF3786D5FF3786D5FF3786D5FF3786D5FF3786D5FF3786 + D5FF3786D5FF7FB5F2FF0C458BFF0000000000000000BFBEBD00F2F2F200D7D6 + D600A8A7A600CDCCCC00E6E6E600E9E9E900DDDDDD00C3C2C100B3B1B000D1CF + CF00ECEBEB00ADACAC0000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000536DC5007C97F400CBD6FB00CDD8 + FB00CDD8FB00CDD8FB00C0CEFA0093AAF6000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000364882004156 + 9D006984E30097ADF7009AAFF7009DB2F7009EB3F7009FB3F7009FB3F7009FB3 + F7009FB3F7009EB3F7009EB3F7009DB2F70099AFF7009CB0F3007B8FD500E6EC + FD004F69C0000000000000000000000000000D468BFF1A4FA9FF1A4FA9FF1A4F + A9FF1A4FA9FF1A4FA9FF1A4FA9FF1A4FA9FF1A4FA9FF1A4FA9FF1A4FA9FF1A4F + A9FF1A4FA9FF1A4FA9FF1A4FA9FF1A4FA9FF1A4FA9FF1A4FA9FF1A4FA9FF1A4F + A9FF1A4FA9FF0C458BFF010D1C3800000000000000009F9E9D00C7C6C500F2F2 + F200C6C4C400AFADAD00A4A2A1009E9C9C00A3A1A000ADABAA00D7D6D500EDEC + EC00C6C5C4000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000546EC5007995F400C7D3FB00CCD7 + FB00CDD8FB00CAD5FB00B7C7F9008EA6F6000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000004459A7003D4F + 91005366A900506AC100506AC100506AC100506AC100506AC100506AC100506A + C100506AC100506AC100506AC100506AC100506AC100506AC1006E82CB00E6EC + FD005069C000000000000000000000000000031C3B730D468BFF0D468BFF0D46 + 8BFF0D468BFF0D468BFF0D468CFF0D468CFF0D468CFF0D468CFF0D478CFF0D46 + 8CFF0D468CFF0D468CFF0D468CFF0D468CFF0D468CFF0D468CFF0D468CFF0D46 + 8CFF0D468CFF0D468CFF00000000000000000000000000000000A09F9F00C5C3 + C200EAE9E900DCDADA00D1D0CF00CBCAC900D0CECD00D9D7D700F0F0F000C4C3 + C100A09F9F000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000556FC6006F8DF300B2C2F900BECC + FA00C0CEFA00B6C6F900A2B6F800829CF5000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000B9C6F2003B4F + 950097A0C200C9D0E900E6ECFD00E6ECFD00E6ECFD00E6ECFD00E6ECFD00E6EC + FD00E6ECFD00E6ECFD00E6ECFD00E6ECFD00E6ECFD00E6ECFD00E6ECFD00CCD3 + F000506AC3000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000B0AFAF00A19F9F00A9A7A500B0AEAC00A9A7A500A19F9F00000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000005A76D2005771C8005771C8005771 + C8005771C8005771C8005771C8005771C8000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000110000001C0000002E0000002E0000002E0000002E0000002E0000 + 002E0000002E0000002E0000002E0000002E0000002E0000002E0000001C0000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000101020000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000005000000090000000C0000 + 000F00000016000000190000001D00000024000000260000002A0000002A0000 + 002A0000002A0000002A0000002A0000002A00000024000000200000001D0000 + 0016000000130000000F00000009000000060000000000000000000000000000 + 00000000000000000000339F70FF339F70FF339F70FF339F70FF339F70FF339F + 70FF339F70FF339F70FF339F70FF339F70FF339F70FF339F70FF000E0B120000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000003B2A9C75FF2A9C75FF2A9C75FF0000003E0000 + 003B000000330000002800000017000000140000000E0000000B000000080000 + 000300000002000000000000000000000000000000060000000D000000120000 + 001800000024A5A5A5E6CECECEFFE7E7E7FFE7E7E7FFE7E7E7FFE7E7E7FFE7E7 + E7FFE7E7E7FFE7E7E7FFE7E7E7FFE7E7E7FFE7E7E7FFE7E7E7FFCCCCCCFF2525 + 254D0000001D000000180000000D000000090000000000000000000000000000 + 0000000000000000000032A072FF12BC8EFF12BC8EFF12BC8EFF12BC8EFF12BC + 8EFF12BC8DFF12BC8EFF12BC8DFF12BC8EFF3CD7A7FF32A172FF000E0B120000 + 0000000000000000000000000000000000000000003200000052000000520000 + 0052000000520000005200000052000000520000005200000052000000520000 + 0052000000520000005200000052000000520000005200000052000000520000 + 00520000005200000052000000320000001E0000000000000000000000000000 + 000000000000040F0B190000000035CD98FF15B081FF38D19BFF0D34276F0000 + 0024000000200000001800000014000000100000000900000006000000040000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000F0F0F17B3B3B3EFCECECEFFE4E4E4FFE4E4E4FFE4E4E4FFE3E3E3FFE3E3 + E3FFE3E3E3FFF2F2F2FFD4DDD9FFE2E2E2FFE1E1E1FFEFEFEFFFCCCCCCFF5B5B + 5B76000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000031A172FF12BD8EFF12BC8EFF12BD8EFF12BC8EFF12BD + 8EFF12BC8EFF12BD8EFF12BD8EFF12BD8EFF3CD7A7FF31A172FF000E0B120000 + 0000000000000000000000000000000000000000001E131313EF121212EF1111 + 11EF111111EF111111EF111111EF111111EF111111EF111111EF111111EF1111 + 11FD111111FD111111EF111111EF111111EF111111EF111111EF121212EF1212 + 12EF131313EF141414EF111111B6000000000000000000000000000000000000 + 00000209060F000000002A9C75FF13B082FF13B082FF17B687FF259771F1030C + 0914000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000033333349C2C2C2FCD5D5D5FFE4E4E4FFF3F3F3FFF3F3F3FFF3F3F3FFF3F3 + F3FFE3E3E3FF5DB591FFBFD7CDFFF3F3F3FFF2F2F2FFEDEDEDFFD5D5D5FF8383 + 83AE000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000030A273FF11C090FF0DCB95FF0CCA94FF0DCB94FF0CCB + 95FF0CCB94FF0CCB95FF0CCA95FF0CCB95FF3CD7A7FF30A273FF000E0B120000 + 000000000000000000000000000000000000000000003B3B3BFF3C3C3CFF3C3C + 3CFF3C3C3CFF3C3C3CFF3C3C3CFF3C3C3CFF3C3C3CFF3C3C3CFF3C3C3CFF3C3C + 3CFF3C3C3CFF3C3C3CFF3C3C3CFF3D3D3DFF3D3D3DFF3D3D3DFF3D3D3DFF3D3D + 3DFF3D3D3DFF3D3D3DFF1B1B1BF6000000000000000000000000000000000000 + 00002A9C75FF32D59FFF14B183FF10CF9EFF10CF9DFF12C191FF31D39DFF23A0 + 78F60D3225520000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00008C8C8CC1CFCFCFFFE8E8E8FF6CC0A0FF38B284FF39B083FF3BB083FF3AAE + 82FF78C0A4FF3EAC80FF3BAC81FF3DAB7FFF3DAA7DFFD1DFD8FFE9E9E9FFACAC + ACE6000000000000000000000000000000000000000000000000000000000000 + 000000000000000000002DA575FF11C291FF0CCD97FF0DCD97FF0CCC96FF0CCC + 96FF0CCC97FF0DCC96FF0DCC96FF0DCC97FF3BD7A7FF2EA574FF000E0B120000 + 000000000000000000000000000000000000000000002A2A2AFF2E2E2EFF3939 + 39FF393939FF393939FF393939FF393939FF393939FF393939FF3A3A3AFF3A3A + 3AFF3A3A3AFF3A3A3AFF3A3A3AFF3A3A3AFF3A3A3AFF3A3A3AFF3A3A3AFF3A3A + 3AFF3B3B3BFF323232FF1F1F1FC6000000000000000000000000000000000223 + 1A2C2BD19CFF14B284FF13B284FF16D2A1FF11D09EFF10D09EFF16B687FF27CB + 99FF259670F00000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00009D9D9DD6D0D0D0FFEFEFEFFF39B285FF39B184FF5DBC98FF64BC9BFF58B8 + 94FFDEE3E1FF3CAB80FF92CAB3FF84C4AAFF3EAA7EFF96C9B3FFEEEEEEFFB9B9 + B9F5020202040000000000000000000000000000000000000000000000000000 + 000000000000000000002CA676FF11C392FF0DCE98FF0DCE98FF0DCD97FF0DCE + 97FF0DCD98FF0DCE98FF0DCD97FF0CCE97FF3BD7A7FF2CA676FF011C14220000 + 00000000000000000000000000000000000000000000323232FE343434FF3C3C + 3CFF3C3C3CFF3C3C3CFF3C3C3CFF3C3C3CFF3C3C3CFF3C3C3CFF3D3D3DFF3D3D + 3DFF3D3D3DFF3D3D3DFF3D3D3DFF3D3D3DFF3D3D3DFF3D3D3DFF3D3D3DFF3D3D + 3DFF3E3E3EFF383838FF1212127100000000000000000000000001150F1A2AA0 + 75FF15B384FF13B283FF0FCE9BFF80EFD0FF6EE5BFFF0FD19EFF13B788FF24C9 + 96FF1FB78AFC0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000ACACACE8D0D0D0FFF1F1F1FF44B98EFF38B285FF41B288FFCFDFD9FFE6E6 + E6FFE6E6E6FF58B691FFA5D0BEFFB9D7CCFF3BAA7DFFAED1C2FFF0F0F0FFC4C4 + C4FE252525340000000000000000000000000000000000000000000000000000 + 000000000000000000002BA776FF10C492FF0DCE98FF0DCF99FF0DCF99FF0DCE + 98FF0DCF99FF0DCE99FF0DCE99FF0DCF99FF3AD7A6FF2BA877FF000E0B120000 + 00000000000000000000000000000000000000000000272727F04E4E4EFF4040 + 40FF3F3F3FFF3F3F3FFF3F3F3FFF3F3F3FFF3F3F3FFF3F3F3FFF404040FF4040 + 40FF404040FF404040FF404040FF404040FF404040FF404040FF404040FF4040 + 40FF424242FF4B4B4BFF0505052200000000000000002AA078FF1BD09DFF1DD2 + 9FFF0FD09EFF16D4A3FF5DE7BFFF40AC89FF33A37EF255DCB3FF0FD29FFF11C0 + 90FF1ACC99FF259871EF02090710000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000CACACAFEDADADAFFF2F2F2FFE0E7E4FF45B98FFF35B486FF8DCDB5FFE8E8 + E8FFE8E8E8FFE6E6E6FF6FC0A1FF3BAE82FFD7E1DCFFE5E5E5FFEEEEEEFFCDCD + CDFF838383B20000000000000000000000000000000000000000000000000000 + 0000000000000000000028AA79FF10C794FF0DD19BFF0DD19BFF0ED19BFF0DD1 + 9BFF0ED19BFF0DD19BFF0ED19BFF0DD19AFF38D7A6FF28AA79FF000E0B120000 + 0000000000000000000000000000000000000000000000000000121212612C2C + 2CE7686868FF616161FF555555FF464646FF464646FF464646FF464646FF4646 + 46FF464646FF464646FF464646FF474747FF494949FF535353FF5E5E5EFF4A4A + 4AFD303030F01313136500000000000000000001010218CF9CFF1CD4A0FF10D3 + A0FF16D5A3FF5CE8C0FF46CFA8E600000000071E162F269F77F147E4B9FF0FD3 + A0FF0FD3A0FF1DB78AFB1B7255B2000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D0D0D0FFE5E5E5FFEFEFEFFF59C09CFF39B88BFF35B587FFE7E9E8FFE6E8 + E7FFE8E8E8FFE8E8E8FFE5E6E6FF80C7ACFFE6E6E6FFE6E6E6FFEBEBEBFFCFCF + CFFF9A9A9ACF0000000000000000000000000000000000000000000000000000 + 0000000000000000000027AC7AFF10C795FF0DD29CFF0ED29CFF0ED29CFF0ED2 + 9CFF0ED29CFF0DD29DFF0DD29DFF0DD29CFF37D6A6FF26AB7AFF000E0B120000 + 0000000000000000000000000000000000000000000000000000000000000202 + 020B2F2F2FE83C3C3CEE525252FD6A6A6AFF4F4F4FFF494949FF4A4A4AFF4A4A + 4AFF4A4A4AFF4A4A4AFF4A4A4AFF515151FF6D6D6DFF585858FF434343F81C1C + 1C850202020B0000000000000000000000002AA379FF1AD5A1FF10D4A1FF0FD4 + A1FF5BEAC1FF4CD7B1EE2CAA7FFF0000000000000000071E162F51DCB3FF44E4 + B8FF0FD3A1FF1DD3A1FF23A178F40C2F234B0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000D2D2D2FFEDEDEDFFEDEDEDFFEAEAEAFFEAEAEAFFDCE6E2FF3EB88CFF81CB + AFFFE5E8E7FF48B78EFF37AF82FF7FC5AAFFE7E7E7FFE6E6E6FFE8E8E8FFCFCF + CFFFA8A8A8E10000000000000000000000000000000000000000000000000000 + 0000000000000000000025AD7BFF11C996FF0ED39DFF0DD39DFF0ED39EFF0DD3 + 9EFF0ED39DFF0DD39EFF0ED39DFF0DD49DFF36D6A6FF25AD7BFF000E0B120000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000202020A0F0F0F481E1E1E8E3A3A3AF4656565FF585858FF4D4D4DFF4D4D + 4DFF4D4D4DFF4D4D4DFF606060FF6A6A6AFF333333E1202020950F0F0F480000 + 00000000000000000000000000000000000006140F1D3BCDA1FD3EE2B6FF56E9 + C0FF2EAF83FF00020103000000000000000000000000000000000820183127A4 + 7AF14DDCB2FF0FD5A1FF15D5A1FF1CB88BF90000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000B0B + 0B10D3D3D3FFF4F4F4FFEBEBEBFFEBEBEBFFEBEBEBFFEBEBEBFF31B686FF35B5 + 87FF94D1BAFF36B385FF3DB388FF2EAE80FFE9E9E9FFE8E8E8FFE8E8E8FFD0D0 + D0FFC6C6C6FC2C2C2C3F00000000000000000000000000000000000000000000 + 0000000000000000000022B17EFF10CB98FF0ED6A0FF0ED69FFF0ED6A0FF0ED6 + A0FF0ED6A0FF0ED6A0FF0ED6A0FF0ED6A0FF33D7A6FF22B07DFF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000001010105313131C3545454FF5454 + 54FF545454FF464646F9262626A0010101050000000000000000000000000000 + 00000000000000000000000000000000000000000000259E76E587EBCDFFFFFF + FFFF010504080000000000000000000000000000000000000000000000000821 + 183127A67AF136E0B3FF10D5A2FF13D4A1FF0C2E234800000000000000000000 + 0000000000000000000000000000000000000000000000000000000000002C2C + 2C40D6D6D6FFF5F5F5FFECECECFFEBEBEBFFEBEBEBFFEBEBEBFF7CCCAFFF34B6 + 88FF35B587FF38B587FFCEE2DAFF96D0B8FFE9E9E9FFE9E9E9FFE9E9E9FFD6D6 + D6FFCDCDCDFF5C5C5C80000000000000000020B27FFF21B27FFF21B27FFF21B2 + 7FFF20B27FFF21B27FFF21B27FFF10CC99FF0ED7A2FF0ED7A1FF0FD7A1FF0ED7 + A1FF0ED8A1FF0ED7A1FF0ED7A1FF0ED7A1FF31D7A6FF21B27FFF20B27FFF21B2 + 7FFF20B27FFF20B27FFF21B27FFF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000028282899595959FF5959 + 59FF595959FF444444F41B1B1B75000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000004100C1828A179E528A2 + 7AE3000000000000000000000000000000000000000000000000000000000000 + 00000822193249DCB1FF33E0B2FF0FD6A3FF259C74EC0209060E000000000000 + 0000000000000000000000000000000000000000000000000000000000005B5B + 5B8FD1D1D1FFE4E4E4FFDDDDDDFFDCDCDCFFDCDCDCFFDCDCDCFFD9DBDAFF30AB + 80FF30AA7FFF2AA77BFFDADBDAFFDBDBDBFFDADADAFFD9D9D9FFD9D9D9FFD1D1 + D1FFC2C2C2FF797979B8000000000000000005291D3842E6B8FF3EDCB0FF3EDC + B0FF3EDCB0FF3EDCB0FF3EDCB0FF11CE9BFF0ED9A3FF0ED8A2FF0ED8A3FF0ED8 + A3FF0ED8A2FF0ED8A2FF0ED8A3FF0FD9A2FF3EDCB0FF3EDCB0FF3EDCB0FF3EDC + B0FF3EDCB0FF38E3B4FF05291D38000000000000000000000000000000000000 + 000000000000000000000000000000000000040404113F3F3FF85D5D5DFF5D5D + 5DFF5D5D5DFF5A5A5AFF3B3B3BEE0303030E0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000008231A3427A77EF146DDB1FF10D6A3FF26A97EF30C2E22450000 + 0000000000000000000000000000000000000000000000000000000000007171 + 71DEA4A4A4FF949494FF929292FF929292FF929292FF929292FF929292FF9191 + 91FF919191FF909090FF909090FF909090FF909090FF909090FF909090FFA3A3 + A3FF8B8B8BFF767676E500000000000000000000000005291D381CB783FF52EB + C0FF0FDAA5FF0EDBA5FF0EDAA4FF0FDBA5FF0EDBA5FF0FDAA5FF0EDBA5FF0FDB + A5FF0FDBA5FF0EDBA5FF0FDBA5FF0FDBA5FF0FDBA4FF0EDBA5FF0EDBA5FF49E9 + BCFF1CB783FF05291D3800000000000000000000000000000000000000000000 + 000000000000000000000000000000000000434343DD5F5F5FFF636363FF6363 + 63FF636363FF636363FF606060FF333333B30000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000009241B3428AA7FF12BDFAFFF14D09EFF27A177EB0000 + 000000000000000000000000000000000000000000000E7C5AAA21B17FFF21B1 + 7FFF21B17FFF21B17FFF21B17FFF21B17FFF21B17FFF21B17FFF21B17FFF21B1 + 7FFF21B17FFF21B17FFF21B17FFF21B17FFF21B17FFF21B17FFF21B17FFF21B1 + 7FFF21B17FFF21B17FFF0E7C5AAA00000000000000000000000005291D381AB8 + 84FF0FDCA6FF0FDCA6FF0FDCA6FF0EDCA7FF0EDCA6FF0FDCA6FF0FDCA6FF0FDC + A6FF0EDCA6FF0FDCA6FF0EDDA6FF0FDCA6FF0FDCA6FF0FDCA6FF0FDCA6FF1AB8 + 84FF05291D380000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000020202064E4E4EFC656565FF666666FF6666 + 66FF666666FF666666FF666666FF414141DD0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000009241B3444DDB1FF28DFAFFF1DBC8EF80000 + 0000000000000000000000000000000000000000000021B17FFF1AC995FF1AC9 + 95FF1AC995FF1AC995FF1AC995FF1AC995FF1AC995FF1AC995FF1AC995FF1AC9 + 95FF1AC995FF1AC995FF1AC995FF1AC995FF1AC995FF1AC995FF1AC995FF1AC9 + 95FF1AC995FF1AC995FF21B17FFF000000000000000000000000000000000529 + 1D3860F0C7FF0FDDA7FF0EDDA7FF0FDDA7FF0FDDA7FF0EDDA7FF0FDEA7FF0FDD + A7FF0FDDA7FF0EDDA8FF0FDEA7FF0FDDA7FF0FDDA7FF0EDDA8FF5AEEC4FF0529 + 1D38000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000001313132F515151FF686868FF696969FF6969 + 69FF696969FF696969FF696969FF4A4A4AED0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000A261C372AAC7FF140DCB0FF29A4 + 7AEA0208060C0000000000000000000000000000000021B17FFF12C28EFF12C2 + 8EFF13C28DFF13C38EFF12C28EFF12C28EFF12C28DFF13C28EFF12C28EFF12C2 + 8EFF12C38DFF13C28EFF12C38EFF12C38EFF12C38EFF12C28EFF13C28EFF13C2 + 8EFF12C38EFF13C38EFF21B17FFF000000000000000000000000000000000000 + 000005291D3817BD87FF6FF3CDFF0FE0AAFF0FDFAAFF0FE0AAFF0FDFA9FF10DF + AAFF0FDFAAFF0FDFA9FF0FE0A9FF0FE0A9FF6AF2CBFF17BD88FF05291D380000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000002222224F5B5B5BFF6F6F6FFF707070FF7070 + 70FF707070FF707070FF707070FF585858F60000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000A271D372BAC80F126C1 + 94F81B7256A20000000000000000000000000000000021B17FFF12C490FF11C4 + 8FFF12C48FFF12C48FFF11C48FFF11C48FFF11C48FFF12C48FFF12C48FFF12C4 + 8FFF11C48FFF12C48FFF12C48FFF12C48FFF11C48FFF11C38FFF12C48FFF12C4 + 8FFF11C48FFF11C48FFF21B17FFF000000000000000000000000000000000000 + 00000000000005291D3815BE88FF10E0AAFF0FE0AAFF0FE1ABFF0FE0AAFF0FE1 + ABFF0FE0AAFF10E1ABFF0FE1AAFF0FE1ABFF15BE88FF05291D38000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000001D1D1D3F5A5A5AFF727272FF737373FF7373 + 73FF737373FF737373FF737373FF555555F00000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000000A271D373ADB + ADFF2BB285F40B2C213F00000000000000000000000021B17FFF11C590FF11C5 + 90FF11C590FF11C590FF11C590FF11C590FF11C590FF11C590FF11C590FF11C5 + 90FF11C590FF11C590FF11C590FF11C590FF11C590FF11C590FF11C590FF11C5 + 90FF11C590FF11C590FF21B17FFF000000000000000000000000000000000000 + 0000000000000000000005291D387BF6D2FF0FE1ACFF10E1ABFF0FE1ACFF0FE1 + ABFF0FE2ABFF0FE1ABFF0FE2ACFF78F5D1FF05291D3800000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000D0D0D1B5E5E5EFF757575FF767676FF7676 + 76FF767676FF767676FF767676FF565656E90000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000A29 + 1E392CAF84F232C093FC00000000000000000000000016BD88FF17E8B4FF17E8 + B4FF17E8B4FF17E8B4FF17E8B4FF17E8B4FF17E8B4FF17E8B4FF17E8B4FF17E8 + B4FF17E8B4FF17E8B4FF17E8B4FF17E8B4FF17E8B4FF17E8B4FF17E8B4FF17E8 + B4FF17E8B4FF17E8B4FF16BD88FF010604070000000000000000000000000000 + 000000000000000000000000000005291D3813C28BFF86F8D6FF10E4ADFF0FE3 + ADFF0FE4AEFF84F7D5FF12C18BFF05291D380000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000003939398E696969FF7C7C7CFF7C7C + 7CFF7C7C7CFF818181FF676767FC191919500000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000B291F3A2CB185F413392C4B00000000000000000E382C4216BD88FF17E8 + B4FF299065FF289266FF25A171FF25A171FF25A171FF25A171FF25A171FF25A1 + 71FF25A171FF25A171FF25A171FF25A171FF25A171FF25A171FF25A171FF0CBE + 89FF46E7B5FF17E8B4FF0E372A40000000000000000000000000000000000000 + 00000000000000000000000000000000000005291D3812C38CFF10E4AEFF10E4 + AEFF10E4AEFF11C38CFF05291D38000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000002020207494949D58F8F8FFF8A8A + 8AFF898989FF707070FE444444CA020202070000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000B2B203C2FAE84EF0208060B00000000000000010F3C2E4616BD + 88FF48E6B5FF299065FF25A171FF25A171FF25A171FF25A171FF25A171FF25A1 + 71FF25A171FF25A171FF25A171FF25A171FF25A171FF25A171FF25A171FF4DEC + BAFF17E8B4FF16BD88FF00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000005291D388DF9D8FF10E4 + AFFF8DF9D8FF05291D3800000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000007070718525252EB5D5D + 5DF85D5D5DF8353535A307070718000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000B2B203C2EAE83F40000000000000000000000000001 + 010217DCA7FF10D197FF10D197FF10D197FF10D197FF10D197FF10D197FF10D1 + 97FF10D197FF10D197FF10D197FF10D197FF10D197FF10D197FF10D197FF16CE + 99FF0F3A2D440001010200000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000005291D380FC5 + 8EFF05291D380000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000001000000020000000300000006000000090000000C000000100000 + 001100000014000000100000000D0000000C0000000600000005000000030000 + 0001000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000003200000052000000520000 + 0052000000520000005200000052000000520000005200000052000000520000 + 0052000000520000005200000052000000520000005200000052000000520000 + 0052000000520000005200000032000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000200000004000000070000000C000000120000001C000000240000 + 0027339F70FF0000002E00000029000000210000000D0000000A000000060000 + 0002000000000000000000000000000000000000001E00000040000000520000 + 0052000000520000005200000052000000520000005200000052000000520000 + 0052000000520000005200000052000000520000005200000052000000520000 + 00520000005200000052000000270000001E0000001E319F70FF32A071FF319F + 70FF31A070FF319F71FF32A071FF32A070FF31A071FF32A070FFD58F6AFFD58F + 6AFFD58F6AFFD58F6AFFD58F6AFFD58F6AFFD58F6AFF000000001560BCFF1560 + BDFF1560BDFF1660BDFF00000000000000000000000000000000000000000000 + 0000000000000000000000000000FED6AEFFFED6AEFFFED6AEFFFED7B0FFFED7 + B0FFFED8B1FFFED9B4FFFEDAB6FFFEDAB6FFFEDCB9FFFEDCB9FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000032A071FF32A071FF0F342452000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000252422FF262624FF2625 + 23FF0E86F2FF0E86F2FF0E86F2FF0E86F2FF0E86F2FF0E86F2FF0E86F2FF0E86 + F2FF0E86F2FF0E86F2FF0E86F2FF0E86F2FF0E86F2FF0E86F2FF0E86F2FF0E86 + F2FF262524FF262524FF0000000000000000000000000DC992FF13B98CFF13B9 + 8CFF13B98CFF13B98CFF13B98CFF13B98CFF0EC992FF2FA171FFD58F6AFFEBA5 + 7DFFE19D79FFE19D79FFE19D79FFE19D79FFD58F6AFF000000001661BEFF076E + E6FF076EE6FF0578EAFF00000000000000000000000E00000013000000140000 + 0016000000191111113114141431FED4AAFFFED4AAFFFED4AAFFFED5ACFFFED5 + AEFFFED6AFFFFED8B2FFFED8B2FFFED9B4FFFEDAB7FFFFDBB9FF111111310000 + 00180000001600000014000000100000000E0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000031A172FF3BD7A7FF30A271FF0F3424520000000000000000000000000000 + 00000000000000000000000000000000000000000000262523FF282724FF2727 + 24FF037FEEFF037FEEFF037FEEFF037FEEFF037FEEFF037FEEFF037FEEFF037F + EEFF037FEEFF037FEEFF037FEEFF037FEEFF037FEEFF037FEEFF037FEEFF037F + EEFF272625FF000000000000000000000000000000000DCA93FF13B98CFF0DCA + 93FF0DCA93FF0DCA94FF0DCA93FF13B98CFF0DCA93FF2FA272FFD58F6AFFECA5 + 7DFFE29E79FFECA57DFFECA57CFFE29E79FFD58F6BFF000000001662C0FF057A + EBFF0388F0FF057BEAFF000000000000000000000017000000343F3F3F7FACAC + ACFFACACACFFACACACFF636262FFFFCD9DFFFFCD9DFFFFCE9FFFFFD0A3FFFFD2 + A6FFFFD4AAFFFFD7AFFFFFD8B1FFFFD9B5FFFFDDBCFFFFDDBCFF636363FFACAC + ACFFACACACFF4B4B4B8C00000030000000170000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000030A373FF10BF8EFF39D6A6FF30A373FF0000000000000000000000000000 + 00000000000000000000000000000000000000000000272624FF292826FF2929 + 26FF037FEEFF037FEEFF037FEEFF037FEEFF037FEEFF037FEEFF037FEEFF037F + EEFF037FEEFF037FEEFF037FEEFF037FEEFF037FEEFF037FEEFF037FEEFF037F + EEFF2A2927FF292826FF0000000000000000000000000DCB95FF13BA8DFF0DCB + 95FF0DCC94FF0DCB94FF0DCB94FF13B98CFF0ECB94FF2EA273FFD68F6AFFECA5 + 7EFFE39E7AFFECA67DFFECA67DFFE39E7AFFD5906BFF000000001764C3FF057C + EBFF0389F0FF057CEBFF000000000000000000000000ACACACFFD1D1D1FFD1D1 + D1FFD1D1D1FFD1D1D1FF323232FFC49F7BFFC4A07EFFC4A17FFFC4A383FFC4A5 + 87FFC4A688FFC4A78BFFC4A88EFFC4A991FFC4AC96FFC4AC96FF323232FFCCCC + CCFFCCCCCCFFCCCCCCFF00000000000000000003020400040306000403060004 + 030600040306000403060009060C000403060004030600040306000403060000 + 00002DA575FF10BF8EFF10BF8EFF10BF8EFF2DA575FF0F342452000000000000 + 00000000000000000000000000000000000000000000292927FF2E2D2AFF2E2D + 2AFFFBE7D0FFFBE6D0FFFBE7CFFFFCE6CFFFFBE7D0FFFBE7D0FFFBE6D0FFFCE7 + D0FFFBE6CFFFFBE6CFFFFBE7D0FFFCE7CFFFFBE6D0FFFBE6CFFFFBE7CFFFFBE6 + CFFF2D2C2AFF2D2C2AFF0000000000000000000000000DCD97FF13BD8FFF0ECE + 97FF0ECE97FF0DCE97FF0ECE98FF13BC8EFF0ECD97FF2CA575FFD6906BFFEDA7 + 7FFFE5A17BFFECA77EFFECA77EFFE6A17BFFD6906BFF000000001A66C7FF0581 + EDFF038DF1FF0581EDFF000000000000000000000000ACACACFFD4D4D4FFD4D4 + D4FFD4D4D4FFD4D4D4FF333131FF9E8373FF9E8373FF9E8373FF9E8474FF9E84 + 74FF9E8475FF9E8576FF9E8576FF9E8577FF9E8577FF9E8577FF333131FFC8CC + CAFFCECECEFFCECECEFF00000000000000002CA676FF2CA776FF2CA676FF2CA6 + 75FF2CA675FF2BA676FF2BA675FF2CA675FF2BA676FF2CA676FF2CA676FF2CA6 + 76FF2BA776FF10BF8EFF0DCA94FF10C08EFF31D4A3FF2CA675FF0F3424520000 + 000000000000000000000000000000000000000000002B2927FF302E2CFF302E + 2DFFFBE7D0FFFCE7D0FFFCE7D0FFFBE7D1FFFBE7D1FFFCE7D0FFFBE7D1FFFBE7 + D1FFFBE7D0FFFBE7D1FFFBE7D0FFFBE7D0FFFCE7D1FFFBE7D1FFFCE7D0FFFBE7 + D0FF302E2CFF302F2CFF0000000000000000000000000ECF99FF12C090FF0ECF + 98FF0ECF99FF0ECF99FF0ECF99FF12BF8FFF0ECF99FF2BA675FFD6906CFFEDA8 + 7FFFE7A27CFFECA87FFFECA87FFFE7A27CFFD6906BFF000000001A68CBFF0482 + EDFF038EF1FF0483EEFF000000000000000000000000ACACACFFD7D7D7FFD7D7 + D7FFD7D7D7FFD7D7D7FFD6D6D6FFD6D6D6FFD5D5D5FFD5D5D5FFD5D5D5FFD4D4 + D4FFD4D4D4FFD4D4D4FFD3D3D3FFD3D3D3FFD3D3D3FFD2D2D2FFD2D2D2FF39A4 + 76FFC4CDCAFFD1D1D1FF00000000000000002AA777FF3CD7A7FF3CD7A7FF3CD7 + A7FF3CD7A7FF3CD7A7FF3CD7A7FF3CD7A7FF3CD7A7FF3CD7A7FF3CD7A7FF3CD7 + A7FF3CD7A7FF10BF8EFF0DCB95FF0DCC95FF0FC18FFF2ED4A2FF2BA777FF0000 + 000000000000000000000000000000000000000000002C2A29FF33312EFF3231 + 2FFFC4D1D7FFC4D0D7FFC4D0D7FFC4D0D7FFC4D0D8FFC4D0D7FFC4D1D7FFC4D1 + D8FFC4D1D7FFC4D1D7FFC4D1D8FFC4D0D8FFC4D0D8FFC4D1D7FFC4D0D8FFC4D0 + D7FF33302FFF33302FFF0000000000000000000000000ED09AFF11C392FF0ED0 + 9AFF0ED09AFF0ED09AFF0ED09AFF11C191FF0FD09AFF2AA677FFD7906CFFEDA9 + 80FFE8A47DFFEDA980FFEDA980FFE8A47DFFD7906BFF000000001B6ACDFF0486 + EFFF038FF2FF0486EEFF000000000000000000000000ACACACFFDCDCDCFFEDED + EDFF269B6AFF279B6AFF279B6AFF279B69FF279A69FF289A69FF289A68FF289A + 68FF289A68FF289968FF289968FF289968FF289968FF289968FF289968FFCBE8 + DCFFEAEAEAFFD7D7D7FF000000000000000028AA7AFF10C18FFF10C18FFF10C1 + 8FFF10C18FFF10C18FFF10C18FFF10C18FFF10C18FFF10C18FFF10C18FFF10C1 + 8FFF10C18FFF0FC793FF0ECE98FF0DCE98FF0DCE98FF0DCE98FF0FC492FF27AA + 7AFF0F342452000604080000000000000000000000002F2E2BFF373534FF3735 + 34FFFBE8D4FFFBE9D3FFFCE9D4FFFBE8D4FFFCE9D3FFFCE8D4FFFBE8D3FFFCE9 + D4FFFBE9D4FFFBE8D3FFFBE9D3FFFBE8D3FFFCE9D3FFFBE9D4FFFCE8D4FFFCE8 + D4FF383634FF373633FF00000000000000000000000013D59FFF10CB97FF0ED3 + 9CFF0FD39DFF0ED39DFF0ED39DFF10C996FF14D5A0FF27AA78FFD7916DFFEDAB + 81FFEBA880FFEDAA82FFEEAA82FFECA880FFD8926CFF000000001E6ED2FF048C + F1FF0391F3FF048BF1FF000000000000000000000000A3A3A3ECE0E0E0FFF9FC + FBFF4ACC9FFF4ACC9FFF4ACC9FFF4ACC9FFF4ACC9FFF4ACC9FFF4ACC9FFF4ACC + 9FFF4ACC9FFF4ACC9FFF4ACC9FFF4ACC9FFF4ACC9FFF4ACC9FFF4ACC9FFF2899 + 68FFFFFFFFFFDADADAFF000000000000000026AB7BFF0FC390FF10C18FFF0EC9 + 95FF0ECF99FF0DD099FF0DD09AFF0DD099FF0DCF9AFF0DD09AFF0DD099FF0DD0 + 99FF0ED099FF0DCF9AFF0ED09AFF0ED099FF0ED09AFF0ECF9AFF0DCF99FF19C9 + 97FF26AC7BFF0F342452000000000000000000000000302E2CFF3A3836FF3A38 + 36FFC4D2DAFFC4D2DAFFC4D2DAFFC4D2DAFFC4D3DAFFC4D2DAFFC4D2DAFFC4D2 + DAFFC4D2DAFFC4D3DAFFC4D2DAFFC4D2DAFFC4D2DAFFC4D2DAFFC4D2DAFFC4D2 + DAFF3A3836FF3A3836FF00000000000000000000000016D7A2FF10CE9AFF0FD4 + 9EFF0ED59EFF0FD59EFF0ED49EFF10CC99FF17D7A2FF26AA79FFD8926DFFEDAB + 83FFEDAC82FFEEAC82FFEEAB83FFEEAC82FFD8926DFF000000001F6FD4FF038E + F1FF0393F2FF038EF1FF000000000000000000000000A1A1A1E6EAEAEAFFF4FA + F7FF47CA9DFF23A674FF23A674FF24A472FF24A472FF24A472FF24A472FF24A4 + 72FF24A472FF24A472FF24A472FF24A472FF24A472FF24A472FF23A674FF279B + 6BFFFFFFFFFFE5E5E5FF000000000000000024AD7CFF0FC492FF0ECA96FF0DD1 + 9BFF0DD29BFF0ED29BFF0DD19BFF0ED19AFF0DD19BFF0DD19BFF0ED29BFF0ED1 + 9BFF0DD29BFF0ED19BFF0DD19AFF0DD19BFF0DD19BFF0ED19BFF0ED19BFF0FC9 + 95FF19CB99FF24AD7CFF000403060000000000000000312F2EFF3D3B38FF3C3A + 39FFFCE9D5FFFCEAD5FFFCE9D5FFFBEAD6FFFCEAD5FFFCE9D5FFFCE9D6FFFCEA + D5FFFCEAD6FFFCEAD5FFFCEAD5FFFCEAD6FFFBEAD6FFFCE9D5FFFCEAD6FFFBE9 + D5FF3D3B39FF3D3B39FF0000000000000000000000001AD9A5FF0FD29DFF0ED5 + A0FF0FD5A0FF0FD6A0FF0FD69FFF10D19CFF1BD9A6FF25AC7AFFD9936DFFEEAE + 84FFEDAC83FFEEAC83FFEEAC83FFEEAC83FFD9926DFF000000002071D7FF0393 + F3FF0393F3FF0393F3FF000000000000000000000000A7A7A7E3FFFFFFFFEEFA + F5FF5AE0B6FF26C18FFF26C895FF26C895FF26C895FF26C895FF26C895FF26C8 + 95FF26C895FF26C895FF26C895FF26C895FF26C895FF26C895FF26C08EFF23A2 + 70FFFFFFFFFFFFFFFFFF000000000000000021B17FFF0FC995FF0ED49EFF0ED4 + 9EFF0DD49EFF0DD49EFF0ED49EFF0ED49EFF0ED49EFF0DD49EFF0ED49EFF0ED4 + 9DFF0ED49EFF0ED49EFF0ED49EFF0ED49EFF0ED49EFF0DD49EFF0ED49EFF0ED5 + 9EFF0ED49EFF0FCF9AFF22B07FFF0F34245200000000353331FF43403EFF4240 + 3EFFC4D3DCFFC4D4DCFFC4D4DCFFC4D4DCFFC4D4DBFFC4D3DCFFC4D4DCFFC4D4 + DCFFC4D4DCFFC4D3DCFFC4D3DCFFC4D4DCFFC4D4DCFFC4D4DCFFC4D3DBFFC4D3 + DCFF42403EFF43403EFF00000000000000000000000022DDABFF0ED9A3FF0FD9 + A3FF0FD9A3FF0ED8A3FF0ED9A2FF0FD8A3FF25DFACFF22B07EFFD9946EFFF0B2 + 8AFFEFAE85FFEEAE85FFEFAE84FFEFAE84FFD9946EFF000000001584EAFF5DC7 + FBFF5DC7FBFF5DC7FBFF000000000000000000000000A8A8A8E0FFFFFFFFE6F8 + F2FF6CEEC8FF6CEEC8FF6CEEC8FF6CEEC8FF6CEEC8FF6CEEC8FF6CEEC8FF6CEE + C8FF6CEEC8FF6CEEC8FF6CEEC8FF6CEEC8FF6CEEC8FF6CEEC8FF6CEEC8FF21A7 + 74FFFFFFFFFFFFFFFFFF000000000000000020B280FF0FCC98FF0ED5A0FF0ED6 + A0FF0ED69FFF0ED5A0FF0ED59FFF0ED6A0FF0ED69FFF0ED59FFF0ED5A0FF0ED6 + 9FFF0ED5A0FF0ED69FFF0ED69FFF0ED69FFF0ED69FFF0ED59FFF0ED6A0FF0ED5 + A0FF0ED69FFF0ED5A0FF2ADEACFF20B27FFF00000000363432FF454341FF4643 + 40FFFBEAD7FFFCEBD8FFFCEBD8FFFCEBD7FFFCEBD8FFFCEBD8FFFCEBD7FFFCEB + D7FFFCEBD7FFFCEBD7FFFCEBD8FFFCEBD8FFFCEBD8FFFCEBD8FFFCEAD8FFFCEB + D8FF454341FF454341FF00000000000000000000000027E0AEFF0EDAA4FF0EDA + A5FF0FDBA4FF0FDAA4FF0FDAA5FF0FDAA4FF29E0AEFF22B17FFFD9946EFFEFB4 + 8CFFEFAF86FFEEAF85FFEFAF85FFEFAF86FFDA936EFF00000000000000001584 + EAFF1584EAFF1584EAFF000000000000000000000000A0A0A0D5FFFFFFFFDDF7 + EFFF6CEEC8FF6CEEC8FF6CEEC8FF6CEEC8FF6CEEC8FF6CEEC8FF6CEEC8FF6CEE + C8FF6CEEC8FF6CEEC8FF6CEEC8FF6CEEC8FF6CEEC8FF6CEEC8FF6CEEC8FF1EAB + 78FFFFFFFFFFFFFFFFFF00000000000000001FB381FF0FCF9AFF0ED7A1FF0ED7 + A1FF0ED7A1FF0ED7A1FF0ED7A1FF0ED6A1FF0ED7A2FF0ED7A1FF0ED7A1FF0ED7 + A1FF0ED7A1FF0ED7A1FF0ED6A1FF0ED7A1FF0ED7A1FF0ED7A1FF0ED7A1FF0ED7 + A1FF0ED7A1FF0FD7A1FF1EB381FF063C2C5200000000383634FF484643FF4846 + 43FFFCEBD8FFFCEBD8FFFCEBD8FFFCEBD8FFFCEBD8FFFCEBD8FFFCEBD8FFFCEB + D8FFFCEBD8FFFCEBD8FFFCEBD8FFFCEBD8FFFCEBD8FFFCEBD8FFFCEBD8FFB2A6 + 9AFF484543FF484543FF0000000000000000000000002CE2B1FF0FDBA6FF0FDC + A5FF0FDBA6FF0FDBA6FF0FDCA6FF0FDCA6FF2EE3B1FF21B381FFDA946EFFF0B7 + 8FFFEFAF86FFEFB086FFEFB086FFEFB086FFDA946FFF00000000000000000000 + 000000000000000000000000000000000000000000007B7B7BA8EFEFEFFFF6FC + FAFF5CE7BDFF23C08DFFECBD96FFECBE97FFECBE97FFECBE97FFECBE97FFECBE + 97FFECBE97FFECBE97FFECBE97FFECBE97FFECBE97FFECBE97FF24BD8BFF19B3 + 7FFFFFFFFFFFF3F3F3FF00000000000000001BB783FF0FD5A1FF0FDAA4FF0EDA + A4FF0EDAA4FF0FDAA4FF0FDAA4FF0FDAA4FF0EDAA4FF0EDAA4FF0EDAA4FF0FDA + A4FF0EDAA4FF0FD9A4FF0ED9A4FF0EDAA5FF0FDAA4FF0EDAA4FF0FDAA4FF0EDA + A4FF46E7BAFF1BB684FF0000000000000000000000003B3836FF4E4B49FF4E4A + 49FF4E4B49FF4E4B49FF4E4B48FF3D3A39FF3C3A39FF3C3A39FF3C3A38FF3D3A + 39FF3C3A39FF3D3A38FF3C3A39FF3C3A39FF3D3A38FF3D3A39FF3C3A39FF4E4B + 49FF4E4A48FF4D4A49FF00000000000000000000000037E6B5FF0FDEA9FF0FDE + A8FF0FDEA9FF0FDEA9FF10DEA9FF0FDEA9FF39E6B6FF20B885FFDB956FFFF1BD + 94FFF0B188FFEFB188FFEFB187FFEFB187FFDB956FFF00000000000000000000 + 000000000000000000000000000000000000000000000D0D0D13959595C6C3CE + CAFD54BF9EFF48B48FFEF1C9A0FFF3CCA3FFF3CCA3FFF3CCA3FFF3CCA3FFF3CC + A3FFF3CCA3FFF3CCA3FFF3CCA3FFF3CCA3FFF3CCA3FFF3CBA2FF46B28CFE18B7 + 83FFBDBDBDE99B9B9BCE000000000000000019B884FF0ED8A3FF0EDBA6FF0FDB + A6FF0EDBA6FF0FDBA6FF0EDBA5FF0FDCA6FF0EDCA6FF0EDBA5FF0FDBA5FF0FDC + A5FF0EDBA6FF0EDBA6FF0FDCA6FF0FDCA5FF0FDBA6FF0FDBA6FF0FDBA6FF4FEA + BFFF1AB885FF063C2C520000000000000000000000003C3938FF504D4BFF504E + 4BFF6D6B6AFF5F5B58FF5F5B58FFE8E8C2FFE8E8C2FFE8E8C2FFE8E8C2FFE8E8 + C2FFE8E8C2FFE8E8C2FFE8E8C2FFE8E8C2FFE8E8C2FFE8E8C2FF3E3C3AFF504D + 4BFF504D4BFF504D4BFF0000000000000000000000003DE8B8FF0FE0A9FF0FDF + AAFF0FDFAAFF10E0A9FF0FE0AAFF0FDFA9FF3EE8B9FF1FB986FFDB9570FFF2C0 + 97FFF0B188FFF0B187FFEFB288FFF0B188FFDB956FFF00000000000000000000 + 0000000000000000000000000000000000000000000000000000000000002222 + 22321616162000000000F5D1ABFFF9D8B2FFF8D8B2FFF9D8B2FFF8D8B1FFF9D8 + B2FFF9D8B2FFF8D8B1FFF9D8B1FFF9D8B2FFF9D8B1FFF7D5AFFF161817231616 + 16201010101800000000000000000000000018B985FF0FDCA6FF0FDDA7FF0EDD + A7FF0FDDA7FF0EDDA7FF0FDCA7FF0FDDA7FF0EDDA7FF0FDDA7FF0FDCA7FF0FDD + A7FF0EDDA7FF0FDDA7FF0FDCA7FF0FDDA7FF0FDCA7FF0FDDA7FF0FDCA7FF18BA + 85FF063C2C52000000000000000000000000000000003D3A39FF534F4DFF5350 + 4DFF5F5B58FF4A4645FF4A4645FFE9E8C4FFE9E9C4FFE9E9C4FFE9E9C5FFE8E9 + C4FFE8E9C4FFE9E8C4FF2F2E2CFF474341FFE9E9C5FFE9E9C5FF413D3CFF534F + 4DFF53504DFF53504EFF00000000000000000000000041E9BAFF0FE1ABFF0FE1 + ACFF0FE0ABFF10E0ABFF10E1ABFF0FE1ABFF43EABBFF1EBB88FFDC956FFFF2C2 + 99FFF0B288FFEFB389FFEFB288FFF0B288FFDC956FFF00000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F3CEA9FFFADBB7FFFADBB7FFF9DAB7FFFADBB7FFF9DB + B7FFF9DBB7FFF9DBB7FFF9DAB7FFFADBB7FFF9DBB7FFF5D2AEFF000000000000 + 00000000000000000000000000000000000013C08AFF13C08AFF13C08AFF13C0 + 8AFF13C08AFF13C08AFF13C08AFF13C08AFF13C08AFF13C08AFF13C08AFF13C0 + 8AFF16BC89FF0FE0AAFF0FDFAAFF0FE0AAFF0FE0A9FF6BF2CCFF16BC88FF0000 + 00000000000000000000000000000000000000000000403E3CFF575452FF5754 + 52FF5F5B58FF4A4645FF575452FFEBEBCDFFEBEBCCFFEBEBCCFFEBEBCCFFEBEC + CCFFEBEBCCFFEBEBCCFF2F2E2CFF474341FFEBEBCCFFEBEBCCFF444140FF5754 + 52FF575452FF575452FF0000000000000000000000004CECBEFF10E3AEFF0FE3 + ADFF10E2AEFF0FE2ADFF0FE3AEFF10E3ADFF4EECBFFF1DBE8BFFDC9670FFF5F9 + F7FFF7E1BAFFF7E1BAFFF7E1BAFFF7E1BAFFDC9670FF00000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F2CCA8FFFADDBAFFFADCBAFFFADCBAFFFADDBAFFF9DC + BAFFFADDBAFFFADCBAFFF9DCBAFFFADCBAFFFADCB9FFF4D0ADFF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000014BD89FF0FE1ABFF10E0ABFF10E1ABFF73F4CFFF14BD89FF063C2C520000 + 00000000000000000000000000000000000000000000413E3DFF5A5654FF5A56 + 54FF5F5B58FF4A4645FF5A5654FFEDECD0FFEDEDD1FFEDEDD0FFEDEDD1FFECEC + D0FFEDEDD0FFECEDD0FF2F2E2CFF474341FFECEDD0FFECECD1FF464341FF5A56 + 54FF5A5654FF595554FF00000000000000000000000051EDC0FF0FE3AFFF10E4 + AFFF10E4AEFF10E4AFFF10E3AFFF10E4AEFF53EDC1FF1DC18DFF54392B58D796 + 70E3F2AF85FFF3AE85FFF2AE85FFF2AE85FF35261D3800000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000F1CBA6FFFADEBCFFFADEBDFFFADDBCFFFADDBCFFFADE + BDFFFADEBDFFFADDBDFFFADEBCFFFADEBDFFFADDBDFFF3CFACFF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000013BE8BFF0FE2ACFF10E1ADFF0FE2ACFF13BF8AFF063C2C52000000000000 + 0000000000000000000000000000000000000000000042403EFF5B5855FF5B57 + 56FF5F5B58FF4A4645FF5C5855FFEEEED5FFEEEED5FFEEEED5FFEEEED5FFEEEE + D5FFEEEED5FFEEEED5FF2F2E2CFF474341FFEEEED5FFEEEED5FF484442FF5B57 + 56FF5C5856FF5B5856FF00000000000000000000000056EEC2FF10E5AFFF0FE5 + B0FF10E5B0FF10E4AFFF10E5B0FF10E5B0FF58EEC2FF1CC28FFF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EFC8A4FFFAE0C1FFFBE0C2FFFAE0C1FFFBE0C2FFFAE0 + C2FFFAE0C2FFFAE0C2FFFAE0C1FFFBE0C1FFFAE0C2FFF1CBA8FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000012C18CFF10E3AFFF89F8D7FF11C18CFF0000000000000000000000000000 + 00000000000000000000000000000000000000000000444140FF5F5A58FF5F5B + 58FF5F5B58FF4A4645FF5E5B59FFF0F1DEFFF1F1DDFFF1F1DEFFF1F1DEFFF0F1 + DEFFF1F1DEFFF0F1DEFF2F2E2CFF2F2E2CFFF1F1DDFFF0F1DEFF494645FF5F5A + 59FF5F5B59FF6D6B6AFF0000000000000000000000005FEFC4FF10E7B1FF10E7 + B1FF10E6B1FF10E7B1FF10E6B1FF10E6B1FF61EFC5FF1CC591FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EEC7A4FFFBE2C3FFFAE1C4FFFBE1C3FFFAE2C3FFFBE1 + C4FFFAE1C4FFFBE1C4FFFBE1C3FFFBE1C3FFFBE1C4FFEFC8A6FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000011C28DFF8EF9D8FF10C28DFF063C2C520000000000000000000000000000 + 00000000000000000000000000000000000000000000454241FF8D8C8BFF6D6B + 6AFF5F5B58FF4A4645FF6D6B6AFFFBFBF5FFFBFBF5FFFBFBF5FFFBFBF5FFFBFB + F5FFFBFBF5FFFBFBF5FFFBFBF5FFFBFBF5FFFBFBF5FFFBFBF5FF555353FF6D6B + 6AFF8D8C8BFF454240FF00000000000000000000000063F0C5FF10E7B2FF10E7 + B2FF10E7B2FF10E7B2FF10E7B2FF10E7B2FF65F0C5FF1CC792FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000EFC7A4FFEFC7A4FFEFC7A4FFEFC7A4FFEFC7A4FFEFC7 + A4FFEFC7A4FFEFC7A4FFEFC7A4FFEFC7A4FFEFC7A4FFEFC7A5FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000010C28DFF0FC28DFF063C2C52000000000000000000000000000000000000 + 000000000000000000000000000000000000000000003A37369B454241FF4542 + 40FF5F5B58FF4A4645FF454241FFC3C3B5FFC3C3B5FFC3C3B5FFC3C3B5FFC3C3 + B5FFC3C3B5FFC3C3B5FFC3C3B5FFC3C3B5FFC3C3B5FFF4F3E4FF363333FF4542 + 41FF454240FF1F1D1D5A00000000000000000000000068F0C7FF10E7B2FF10E7 + B2FF10E7B2FF10E7B2FF10E7B2FF10E7B2FF68F0C7FF1DC894FF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000EC48FFF0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000001BCB97F420CA97F421CB + 98F421CB98F421CB98F421CB98F41FCB97F418C390EC00000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000020202220A0A0938000000380000003800000038000000380000 + 0038000000380000003800000038000000380A0A093C02020222000000000000 + 0000000000000000000000000000000000000000000000000002000000040000 + 0002000000000000000B000000180000002A0000002900000029000000290000 + 00290000002900000028000000260000001A0000000900000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000008E8F82FF8E8F82FF8E8F82FF8E8F82FF8E8F + 82FF8E8F82FF8E8F82FF8E8F82FF8E8F82FF1313122002020205000000000000 + 0000000000000000000000000000000000000000000000000004000000060000 + 00090000000C0000001000000025349E6FFF349E6FFF349E6FFF349E6FFF349E + 6FFF349E6FFF349E6FFF349E6FFF349E6FFF0000002400000021000000150000 + 000B000000090000000900000003000000020000001E00000052000000520000 + 0052000000520000005200000052000000520000005200000052000000520000 + 0052000000520000005200000052000000520000005200000052000000520000 + 00520000005200000052000000520000003200000000BD8B6BFBD39E7AFFD39E + 7BFFD39E7AFFD39E7AFFD39E7AFFD49E7AFFD49E7AFFD49E7AFFD49E7AFFD49E + 7AFFD49E7AFFD49F7AFFD49F7AFFD49F7AFFD49F7AFFD59F7AFFD59F7AFFD59F + 7AFFD59F7AFFD59F7AFF73513D9F000000000000000000000000000000000000 + 0000000000000000000000000000A5A69BFFC2C3B4FFC2C3B4FFC2C3B4FFC2C3 + B4FFC2C3B4FFC2C3B4FFC2C3B4FFA5A69BFF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000033A070FF3CD7A7FF13B98CFF13B98CFF13B9 + 8CFF13B98CFF13B98CFF3CD7A7FF329F70FF0000000000000000000000000000 + 00000000000000000000000000000000000000000000CC8865FFEEA97AFFEEA9 + 7AFFEEA97AFFEEA97AFFEEA97AFFEEA97AFFEEA97AFFEEA97AFF1361DFFF1361 + DFFF1361DFFF1361DFFF0F3EB0FFEEA97AFFEEA97AFFEEA97AFFEEA97AFFEEA9 + 7AFFEEA97AFFEEA97AFFCC8865FF0000000000000000C29372FFF5C49CFFF3BD + 94FFF3BD94FFF3BD94FFF3BD94FFF3BD94FFF3BD94FFF3BD94FFF3BD94FFF3BD + 94FFF3BD94FFF3BD94FFF3BD94FFF3BD94FFF3BD94FFF3BD94FFF3BD94FFF3BD + 94FFF3BD94FFF5C49CFFD09775FF020101030000000000000000000000000000 + 0000000000000000000000000000C2C3B4FFF0F0ECFFF0F0ECFFF0F0ECFFF0F0 + ECFFF0F0ECFFF0F0ECFFF0F0ECFFC2C3B4FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000031A171FF39D7A6FF0CC78FFF0CC78FFF0CC7 + 8FFF0CC78FFF0CC78FFF39D7A6FF32A171FF0000000000000000000000000000 + 00000000000000000000000000000000000000000000CC8865FFEEA97AFFE59E + 75FFDF9772FFDF9772FFDF9772FFDF9772FFDF9772FFDC936FFF0353DCFF0353 + DCFF0352DBFF0353DBFF0F3FB1FFDD946FFFDF9772FFDF9772FFDF9772FFDF97 + 72FFDF9772FFE59E75FFCC8865FF0000000000000000DDAB86FFC59674FFF5C9 + A3FFE8B690FFE8B690FFE8B690FFE8B690FFE8B690FFE8B690FFE8B690FFE8B6 + 90FFE8B690FFE8B68FFFE8B68FFFE8B68FFFE8B68FFFE8B68FFFE8B68FFFE8B6 + 8FFFF5C9A3FFCF9D7AFFD09775FF020201040000000000000000000000000000 + 000000000000000000000000000000000000A5A69BFFC2C3B4FFC2C3B4FFC2C3 + B4FFC2C3B4FFC2C3B4FFA5A69BFF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000030A272FF34D5A4FF0CC790FF0CC790FF0CC7 + 90FF0CC790FF0CC790FF34D6A5FF31A272FF0000000000000000000000000000 + 00000000000000000000000000000000000000000000CD8965FFEEA97AFFDF97 + 72FFDF9772FFDF9772FFDF9772FFDF9772FFDF9772FFDB916EFF0455DCFF0455 + DCFF0454DCFF0454DCFF0E40B3FFDC926EFFDF9772FFDF9772FFDF9772FFDF97 + 72FFDF9772FFDF9772FFCD8965FF0000000000000000F4C49BFFF0C198FFE7B8 + 91FFF7D3B4FFEBBD96FFF5C89FFFF5C79EFFF5C79EFFF5C79EFFF5C79EFFF5C7 + 9EFFF5C79EFFF5C79EFFF5C79EFFF5C79EFFF5C79EFFF5C79EFFEBBC96FFD8A6 + 82FFECB890FFF2BD94FFD09775FF020201040000000000000000000000000000 + 000000000000000000000000000000000000818277FF818277FF818277FF8182 + 77FF818277FF818277FF818277FF000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000002DA474FF29D3A1FF0DCA92FF0DCA92FF0DCA + 92FF0DCA92FF0DCA92FF29D3A1FF2EA473FF0000000000000000000000000000 + 00000000000000000000000000000000000000000000CE8A66FFEEA97BFFE19A + 74FFECA77FFFECA77EFFECA77EFFECA87FFFECA87EFFE09873FF0657DEFF0657 + DEFF0657DFFF0657DFFF0E42B7FFE29974FFECA77FFFECA77FFFECA77FFFECA7 + 7FFFECA87FFFE19974FFCE8A66FF0000000000000000F5C89EFFF5C89EFFF4C7 + 9DFFD3A582FFF8D9BCFFF5CAA1FFF5CAA1FFF5CAA1FFF5CAA1FFF5CAA1FFF5CA + A1FFF5CAA1FFF5CAA1FFF5CAA1FFF5CAA1FFF5CAA1FFF5CAA1FFF8D9BCFFF1BE + 96FFF4C198FFF4C198FFD09775FF02020104A5A69BFFA5A69BFFA5A69BFFA5A6 + 9BFFA5A69BFFA5A69BFFA5A69BFFA5A69BFFA5A69BFFA5A69BFFA5A69BFFA5A6 + 9BFFA5A69BFFA5A69BFFA5A69BFFA5A69BFFA5A69BFFA5A69BFFA5A69BFFA5A6 + 9BFFA5A69BFFA5A69BFFA5A69BFFA5A69BFF0000000000000000000000000000 + 00000000000000000000000000002CA675FF23D29FFF0DCB93FF0DCB93FF0DCB + 93FF0DCB93FF0DCB93FF23D19FFF2DA574FF0000000000000000000000000000 + 00000000000000000000000000000000000000000000CF8A67FFEEA97CFFE39C + 76FFEDA981FFECA980FFECA980FFECA980FFECA980FFDE9671FF0759E0FF0759 + E0FF0759DFFF0759E0FF0D44BAFFE09772FFECA880FFEDA980FFECA980FFEDA9 + 80FFEDA980FFE39C76FFCF8B67FF0000000000000000F5C89EFFF5C89EFFF5C8 + 9EFFF3C59CFFDBAD88FFF9DFC5FFF2C59DFFF2C59DFFF2C59DFFF2C59DFFF2C5 + 9DFFF2C59DFFF2C59DFFF2C59DFFF2C59DFFF2C59DFFF9DFC7FFE2B38DFFF4C4 + 9BFFF4C49BFFF4C49BFFD09775FF03020104A5A69BFFC3C4B5FFC2C3B5FFC2C4 + B5FFC3C4B4FFC2C4B5FFC3C4B5FFC3C3B5FFC2C4B5FFC3C4B5FFC3C3B4FFC3C3 + B5FFC3C3B5FFC3C4B5FFC3C3B5FFC2C4B5FFC3C4B5FFC3C3B4FFC3C4B4FFC3C4 + B5FFC3C3B4FFC2C4B5FFC3C3B5FFA5A69BFF0000000000000000000000000000 + 00000000000000000000000000002BA676FF1DD09DFF0DCC94FF0DCC94FF0DCC + 94FF0DCC94FF0DCC94FF1DD19CFF2BA676FF0000000000000000000000000000 + 00000000000000000000000000000000000000000000D08B68FFEEA97DFFE49F + 78FFEEAA81FFEEAB82FFEDAA82FFEDAB82FFEDAA82FFDC936FFF095AE1FF095A + E1FF085AE1FF095AE1FF0D45BDFFDD9470FFEEAB81FFEDAA82FFEEAA81FFEDAB + 82FFEEAA81FFE49F78FFCF8B67FF0000000000000000F6CDA4FFF6CDA4FFF6CD + A4FFF5CCA3FFF5CCA3FFF5CCA3FFFBE8D4FFE9B790FFE9B790FFE9B790FFE9B7 + 90FFE9B790FFE9B790FFE9B790FFE9B790FFECBF97FFF5C89FFFF5C89FFFF5C8 + 9EFFF5C89EFFF5C89EFFD09775FF03020104A5A69BFFE4E3DBFFE4E3DBFFE5E6 + DFFFE5E6DFFFE5E6DFFFE5E6DFFFE5E6DFFFE5E6DFFFE5E6DFFFE5E6DFFFE5E6 + DFFFE5E6DFFFE5E6DFFFE5E6DFFFE5E6DFFFE5E6DFFFE5E6DFFFE5E6DFFFE5E6 + DFFFE5E6DFFFE5E6DFFFC7C7B8FFA5A69BFF28AA7AFF28AA7AFF27AA79FF28AA + 79FF28AA79FF28AA79FF28AA79FF27AA79FF14CE99FF0DCF98FF0DCF98FF0DCF + 98FF0DCF98FF0DCF98FF13CF99FF28A979FF29A978FF28A979FF28A978FF29A9 + 78FF28A978FF29A978FF29A978FF0000000000000000D28E69FFEFAE82FFECA9 + 81FFF0B086FFF0B086FFF0B086FFF0AF86FFF0AF86FFD68A68FF0D60E4FF0D60 + E4FF0D60E4FF0D60E5FF0E4DC8FFD78B69FFF0B086FFF0B086FFF0B086FFF0AF + 86FFF0AF86FFECAA81FFD28D69FF0000000000000000F6D0A7FFF6D0A7FFF6D0 + A7FFF6CFA6FFF6CFA6FFF6CFA6FFFDF2E6FFFDF4EAFFFBEBD9FFFBEBD9FFFBEB + D9FFFBEBD9FFFBEBD9FFFDF4EAFFFDF4EAFFF5CBA2FFF5CBA2FFF5CBA2FFF5CA + A1FFF5CAA1FFF5CAA1FFD09775FF03020104A5A69BFFD69773FFD79774FFD797 + 74FFD79774FFD79774FFD79774FFD79774FFD79774FFD79774FFD79774FFD797 + 74FFD79774FFD79774FFD79774FFD79774FFD79774FFD79774FFD79774FFD797 + 74FFD79774FFD79774FFC7C9B9FFA5A69BFF26AC7BFF3EDCB0FF3EDCB0FF3EDC + B0FF3EDCB0FF3EDCB0FF3EDCB0FF3EDCB0FF11CE98FF0DD099FF0DD099FF0DD0 + 99FF0DD099FF0DD099FF11CE98FF3EDCB0FF3EDCB0FF3EDCB0FF3EDCB0FF3EDC + B0FF3EDCB0FF3EDCB0FF27AA79FF0000000000000000D38E69FFEAA77DFFE8A5 + 7EFFEBA880FFEBA880FFEBA880FFEBA880FFEBA880FFD38564FF0E62E6FF0E62 + E6FF0E61E5FF0E62E6FF0E50CCFFD38665FFEBA881FFEAA981FFEBA880FFEBA8 + 80FFEBA880FFE8A57DFFD38E6AFF0000000000000000F7D3AAFFF7D3AAFFF7D3 + AAFFF6D2A9FFF6D2A9FFF6D3AAFF3786A9FF0685C4FF0685C5FF0299E8FF0299 + ECFF0299EFFF038FE3FF038FE3FF4FA4D4FFF6D0A8FFF6CEA5FFF6CEA5FFF6CD + A4FFF6CDA4FFF6CDA4FFD09775FF03020104A5A69BFFE6A47EFFE8A57FFFE8A5 + 7FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A5 + 7FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A5 + 7FFFE8A57FFFE8A57FFFC9CABBFFA5A69BFF24AE7CFF11C996FF11C996FF11C9 + 96FF11C996FF11C996FF11C996FF11C996FF11C996FF0DD29BFF0DD29BFF0DD2 + 9BFF0DD29BFF0DD29BFF0DD29BFF11C996FF11C996FF11C996FF11C996FF11C9 + 96FF11C996FF11C996FF26AC7BFF0000000000000000D48F6AFFDB926EFFDA90 + 6EFFDB926EFFDB926EFFDB926EFFDB926EFFDB926EFFCE7F5FFF1064E7FF1064 + E7FF1064E7FF1064E7FF1054D0FFCE8060FFDB916EFFDB926EFFDB926EFFDB92 + 6EFFDB916EFFDB926EFFD48F6BFF0000000000000000F7D5ADFFF7D5ADFFF7D5 + ADFFF7D7B1FFF9E2CAFF0C8ABAFF069AD6FF04AFF2FF03AFF5FF03ACF6FF02AA + F6FF02A8F6FF02A3F6FF01A2F7FF01A0F7FF019DF7FFF9E2CAFFF2D7B6FFF7D3 + AAFFF7D3AAFFF7D3AAFFD09775FF03020104A5A69BFFE6A37DFFE8A57FFFE8A5 + 7FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A5 + 7FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A5 + 7FFFE8A57FFFE8A57FFFCCCDBEFFA5A69BFF21B17FFF0ED59EFF0ED59EFF0ED5 + 9EFF0ED59EFF0ED59EFF0ED59EFF0ED59EFF0ED59EFF0ED59EFF0ED59EFF0ED5 + 9EFF0ED59EFF0ED59EFF0ED59EFF0ED59EFF0ED59EFF0ED59EFF0ED59EFF0ED5 + 9EFF0ED59EFF0ED59EFF22AF7DFF0000000000000000D6916CFFCC7C5DFFCC7C + 5DFFCC7C5DFFCC7C5DFFCC7C5DFFCC7C5DFFCC7C5DFFCC7C5DFF1368E9FF1368 + E9FF1367EAFF1367EAFF125BD9FFCC7C5DFFCC7C5DFFCC7C5DFFCC7C5DFFCC7C + 5DFFCC7C5DFFCC7C5DFFD6906CFF0000000000000000F7D5ADFFF7D5ADFFF7D5 + ADFFF8DFC3FF0997CAFF0999CEFF05B5F4FF05B5F5FF04B4F5FF04B1F5FF03AE + F5FF03ACF6FF02A8F6FF02A7F6FF02A5F6FF01A0F7FF019FF7FFF8DFC3FFF7D8 + B2FFF7D5ADFFF7D5ADFFD09775FF03020104A5A69BFFE5A37DFFE8A57FFFE8A5 + 7FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A5 + 7FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A57FFFE8A5 + 7FFFE8A57FFFE8A57FFFCCCEBFFFA5A69BFF1FB280FF0ED6A0FF0ED6A0FF0ED6 + A0FF0ED6A0FF0ED6A0FF0ED6A0FF0ED6A0FF0ED6A0FF0ED6A0FF0ED6A0FF0ED6 + A0FF0ED6A0FF0ED6A0FF0ED6A0FF0ED6A0FF0ED6A0FF0ED6A0FF0ED6A0FF0ED6 + A0FF0ED6A0FF0ED6A0FF20B17FFF0000000000000000F4B78DFFF5B88DFFF4B8 + 8DFFF4B78DFFF4B78DFFF4B88DFFF4B88DFFF4B88DFFF0AF86FF1469EBFF1469 + EBFF166BEBFF1369EBFF135EDDFFF2B289FFF4B78DFFF4B78DFFF4B88DFFF4B8 + 8DFFF4B88DFFF5B78DFFF5BC93FFD7916CFF00000000F7D5ADFFF7D5ADFFEED2 + B0FB0B9BCAFF0AA5D6FF09AFE4FF06B9F5FF06B8F5FF05B6F5FF05B5F5FF04B2 + F5FF04B1F5FF03ACF5FF02ABF6FF02AAF6FF02A5F6FF02A3F6FF01A2F7FFF5D7 + B5FFF4D6B4FCF7D5ADFFD09775FF03020104A5A69BFFE5A37EFFE9A680FFE8A6 + 80FFE9A680FFE8A680FFE8A680FFE9A680FFE9A680FFE9A680FFE8A680FFE8A6 + 80FFE8A780FFE8A680FFE8A780FFE9A680FFE9A780FFE9A680FFE9A681FFE8A6 + 80FFE8A780FFE8A680FFCECFC0FFA5A69BFF1EB482FF10D8A1FF10D8A1FF10D8 + A1FF10D8A1FF0FD8A1FF0FD8A1FF0FD8A1FF0FD8A1FF0FD8A1FF0ED8A1FF0ED8 + A1FF0ED8A1FF0ED8A1FF0ED8A1FF0ED8A1FF0ED8A1FF0ED8A1FF0ED8A1FF0ED8 + A1FF0ED8A1FF0ED8A1FF20B280FF0000000000000000F5B98FFFEFB087FFEFB0 + 87FFEFB087FFEFB087FFEFB087FFEFAF87FFEFB087FFE8A57EFF146BECFF146B + ECFF2073EEFF156AECFF1462E0FFEAA780FFEFB087FFEFB087FFEFB087FFEFB0 + 87FFEFB087FFEFB087FFF5BD94FFD8926DFF00000000F1D3B3FBF5D8B7FFC9A5 + 8AFF35C4E7FF0BC3F4FF0BC3F4FF0AC1F4FF09C0F4FF08BEF4FF07BCF5FF06B9 + F5FF06B8F5FF05B5F5FF04B4F5FF04B2F5FF36AAD7FFA89D90FFC3A289FFE1B5 + 93FFF5D8B7FFF5D8B7FFDFB090FF03020104A5A69BFFE6A681FFEAAA84FFEAA9 + 84FFEBA983FFEBA983FFEBA984FFEAAA83FFEAAA83FFEBA983FFEAAA83FFEBAA + 83FFEAAA84FFEAAA83FFEBA983FFEAA983FFEAAA84FFEBAA83FFEBA983FFEAAA + 83FFEAAA84FFEAAA83FFD1D2C3FFA5A69BFF1AB784FF16DBA6FF16DBA6FF16DB + A6FF16DBA6FF15DBA6FF15DBA6FF15DBA6FF14DBA6FF14DBA6FF14DBA6FF14DB + A6FF13DBA6FF13DBA6FF13DBA6FF13DBA6FF13DBA6FF13DBA6FF13DBA6FF13DB + A5FF13DBA5FF12DBA5FF1CB683FF0000000000000000F7C79FFFF2B58CFFF6BB + 90FFF6BC90FFF6BB90FFF6BB91FFF6BB90FFF6BB90FFEAA780FF176DEEFF176D + EEFF5196F4FF176EEDFF1568E7FFEAA780FFF6BB90FFF7BB91FFF6BB91FFF6BB + 91FFF6BB90FFF6BB90FFF7C7A0FFD9936EFF00000000E8C2A2FDE6BA96FFE0B2 + 90FF9EA598FF55D2EAFF0CC5F3FF0BC3F4FF0BC3F4FF0AC2F4FF09C0F4FF08BD + F4FF07BCF5FF06B8F5FF05B6F5FF0AB6F3FFBE9F88FFCDA88CFFDEB593FFE8BB + 97FFE8BC97FFE8BC97FFC39071EA00000000A5A69BFFE6A881FFECAB85FFECAC + 86FFEBAC85FFEBAB85FFEBAB85FFECAB85FFEBAC85FFECAC85FFEBAC85FFEBAC + 85FFECAB85FFEBAC85FFEBAC85FFECAC85FFEBAB85FFECAC85FFECAB85FFECAC + 85FFECAC85FFEBAC85FFD3D4C5FFA5A69BFF18B885FF90F9D9FF90F9D9FF90F9 + D9FF90F9D9FF90F9D9FF90F9D9FFF5F9F7FF1FDDA9FF19DCA7FF19DCA7FF19DC + A7FF18DCA7FF18DCA7FF1DDDA9FFF5F9F7FF90F9D9FF90F9D9FF90F9D9FF90F9 + D9FF90F9D9FF90F9D9FF1AB784FF0000000000000000F8CCA6FFF3B78DFFF6BC + 91FFF7BC91FFF7BC91FFF7BC91FFF6BC91FFF6BD91FFEAA881FF176EEEFF1970 + EEFF69A8F7FF176FEEFF166BEAFFE6A27CFFF7BC91FFF7BD91FFF7BC91FFF6BC + 91FFF6BC92FFF6BC91FFF8CCA6FFDA946EFF00000000DAA886FFECCAACFEE7BB + 98FFD7AE90FFB3A793FF74D9EAFF0CC5F3FF0BC3F3FF0BC3F4FF0BC3F4FF0AC1 + F4FF09C0F4FF07BCF4FF21B7E6FF97A49DFFD8B292FFE4B996FFE9BD99FFE9BE + 99FFE9BE9AFFEECFB1FD5642356500000000A5A69BFFE8A983FFECAE87FFECAE + 87FFEDAE87FFEDAE87FFECAE87FFECAD87FFECAE87FFEDAE87FFEDAE88FFEDAE + 87FFECAE88FFEDAE87FFEDAE87FFECAD87FFEDAE87FFECAE87FFECAE87FFECAE + 87FFECAE88FFECAE87FFD4D5C8FFA5A69BFF17BA87FF17BB87FF17BA86FF17BA + 86FF18BA87FF17B986FF17BA87FF17BA86FF2AE0ADFF1DDDA9FF1DDDA9FF1DDD + A9FF1CDDA9FF1CDDA9FF28E0ADFF18B986FF18B986FF18B986FF18B986FF18B9 + 86FF18B986FF19B985FF19B985FF0000000000000000F9DFC7FFF7BE93FFF7BE + 93FFF7BE93FFF7BE93FFF7BE93FFF7BE93FFF7BE93FFE7A47EFF186FEFFF277A + F1FF7AB4F9FF186FEFFF186EEEFFE7A47EFFF7BE93FFF7BE93FFF7BE93FFF7BE + 93FFF7BE93FFF7BE93FFFAE8D8FFDA946FFF000000000000000055413464DAA8 + 86FFEAC09BFFE9BE99FFE5BB98FF9CE8F3FF11CDF2FF0FCAF3FF0DC8F3FF0CC5 + F3FF0EC9F4FFC1A78FFFDAB595FFE8BF9CFFECC29DFFECC29DFFECC39DFFF2D6 + B9FDDEAE8DFF564235650000000000000000A5A69BFFE8AC86FFEFB38CFFEFB3 + 8CFFEFB28CFFEFB28CFFEFB28CFFEFB38CFFEFB28CFFEFB38BFFEFB28CFFEFB3 + 8CFFEFB28BFFEFB28CFFEFB28CFFEFB28CFFEFB38CFFEFB38BFFEFB28CFFEFB3 + 8BFFEFB38BFFEFB28CFFD7D7CBFFA5A69BFF0000000000000000000000000000 + 000000000000000000000000000014BC88FF3FE4B3FF26DEABFF25DEABFF25DE + ABFF25DEABFF24DEABFF3CE3B2FF15BC88FF0000000000000000000000000000 + 00000000000000000000000000000000000000000000DA9570FFAE8989FF3648 + 99FF1E3592FF454C91FF615178FFB67E62FFBF8260FF95654AC7146BECFF146B + ECFF146BECFF146BECFFBF8260FF95654AC7B67E63FF8C6B70FF7F708EFF203E + 9AFF1A3B9BFF374E9DFFDA9570FF8D654A8F0000000000000000000000005541 + 3464F2D8BDFDECC19EFFEBC19CFFCBB99EFFAFEEF8FF12CEF2FF10CCF3FF13CE + F3FF5CBFC8FFE3BD9AFFECC39EFFEEC59FFFEEC59FFFEEC59FFFEEC5A0FFDFB0 + 8EFF57433566000000000000000000000000A5A69BFFE9AD87FFF1B58EFFF1B5 + 8EFFF1B58EFFF0B58EFFF0B58DFFF0B58EFFF0B58EFFF1B58EFFF1B58EFFF0B5 + 8EFFF1B58EFFF1B58DFFF1B58EFFF1B58EFFF0B58DFFF1B58DFFF0B58DFFF0B5 + 8DFFF0B58EFFF1B58EFFD7D8CCFFA5A69BFF0000000000000000000000000000 + 000000000000000000000000000013BE8AFF46E5B5FF2ADEABFF29DEABFF29DE + ABFF29DEABFF29DEABFF45E5B5FF14BE89FF0000000000000000000000000000 + 0000000000000000000000000000000000000000000017234F7C0E33A0FF1F5D + CEFF0D46BBFF0B4ECBFF0A44BBFF0C2890FF1C3796FF5B5684FF062E9EFF062E + 9EFF062E9EFF062E9EFF947272FF5C5984FF0F379EFF0D3FADFF0C4CC4FF0E48 + BEFF1662DFFF2063D4FF615A75C6000000010000000000000000000000000000 + 0000DCAA88FFF5DBC1FEEDC59FFFECC39DFFCDC2A6FFBFF1FAFF15D3F2FF5AC7 + CEFFDCB998FFEEC7A1FFEEC7A1FFEFC8A2FFEFC8A2FFEFC8A2FFF4DBC0FD5844 + 366800000000000000000000000000000000A5A69BFFEAAF89FFF1B78FFFF1B7 + 90FFF1B890FFF1B790FFF2B790FFF2B890FFF1B790FFF1B790FFF1B890FFF1B8 + 90FFF2B890FFF2B890FFF2B790FFF1B790FFF2B790FFF2B890FFF2B78FFFF2B7 + 8FFFF2B790FFF1B790FFD8DACEFFA5A69BFF0000000000000000000000000000 + 000000000000000000000000000013BF8BFF4CE6B7FF2EDEABFF2EDEABFF2DDE + ABFF2DDEABFF2DDEACFF4BE6B7FF13BF8BFF0000000000000000000000000000 + 000000000000000000000000000000000000000000000C317FB61653C5FF3880 + EDFF0E50CCFF0C5FE3FF0448CEFF0E35A5FF0E34A4FF0D35A6FF103CADFF4990 + F1FF4990F1FF103CADFF1345B2FF0E36A3FF0E35A5FF0E35A5FF0D40B5FF0E50 + CCFF387BECFF3880EDFF0C317FB6000000000000000000000000000000000000 + 00000000000058443668DDAD8BFFF0CAA3FFF1CBA4FFF1CBA4FFF0CBA4FFF1CC + A4FFF2CCA5FFF2CDA5FFF2CDA5FFF3CEA6FFF5DDC3FDE1B593FF5B46376B0000 + 000000000000000000000000000000000000A5A69BFFEBB18BFFF4BB93FFF3BB + 94FFF3BB94FFF3BB94FFF4BB93FFF4BB94FFF4BB93FFF4BB94FFF3BB94FFF3BB + 94FFF3BC94FFF4BB94FFF3BB94FFF3BB93FFF4BC93FFF3BB94FFF4BB93FFF4BB + 94FFF4BB94FFF4BB94FFDBDBD0FFA5A69BFF0000000000000000000000000000 + 000000000000000000000000000011C28CFF53E8B9FF35DDABFF34DDABFF34DD + ABFF34DEABFF34DEABFF53E8B9FF11C18CFF0000000000000000000000000000 + 000000000000000000000000000000000000000000000B317FB7215BCAFF5195 + F8FF0C5BDDFF0C5FE3FF0E60E3FF2672E6FF2A6CDDFF124FCBFF123AA3F4173F + A5EF1241AEFF1241ABF80E45B6FD0D4CCBFF206CE4FF2270E7FF0E60E3FF0C5B + DDFF5091F6FF5195F8FF0B317FB7000000000000000000000000000000000000 + 000000000000000000005A45376AF7DFC6FEF7DEC2FFF7DEC2FFF7DEC2FFF7DE + C2FFF7DFC2FFF7DFC3FFF7DFC3FFF8DFC3FFE2B695FF5D47386D000000000000 + 000000000000000000000000000000000000A5A69BFFEBB28CFFF4BD94FFF4BC + 95FFF4BC95FFF4BC95FFF5BD95FFF4BD95FFF4BC95FFF4BD95FFF4BD95FFF5BD + 95FFF4BC95FFF4BD95FFF4BD95FFF5BD95FFF5BD95FFF4BD95FFF4BD95FFF4BD + 95FFF4BD94FFF5BD94FFDBDCD0FFA5A69BFF0000000000000000000000000000 + 00000000000000000000000000000FC38DFF54E9BAFF37DDABFF37DDABFF37DD + ABFF37DDABFF37DDABFF54E9BAFF10C28DFF0000000000000000000000000000 + 000000000000000000000000000000000000000000000928699A2158C7FF579B + FDFF1C6CE6FF3781ECFF478AEBFF0D48C8FF0D40B8FE0D34A0F2000001030000 + 00000000000000000203061B486C0F3EA5F20D49C8FF2464D8FF478AEBFF1C6C + E6FF5698FCFF579BFDFF0928699A000000000000000000000000000000000000 + 0000000000000000000000000000B28B6FCDE8BC98FFE8BC98FFE8BC98FFE8BD + 98FFE8BD99FFE8BE99FFE8BE99FFE9BE99FF5E48386E00000000000000000000 + 000000000000000000000000000000000000A5A69BFFC98C6BFFC98C6BFFC98C + 6BFFC98C6BFFC98C6BFFC98C6BFFC98C6BFFC98C6BFFC98C6BFFC98C6BFFC98C + 6BFFC98C6BFFC98C6BFFC98C6BFFC98C6BFFC98C6BFFC98C6BFFC98C6BFFC98C + 6BFFC98C6BFFC98C6BFFDCDDD1FFA5A69BFF0000000000000000000000000000 + 00000000000000000000000000000EC38EFF79EDC8FF3ADCABFF39DCABFF39DC + ABFF39DCABFF39DDABFF79EDC8FF0FC38EFF0000000000000000000000000000 + 00000000000000000000000000000000000000000000061C4A6F1B50BEFF599C + FDFF97C3FAFF1859D4FF0D47C7FF0D36A4F70820629500030B11000000000000 + 000000000000000000000000000001040B110F40A9F70E46BCFF0D48C7FF97C3 + FAFF9BC8FDFF599CFDFF061C4A6F000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000C2C3B4FFC2C3B4FFC2C3B4FFC2C3 + B4FFC2C3B4FFC2C3B4FFC2C3B4FFC2C3B4FFC2C3B4FFC2C3B4FFC2C3B4FFC2C3 + B4FFC2C3B4FFC2C3B4FFC2C3B4FFC2C3B4FFC2C3B4FFC2C3B4FFC2C3B4FFC2C3 + B4FFC2C3B4FFC2C3B4FFC2C3B4FFC2C3B4FF0000000000000000000000000000 + 00000000000000000000000000000EC48FFF0EC48FFF0EC48FFF0EC48FFF0EC4 + 8FFF0EC48FFF0EC48FFF0EC48FFF0EC48FFF0000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000092963791143 + B8FF0C3296DC071C578501030C13000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000000001040C130C3A + 9ADC0E42B0FB1249BBFF00000203000000000000000000000000000000000000 + 000000000001000000020000000300000006000000090000000C000000100000 + 001100000014000000100000000D0000000C0000000600000005000000030000 + 0001000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00010000000300000005000000060000000C0000000E00000010000000140000 + 0011000000100000000C00000009000000060000000300000002000000010000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000200000004000000070000000C000000120000001C0E33246A339F + 70FF0E33247F0000002E00000029000000210000000D0000000A000000060000 + 0002000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000000001E000000320000 + 0052000000520000005200000052000000520000005200000052000000520000 + 0052000000520000005200000052000000520000005200000052000000520000 + 0052000000520000003200000000000000000000000000000000000000000000 + 0002000000070000000A0000000C0000001C00000021000000240F34247F339F + 70FF0000002E00000021000000110000000D0000000600000003000000020000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000F3424523AD6A6FF13BA + 8CFF3AD6A6FF0F34245200000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000002E54 + D4FF3569DCFF3569DCFF3569DCFF3569DCFF173BB6FF063384FF093889FF0938 + 89FF093889FF0C3C8FFF063384FF173BB6FF3568DCFF3568DCFF3568DCFF3568 + DCFF2E54D4FF0000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000000F3424523CD7A7FF32A0 + 71FF000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000F34245232A171FF13BA8CFF13BA + 8CFF13BA8CFF31A071FF0F342452000402050000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000002E54 + D4FF366DDDFF366DDDFF366DDDFF366CDDFF173BB6FF063384FF13469DFF1346 + 9DFF13469DFF0E3E92FF063384FF173BB6FF366CDDFF366CDDFF366CDDFF366C + DDFF2E54D4FF0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000F34245230A271FF17CA95FF31A1 + 72FF000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000F34245230A172FF35D5A5FF11BE8EFF12BD + 8EFF13BB8DFF35D5A5FF30A172FF0F3424520000000000000000000000000000 + 0000000000000000000000000000000000000000001800000021000000210000 + 00250000002A0000002A0000002A0000002A0000002A0000002A0000002A0000 + 002A0000002A0000002A0000002A0000002A0000002A0000002A000000280000 + 0021000000210000001B00000000000000000000000000000000000000002E54 + D4FF5799EBFF5799EBFF5799EBFF72B7FFFF173BB6FF063384FF1548A0FF1448 + A0FF14489FFF114297FF063384FF173BB6FF5799EBFF5799EBFF5799EBFF5799 + EBFF2E54D4FF0000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000F34245230A373FF39D6A6FF1FCE9AFF30A3 + 73FF000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000F34245230D4A3FF12BD8EFF12BD8EFF0DCB95FF0DCB + 96FF0DCB95FF12BD8EFF12BD8EFF30D4A3FF0F34245200040205000000000000 + 00000000000000000000000000000000000000000010BD8462F1E8A97FFFEEA9 + 7AFFEEA97AFFEEA97AFFEEA97AFFEEA97AFFEEA97AFFEEA97AFFEEA97AFFEEA9 + 7AFFEEA97AFFEEA97AFFEEA97AFFEEA97AFFEEA97AFFEEA97AFFEEA97AFFD595 + 70FF140E0B4A0000002700000000000000000000000000000000000000000000 + 0000D4D4D4FFBFBFBFFFBFBFBFFFBFBFBFFF9C9C9CFF063384FF194FA7FF184E + A7FF184EA7FF184EA5FF063384FF9C9C9CFFBFBFBFFFBFBFBFFFC3C3C3FFB3B3 + B3FF000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000F34245234D5A4FF10BF8EFF10BF8EFF30D4A2FF2DA5 + 75FF00000000000403060004030600040306000403060009060C000403060004 + 0306000403060004030600040306000302040000000000000000000000000000 + 0000000000000F3424522DA575FF12BE8FFF12BE8FFF0ECC97FF0ECC96FF0DCC + 96FF0ECC96FF0ECD97FF12BE8EFF12BF8FFF2DA575FF0F342452000000000000 + 00000000000000000000000000000000000000000000B57D5BEFF6BB91FFE09B + 73FFD5916AFFD6926BFFD8946CFFD8956DFFD9956DFFDA966FFFDB976FFFDB97 + 6FFFDB976FFFDD9971FFDE9971FFDE9971FFE09A72FFE09A72FFE09B73FFE09C + 74FFB07C5ECD0000000000000000000000000000000000000000000000000000 + 0000D4D5D5FFBFBFBFFFCBCBCBFFCDCDCDFF9C9C9CFF063384FF093889FF0938 + 89FF093889FF1951AAFF063384FF9C9C9CFFCBCBCBFFCBCBCBFFBFBFBFFFB3B3 + B3FF000000000000000000000000000000000000000000000000000000000000 + 00000008050A0F3424522CA675FF10C08FFF10C08EFF0DCA94FF37D6A5FF2BA7 + 76FF2CA676FF2CA676FF2CA676FF2BA676FF2BA676FF2BA675FF2BA676FF2CA6 + 76FF2CA675FF2CA676FF2BA675FF2CA676FF0000000000000000000000000000 + 00000F3424522CA676FF2AD3A2FF11C090FF0ECD98FF0ECD98FF0ECE97FF0ECD + 98FF0DCE97FF0ECE98FF0ECD98FF11C190FF2AD4A1FF2CA676FF0F3424520000 + 00000000000000000000000000000000000000000000B67E5CEEFDEFE2FFEDAC + 83FFE9A37AFFE9A37AFFE9A37AFFE9A37AFFE9A37AFFE9A37AFFE9A37AFFE9A3 + 7AFFE9A47AFFE9A47AFFE9A47BFFE9A47BFFE9A47BFFE9A47BFFE9A47BFFE19C + 74FFD3946FFB0000000000000000000000000000000000000000000000000000 + 0000D6D6D6FFC3C3C3FFD3D3D3FFD6D6D6FF9C9C9CFF063384FF1D58B0FF1D57 + B0FF1D57AFFF114498FF063384FF9C9C9CFFD6D6D6FFD3D3D3FFBFBFBFFFB3B3 + B3FF000000000000000000000000000000000000000000000000000000000000 + 00000F3424522BA777FF2ED4A2FF10C18FFF0DCC95FF0DCB95FF0DCB95FF3CD7 + A7FF3CD7A7FF3CD7A7FF3CD7A7FF3CD7A7FF3CD7A7FF3CD7A7FF3CD7A7FF3CD7 + A7FF3CD7A7FF3CD7A7FF3CD7A7FF2AA777FF0000000000000000000000000F34 + 245224D4A1FF10C995FF10C995FF0ED09BFF0ED09AFF0ED09AFF0ED09BFF0ED0 + 9AFF0ED09AFF0ED09AFF0ED09AFF0ED09AFF10C996FF10C995FF24D4A1FF0F34 + 24520000000000000000000000000000000000000000B67E5DECF4C196FFEDB1 + 87FFE19C74FFEAA57CFFEAA57CFFEAA67DFFEAA67DFFEAA67DFFEAA67DFFEAA6 + 7DFFEAA67DFFEBA77DFFEBA77EFFEBA77EFFEBA87EFFEBA87EFFEBA87EFFEAA7 + 7EFFE6A57BFFC88D6BEE00000000000000000000000000000000000000000000 + 0000D9D9D9FFD0CFCFFFD8D8D9FFD8D9D9FF9C9C9CFF063384FF215EB8FF205D + B7FF205EB7FF1952A9FF063384FF9C9C9CFFD9D8D8FFD9D8D8FFC4C4C4FFB3B3 + B3FF000000000000000000000000000000000000000000000000000604080F34 + 245219C895FF0FC492FF0DCE98FF0DCF98FF0DCE98FF0ECE98FF10C18FFF10C1 + 8FFF10C18FFF10C18FFF10C18FFF10C18FFF10C18FFF10C18FFF10C18FFF10C1 + 8FFF10C18FFF10C18FFF19D29FFF28AA7AFF00000000000000000F34245227AB + 7AFF0FCC98FF0FCC97FF0ED19CFF0ED19CFF0ED19CFF0ED19BFF0FD19CFF0ED2 + 9CFF0ED19CFF0ED29BFF0ED19CFF0ED29CFF0ED19BFF0FCB97FF0FCC98FF27AA + 7AFF0F34245200000000000000000000000000000000B7805EEBF3C297FFCC8F + 69FFE19E76FFEAA67DFFEBA87EFFEBA87EFFEBA87EFFEBA87FFFECA97FFFECA9 + 7FFFECA97FFFECA97FFFECAA80FFECAA80FFECAA80FFECAA80FFEDAA80FFEDAB + 81FFE9A77EFFDB9C76FE00000000000000000000000000000000000000000000 + 0000DADADAFFD6D6D6FFDADADAFFDADADBFF9C9C9CFF063384FF3786D5FF3786 + D5FF3786D5FF1E5AB2FF063384FF9C9C9CFFDADADAFFDADADAFFCCCCCCFFB3B3 + B3FF0000000000000000000000000000000000000000000000000F34245226AC + 7BFF0FC793FF0DCF99FF0ECF9AFF0DD099FF0ED099FF0ED09AFF0DD099FF0ED0 + 99FF0DD099FF0ED099FF0DD09AFF0DCF9AFF0DCF9AFF0DD09AFF0DD099FF0DD0 + 9AFF0EC995FF10C18FFF20D6A2FF26AB7BFF000000000F34245226AC7BFF1ED4 + A1FF0FCF9AFF0ED39DFF0ED39DFF0ED29DFF0ED39DFF0ED29DFF0FD39DFF0ED3 + 9DFF0ED29DFF0ED39DFF0ED39DFF0ED39DFF0FD29DFF0ED39CFF10CE99FF1ED4 + A1FF26AC7AFF0F342452000000000000000000000000B77F5EE9F3C397FFC286 + 61FFE8AB82FFE5A47AFFECAA80FFEDAA80FFEDAB81FFEDAB81FFEDAB81FFEDAB + 81FFEDAC82FFEDAC82FFEDAC82FFEEAC83FFEEAD83FFEEAD83FFEEAD84FFEEAD + 84FFEDAD83FFE9AA80FF00000000000000000000000000000000000000000606 + 060BDCDBDBFFDCDCDBFFDBDCDBFFDBDBDCFF9C9C9CFF063384FF2260BAFF2260 + BAFF2260BAFF2260BAFF063384FF9C9C9CFFDBDBDBFFDBDBDCFFD3D3D3FFADAD + ADFF2C2C2C4B000000000000000000000000000000000F34245224AD7CFF19CB + 99FF0DD19BFF0ED19BFF0ED19BFF0ED19BFF0DD19BFF0DD19AFF0DD19BFF0DD2 + 9BFF0ED19BFF0ED19BFF0DD19BFF0DD19BFF0DD29BFF0DD19BFF0ED29BFF0ED1 + 9BFF0DD19BFF0ECA96FF27D9A6FF24AD7CFF0F342452D0F5EBFF57E7BEFF57E7 + BEFF56E9BFFF57EABFFFCEF5EBFF0ED59FFF0ED5A0FF0ED5A0FF0ED5A0FF0ED6 + A0FF0ED5A0FF0FD6A0FF0ED59FFF0ED59FFF23DBA9FFCEF5EBFF56EABFFF57E7 + BEFF57E7BEFFD0F5EBFF0F3424520000000000000000B78060E7F2C499FFCC90 + 6AFFEEC499FFEBAC83FFEDAD84FFF0B086FFF0B187FFF0B187FFF1B188FFF1B1 + 88FFF1B288FFF1B388FFF1B389FFF1B389FFF1B489FFF1B489FFF2B48AFFF2B4 + 8BFFF2B48BFFF3B58BFF936A50AD000000000000000000000000000000001935 + BFFF9F9F9FFFD4D4D5FFDEDFDEFFDFDEDEFF9C9C9CFF3786D5FF3786D5FF3786 + D5FF3786D5FF3786D5FF3786D5FF9C9C9CFFDEDEDFFFDEDEDFFFD1D0D0FFA3A3 + A3FE1226ADFF0000000000000000000000000F34245217D09CFF0FCF9AFF0ED4 + 9EFF0DD49EFF0ED49EFF0DD49EFF0ED49EFF0ED49EFF0ED49EFF0ED49EFF0ED4 + 9EFF0ED49DFF0ED49EFF0DD49EFF0ED49EFF0ED49EFF0ED49EFF0DD49EFF0ED4 + 9EFF0ED49EFF0ED49EFF34DFB0FF21B17FFF21B17EFF21B17FFF21B17FFF20B1 + 7FFF21B17FFF21B17FFF19B885FF0FD7A2FF0ED7A1FF0ED7A1FF0FD7A1FF0FD6 + A1FF0FD7A2FF0FD6A1FF0FD7A1FF0ED7A1FF27DEACFF18B985FF21B07EFF21B1 + 7FFF21B17EFF21B17EFF21B17FFF0000000000000000B88160E5F2C79AFFD195 + 6EFFE5B287FFEFC094FFECAF85FFF2B48AFFF2B48AFFF2B48BFFF3B58BFFF3B6 + 8BFFF3B68BFFF3B68BFFF3B68CFFF3B68CFFF4B78DFFF4B78DFFF4B78DFFF4B8 + 8EFFF4B88EFFF4B88EFFCA926FEE000000000000000000000000000000001935 + BFFFA1A1A1FF9F9F9FFFD5D5D5FFE0DFDFFFDFE0E0FFE0DFE0FF2A8F60FF0CC7 + 90FF2A8F60FFE0E0E0FFE0DFE0FFE0E0DFFFDFE0E0FFD2D2D2FF9C9C9CFF4275 + DBFF1226ADFF00000000000000000000000020B27FFF0ED6A0FF0ED5A0FF0ED6 + 9FFF0ED69FFF0ED6A0FF0ED59FFF0ED69FFF0ED69FFF0ED69FFF0ED5A0FF0ED5 + A0FF0ED69FFF0ED59FFF0ED59FFF0ED69FFF0ED5A0FF0ED59FFF0ED5A0FF0ED6 + 9FFF0ED6A0FF0ED5A0FF3CE2B4FF20B280FF0000000000000000000000000000 + 0000000000000000000017BB87FF0FD8A3FF0FD8A3FF0FD8A3FF0FD8A2FF0FD9 + A3FF0FD8A2FF0FD8A2FF0ED9A3FF0ED8A3FF2CE0AEFF17BA87FF000000000000 + 00000000000000000000000000000000000000000000B88261E4F1C89BFFD69A + 72FFD79B73FFF0C99CFFF2B58BFFF4B78DFFF4B88DFFF4B88EFFF4B88EFFF4B9 + 8EFFF4B98EFFF5B98FFFF5B98FFFF5BA8FFFF6BA90FFF6BB90FFF6BB90FFF6BB + 90FFF6BB90FFF6BB90FFE8AD85FF624836730000000000000000000000001935 + BFFF4275DBFFA2A2A2FF9F9F9FFFE1E1E1FFE1E1E1FFE1E1E1FF0CC790FF2A8F + 60FF2E54D4FF2A8F60FFE1E1E1FFE1E1E1FFD2D2D2FF9D9D9DFFA4A5A5FF4A8D + EBFF1226ADFF000000000000000000000000063C2C5233E1B1FF0FD7A1FF0ED7 + A1FF0FD7A1FF0ED7A1FF0ED7A1FF0ED7A1FF0ED7A1FF0ED6A1FF0ED7A1FF0ED7 + A1FF0ED7A1FF0ED7A1FF0ED7A1FF0ED7A2FF0ED7A1FF0ED7A1FF0ED7A1FF0FD6 + A1FF0ED7A1FF0ED7A1FF42E5B7FF1FB381FF0000000000000000000000000000 + 0000000000000000000014BD8AFF0FDBA5FF0FDBA6FF0FDBA6FF0FDBA6FF0FDA + A5FF0FDBA6FF0FDBA5FF0FDAA6FF0FDBA5FF35E4B4FF14BD8AFF000000000000 + 00000000000000000000000000000000000000000000B88362E1EFC99CFFDFA3 + 7BFFDFA37BFFE2A77FFFFFFAF1FFFDF1DFFFFDEFDBFFFDEDD9FFFCEAD2FFFBE9 + CFFFFAE7CCFFF9E2C4FFF9E1C1FFF8DFBEFFF8DDBAFFF7DCB8FFF7DCB8FFF6DB + B7FFF6DAB6FFF6DAB6FFF5D9B5FFD7A481FA0000000000000000000000001935 + BFFF3562DAFF5092EFFF4275DBFFA0A0A0FFD8D9D9FFE4E3E3FF154BA3FFF1B1 + 87FFF1B187FFE4E4E3FFE3E3E3FFD5D5D5FFA4A4A5FF4275DBFF4B8EECFF1934 + BFFF1226ADFF00000000000000000000000000000000063C2C521BB684FF46E7 + BAFF0FDAA4FF0FDAA4FF0EDAA4FF0EDAA4FF0EDAA5FF0ED9A4FF0FDAA4FF0EDA + A4FF0FDAA4FF0EDAA4FF0EDAA4FF0EDAA4FF0FDAA4FF0FDAA4FF0FDAA4FF0FDA + A4FF0EDAA4FF0FDAA4FF4EE9BEFF1BB783FF0000000000000000000000000000 + 0000000000000000000013BF8BFF0FDCA7FF0FDCA7FF0FDCA7FF0FDCA7FF0FDC + A6FF0FDCA6FF10DCA7FF0FDCA6FF0FDCA7FF39E6B7FF13BF8BFF000000000000 + 00000000000000000000000000000000000000000000B98363E0EFCA9CFFE3A8 + 7FFFE3A87FFFE3A87FFFE7AE87FFE9AF85FFE9AF85FFE9AF85FFE9AF85FFE9AF + 85FFE9AF85FFE9AF85FFE9AF85FFE9AF85FFE9AF85FFE9AF85FFE9AF85FFDBA0 + 79FF91674EB18A624AA7886149A43D2C21490000000000000000000000000C17 + 3A462E54D4FF3563DAFF5699F1FFA1A1A3FFA0A0A0FFDADAD9FF154BA3FFF1B1 + 87FFF1B187FFE5E5E5FFD5D5D6FF9D9D9DFF4275DBFF4B8EECFF2447CAFF1226 + ADFF060E34460000000000000000000000000000000000000000063C2C521AB8 + 85FF0EDBA5FF0FDBA6FF0FDBA6FF0FDBA5FF0FDCA5FF0FDCA6FF0EDBA5FF0EDB + A6FF0FDCA5FF0FDBA6FF0EDBA5FF0EDCA6FF0FDCA6FF0EDBA5FF0FDBA6FF0FDB + A6FF0FDBA6FF0EDBA6FF53EBC1FF19B884FF0000000000000000000000000000 + 0000000000000000000012C08CFF0FDDA8FF0FDDA8FF10DDA8FF0FDDA8FF0FDD + A8FF0FDDA8FF0FDEA8FF0FDEA8FF0FDDA8FF3DE7BAFF12C08CFF000000000000 + 00000000000000000000000000000000000000000000B88463DEEFCA9DFFE8AD + 84FFEFB58AFFEFB58BFFEFB58BFFEFB48AFFEEB48AFFEEB48AFFEDB389FFEDB3 + 89FFEDB389FFECB288FFECB188FFECB187FFEBB086FFEAB086FFEAAF86FFDCA0 + 79FF17100B1E0000000000000000000000000000000000000000000000000000 + 00001935BFFF2E54D4FF3664DAFF4275DBFFA1A1A3FFA0A0A0FF063384FF0633 + 84FF063384FFD6D6D6FF9D9D9DFFA4A5A5FF5093EFFF244ACBFF1934BFFF060E + 334500000000000000000000000000000000000000000000000000000000063C + 2C5258EDC3FF0FDCA7FF0FDDA7FF0FDDA7FF0FDDA7FF0FDCA7FF0EDCA7FF0EDD + A7FF0FDDA7FF0EDDA7FF0FDDA7FF0EDDA7FF0FDCA7FF0FDCA7FF0EDDA7FF0FDD + A7FF0EDDA7FF0FDDA7FF56EDC2FF18B985FF0000000000000000000000000000 + 0000000000000000000010C28DFF10E0ABFF10E0ABFF0FE0ABFF0FE0AAFF10E0 + AAFF10E0AAFF0FDFAAFF0FE0ABFF0FDFAAFF45EBBDFF10C28DFF000000000000 + 00000000000000000000000000000000000000000000BA8665DCEECC9FFFF6BC + 91FFF6BC91FFF6BC91FFF6BC91FFF6BC91FFF6BC91FFF6BC91FFF6BC91FFF6BC + 91FFF6BC91FFF6BC91FFF6BC91FFF6BC91FFF6BC91FFF6BC91FFF6BC91FFE2A7 + 7FFF140E0A1A0000000000000000000000000000000000000000000000000000 + 0000000000000B1535401935BFFF3664DBFF579BF2FF4275DBFFA0A0A0FFDBDC + DBFFD8D7D8FFA3A4A7FF4275DBFF579AF1FF878CA6FF1226ADFF060D2F400000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000063C2C5216BC88FF6BF2CCFF0FDFA9FF0FE0AAFF0FDFAAFF21E3B1FF16BC + 89FF13C08AFF13C08AFF13C08AFF13C08AFF13C08AFF13C08AFF13C08AFF13C0 + 8AFF13C08AFF13C08AFF13C08AFF13C08AFF0000000000000000000000000000 + 000000000000000000000FC38EFF0FE1ACFF0FE1ABFF0FE1ACFF10E1ACFF0FE1 + ACFF0FE1ACFF0FE1ABFF10E1ABFF0FE1ACFF4AECC0FF0FC38EFF000000000000 + 00000000000000000000000000000000000000000000BC8867DCEDCC9FFFF6BC + 91FFF6BC91FFF6BC91FFF6BC91FFF6BC91FFF6BC91FFF6BC91FFFADDB8FFFADD + B8FFFADDB8FFFADDB8FFFADDB8FFFADDB8FFFADDB8FFFADDB8FFFADDB8FFD198 + 73F4050302070000000000000000000000000000000000000000000000000000 + 000000000000000000000B14323D2E54D4FF3664DBFF589BF2FFA0A1A4FFA0A0 + A0FF9D9D9DFF4275DBFF579BF2FF061D94FFABABABFF050C2D3D000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000063C2C5214BD89FF10E0ABFF10E1ABFF10E0ABFF2DE6B6FF14BD + 89FF000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000FC38EFF0FE2ADFF10E2ADFF0FE2ADFF0FE2ADFF0FE2 + ADFF10E2ADFF10E2ADFF10E2ADFF10E2ADFF4DEDC1FF0FC38EFF000000000000 + 00000000000000000000000000000000000000000000BF8A69E0EDCD9FFFF6BC + 91FFF6BC91FFF6BC91FFF6BC91FFF6BC91FFF6BC91FFF3D2AEFFDDAC8EFFDDAC + 8EFFDDAC8EFFDDAC8EFFDDAC8EFFDDAC8EFFDDAC8EFFDDAC8EFFDDAC8EFF3B2B + 2045000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000001935BFFF2E54D4FF3664DBFF4275DBFF9FA1 + A5FF9D9FA7FF589CF2FF061D94FFA0A5BFFFABABABFF00000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000063C2C527CF5D2FF0FE2ACFF10E1ADFF3AEABBFF13BE + 8BFF000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000EC48FFF10E4AFFF10E4AFFF10E4AFFF10E4AFFF10E4 + AEFF10E4AFFF10E4AFFF10E4AFFF0FE4AFFF53EFC5FF0EC48FFF000000000000 + 0000000000000000000000000000000000000000000087634C99D9A686FAD89D + 78FAD69C77F8D69B77F7D69B77F7D49A75F5C18B69E4271C1531000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000A122E381935BFFF3563DAFF72B7 + FFFF72B7FFFF1934BFFFABABABFFCCCCCCFFABABABFF00000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000063C2C5211C18CFF89F8D7FF50EEC4FF12C1 + 8CFF000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000EC48FFF10E5B0FF10E5B0FF10E5B0FF10E5B0FF10E5 + B0FF10E5B0FF10E5B0FF0FE5B0FF0FE4B0FF55F0C5FF0EC48FFF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000009112C352E54D4FF3F82 + E6FF3F82E6FF1226ADFFABABABFFCCCCCCFFABABABFF00000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000063C2C5210C28DFF57F0C7FF11C2 + 8DFF000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000EC48FFF0FE5B1FF10E6B0FF10E6B0FF10E5B0FF0FE5 + B1FF10E6B1FF10E5B0FF10E6B1FF10E6B1FF57F0C8FF0EC48FFF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000001935BFFF3F82 + E6FF3F82E6FF050A2634ABABABFFE4EBEBFFABABABFF00000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000063C2C52F5F9F7FF10C2 + 8DFF000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000EC48FFF0EC48FFF0EC48FFF0EC48FFF0EC48FFF0EC4 + 8FFF0EC48FFF0EC48FFF0EC48FFF0EC48FFF0EC48FFF0EC48FFF000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000509 + 181E0206161E0000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000EC4 + 8FFF000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000003200000040000000520000 + 0052000000520000005200000052000000520000005200000052000000520000 + 0052000000520000005200000052000000520000005200000052000000520000 + 0052000000520000005200000032000000320000000000000017000000270000 + 0032000000400000004000000040000000400000004100000047000000400000 + 0040000000400000004500000047000000400000004000000040000000400000 + 0040000000250000001A00000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000343433FF232323FF2222 + 22FF222222FF212121FF212121FF202020FF202020FF1F1F1FFF1F1F1FFF1E1E + 1EFF1E1E1EFF1D1D1DFF1D1D1DFF1D1D1DFF1C1C1CFF1C1C1CFF1B1B1BFF1B1B + 1BFF1B1B1BFF1A1A1AFF343433FF000000000000000000000000000000000534 + 6AFF12589FFF12589FFF12589FFF12589FFF12589FFF12589FFF12589FFF1258 + 9FFF12589FFF12589FFF12589FFF12589FFF12589FFF12589FFF12589FFF1258 + 9FFF05346AFF000000000000000000000000000000179D9E9EFF9D9E9EFF9D9E + 9EFF9D9E9EFF9D9E9EFF9D9E9EFF9D9E9EFF9D9E9EFF9D9E9EFF9D9E9EFF9D9E + 9EFF9D9E9EFF9D9E9EFF9D9E9EFF9D9E9EFF9D9E9EFF9D9E9EFF9D9E9EFF9D9E + 9EFF9D9E9EFF9D9E9EFF00000017000000000000000000000000000000150000 + 001BE2B798FFE1B696FFE1B696FFE1B696FFE1B696FFE1B696FFE1B696FFE1B6 + 96FFE1B696FFE1B696FFE1B696FFE1B696FFE1B696FFE1B696FFE1B696FFE1B6 + 96FFE1B696FFE1B696FF000000110000000000000000363635FFF4E0BDFFF7E2 + BFFFF7E2BEFFF7E2BEFFF7E1BDFFF7E1BCFFF7E1BCFFF7E0BBFFF7E0BBFFF7E0 + BAFFF7E0BAFFF7E0BAFFF7E0BAFFF7E0BAFFFAEFCCFFF9EED0FFF7EBCFFFF5E5 + C9FFF2DFC0FFF2DAB6FF343433FF000000000000000000000000000000000534 + 6AFF0F5094FF073B75FF073A74FF073973FF073972FF073871FF063770FF0637 + 6FFF06376FFF06366EFF06356DFF05356DFF05356CFF05346BFF05346BFF0E50 + 94FF05346AFF00000000000000000000000000000000CCCCCCFFCCCCCCFFCCCC + CCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCC + CCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCC + CCFFCCCCCCFFCCCCCCFF00000000000000000000000000000000000000000000 + 0000F9E5C4FFF9E5C4FFF9E5C4FFF9E5C4FFF9E5C4FFF9E5C4FFF9E5C4FFF9E5 + C4FFF9E5C4FFF9E5C4FFF9E5C4FFF9E5C4FFF9E5C4FFF9E5C4FFF9E5C4FFF9E5 + C4FFF9E5C4FFE2B797FF000000000000000000000000393937FFF7E3C1FFF7E3 + C1FFF7E2C0FFF7E2BFFFF7E2BEFFF7E2BEFFF7E2BEFFF7E1BDFFF7E1BCFFF7E0 + BBFFF7E0BBFFF7E0BAFFF7E0BAFFF7E0BAFFF8E3BCFFFCF3CEFFFDF7D8FFFEF9 + E4FFFEF9E7FFF3DEBBFF343433FF000000000000000000000000000000000534 + 6AFF0F5195FFF6DDB6FFF6DDB5FFF6DDB4FFF6DDB4FFF6DCB3FFF6DCB3FFF6DC + B3FFF6DCB2FFF6DCB2FFF6DCB2FFF9E9C1FFFAEDD2FFF9E9CDFFF7E1BDFF0F51 + 95FF05346AFF00000000000000000000000000000000CCCCCCFFCCCCCCFFCCCC + CCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCC + CCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCCCCFFCCCC + CCFFCCCCCCFFCCCCCCFF00000000000000000000000000000000000000000000 + 0000F8E2BBFFF3D6B1FFF3D6B1FFF3D6B1FFF3D6B1FFF3D6B1FFF3D6B1FFF3D6 + B1FFF3D6B1FFF3D6B1FFF3D6B1FFF3D6B1FFF3D6B1FFF3D6B1FFF3D6B1FFF3D6 + B1FFF8E0BAFFE2B898FF0000000000000000000000003E3D3BFFF8E4C4FFF8E4 + C4FFF7E4C3FFF7E4C3FFF7E3C2FFF7E3C1FFD8C7A9FF8C8171FFF7E2BFFFF7E2 + BEFFF7E2BEFFB4A48CFF756C5DFF736A5CFFF5DEBAFFF7E0BBFFF7E0BBFFFCF5 + D3FFFDF7DBFFF8EBD0FF343433FF000000000000000000000000000000000534 + 6AFF115499FFF6DFB9FFF6DFB8FFF6DEB7FFF6DEB7FFF6DDB5FFF6DDB4FFF6DD + B4FFF6DDB4FFF6DDB4FFF6DDB4FFF6DDB4FFF8E5BBFFFCF5D3FFFDF6DDFF1154 + 99FF05346AFF00000000000000000000000000000000CDCDCDFFCCCCCCFFDF98 + 71FFEBA279FFEBA279FFEAA279FFEAA279FFEAA279FFEAA279FFEAA279FFFCC8 + A5FFEAA279FFEAA279FFEBA279FFEAA279FFEAA279FFEAA279FFEAA279FFDF98 + 71FFCCCCCCFFCCCCCCFF00000000000000000000000000000000000000000000 + 0000F8E1BEFFF3D6B1FFF5DAB5FFF8E1BBFFF8E0BBFFF8E1BBFFF8E1BBFFF8E1 + BBFFF8E1BBFFF8E1BCFFF8E1BBFFF8E1BBFFF9E1BCFFF8E1BBFFF8E1BBFFF4D7 + B2FFF8E1BBFFE3B99AFF00000000000000000000000040403CFFF8E5C7FFF8E5 + C7FFF8E4C5FFF8E4C4FFF7E4C3FFF7E4C3FFB7AA94FF262626FFF7E3C1FFF7E2 + C0FFF7E2C0FF1D1D1DFF1C1C1CFF1F1F1EFF615A4EFFF5DFBBFFF7E1BCFFF7E1 + BCFFFBEFCCFFFAF1D2FF343433FF000000000000000000000000000000000535 + 6BFF11559BFFF6E0BBFFF6DFB9FFF6DFB8FFF6DEB8FFF6DEB7FFF6DDB6FFF6DD + B6FFF6DDB5FFF6DDB4FFF6DDB4FFF6DDB4FFF6DDB4FFF7DFB7FFFBF1CCFF1155 + 9AFF05356BFF00000000000000000000000000000000CECECEFFCDCDCDFFDE97 + 71FFEBA37AFFEBA27AFFEAA37AFFE9A178FFEAA179FFEBA37AFFEAA27AFFFCC8 + A5FFEAA27AFFEAA279FFEBA379FFEBA27AFFEAA37AFFEBA37AFFEBA27AFFDF98 + 71FFCDCDCDFFCDCDCDFF00000000000000000000000000000000000000000000 + 0000F8E2BFFFF3D7B2FFF8E2BCFFF8E1BCFFF8E1BCFFF8E1BCFFF8E2BCFFF8E1 + BCFFF8E1BCFFF8E1BCFFF8E2BCFFF8E1BCFFF8E1BCFFF9E1BCFFF8E1BCFFF5DA + B5FFF8E1BCFFE3BA9BFF00000000000000000000000042423EFFF8E6C9FFF8E6 + C9FFF8E5C8FFF8E5C7FFF8E4C5FFF8E4C4FFB9AB95FF292929FFF7E4C3FFF7E3 + C2FFE2D0B2FF252524FFC9B79DFFEDD9B7FF1B1B1BFFAA9C85FFF7E2BEFFF7E1 + BDFFF7E1BCFFF9E9C3FF343433FF000000000000000000000000000000000535 + 6CFF12569DFFF6E0BCFFF6E0BBFFF6E0BAFFF6E0BAFFF6DFB9FFF6DEB7FFF6DE + B7FFF6DEB7FFF6DDB6FFF6DDB5FFF6DDB5FFF6DDB5FFF6DDB5FFF6DEB5FF1256 + 9DFF06356CFF00000000000000000000000000000000CFCFCFFFCECECEFFDB94 + 6EFFEBA37AFFEAA37AFFE8A178FFDC9770FFE09971FFE8A079FFEAA37AFFFCC8 + A5FFEBA47AFFEBA37AFFEBA37BFFEBA37AFFEBA37AFFEBA37AFFEAA47BFFDF98 + 71FFCECECEFFCECECEFF00000000000000000000000000000000000000000000 + 0000F8E3BFFFF4D8B3FFF8E2BDFFF8E2BDFFF8E2BDFFF8E1BDFFF9E2BCFFF8E2 + BDFFF8E2BDFFF8E2BDFFF8E2BDFFF8E2BCFFF8E1BDFFF8E1BCFFF8E2BDFFF5DB + B6FFF8E1BDFFE3BC9CFF000000000000000000000000474742FFF8E7CCFFF8E7 + CCFFF8E7CBFFF8E7CBFFF8E6CAFFF8E6C9FFBBAF9AFF303030FFF8E5C7FFF8E4 + C5FFF8E4C5FFF7E4C3FFF7E4C3FFF7E4C3FF222222FF766E61FFF7E3C1FFF7E2 + C0FFF7E2BFFFF7E2BFFF343433FF000000000000000000000000000000000637 + 6FFF1359A0FFF7E2C0FFF7E2BFFFF7E2BEFFF7E2BEFFF6E0BDFFF6E0BBFFF6E0 + BBFFF6E0BBFFF6DFBAFFF6DFB9FFF6DFB9FFF6DFB9FFF6DEB8FFF6DEB8FF1359 + A1FF06366FFF00000000000000000000000000000000D1D1D1FFD0D0D0FFCC87 + 63FFD18C68FFCF8965FFCA8562FFCE9B81FFC7825FFFD18C68FFEBA47BFFFCC8 + A5FFECA57CFFECA57CFFE8A37BFFE9A27AFFEBA57CFFEBA57CFFECA57CFFDF9A + 73FFD0D0D0FFD0D0D0FF00000000000000000000000000000000000000000000 + 0000F9E4C3FFF4DAB5FFF8E2BFFFF8E3BFFFF8E3BFFFF9E3BFFFF8E2BEFFF8E3 + BEFFF9E3BFFFF8E2BFFFF8E2BFFFF8E3BFFFF8E2BFFFF8E2BEFFF8E3BEFFF5DC + B8FFF8E2BFFFE5BE9FFF0000000000000000000000004A4944FFF8E8CEFFF8E8 + CEFFF8E7CDFFF8E7CCFFF8E7CBFFF8E7CBFFBCB09DFF333333FFF8E6C9FFF8E5 + C8FFF6E3C5FF56524CFFBDAF99FFC9B9A1FF262626FFAB9F8BFFF7E4C3FFF7E3 + C2FFF7E3C1FFF7E3C1FF343433FF000000000000000000000000000000000737 + 70FF135AA3FFF7E3C1FFF7E2C0FFF7E2C0FFF7E2C0FFF7E2BFFFF7E1BEFFF7DF + BCFFF7E0BAFFF7E1BBFFF7E0BAFFF7E0BAFFF7E0BBFFF7E0BAFFF7E0BAFF135B + A3FF073771FF00000000000000000000000000000000D2D2D2FFD1D1D1FFD7A7 + 8EFFC78360FFCD8E6FFFDBBCACFFE4E2E1FFD49E81FFC98461FFE59F78FFFBC7 + A4FFEBA67DFFE6A279FFDE9A73FFDC9770FFEAA57DFFECA67DFFECA67DFFDF9A + 73FFD1D1D1FFD1D1D1FF00000000000000000000000000000000000000000000 + 0000F8E4C5FFF6DEBAFFF9E3BFFFF8E2BFFFF8E3C0FFF8E3C0FFF8E3C0FFF9E3 + C0FFF8E2C0FFF8E3C0FFF8E3BFFFF8E3C0FFF9E3C0FFF7E2BEFFF9E1BEFFF6DD + B9FFF7E1BDFFE5BFA0FF0000000000000000000000004C4C46FFF9E9CFFFF9E9 + CFFFF8E8CEFFF8E8CEFFF8E7CDFFF6E5CAFFBDB19FFF373737FFF8E7CBFFF8E6 + CAFFF8E6CAFF2E2E2EFF2D2D2DFF2C2C2CFF6E685EFFF7E3C3FFF8E4C4FFF7E4 + C3FFF7E4C3FFF7E4C3FF343433FF000000000000000000000000000000000738 + 72FF145BA4FFF8E3C3FFF7E3C2FFF7E3C1FFF7E3C1FFF7E2C0FFF7E2BFFFF7E1 + BDFFF6DFBAFFF7DFBAFFF7E1BBFFF7E1BCFFF7E1BCFFF7E0BBFFF7E0BBFF145C + A5FF073872FF00000000000000000000000000000000D3D3D3FFD2D2D2FFE6E4 + E3FFDFC4B5FFE6E4E3FFE6D6CCFFE8BBA1FFE5DED9FFCE906FFFDA956FFFF5BF + 9DFFEAA57DFFD9946DFFCB8763FFCA8663FFE8A37AFFEBA77EFFECA77EFFE09B + 74FFD2D2D2FFD2D2D2FF00000000000000000000000000000000000000000000 + 0000F9E5C5FFF7DFBDFFF8E3C0FFF9E3C0FFF9E3C1FFF8E3C0FFF8E3C0FFF9E3 + C0FFF9E3C0FFF8E2C0FFF9E3C1FFF9E4C1FFF7E2C0FFF8E3BFFFF7E2BFFFF5DD + BAFFF7E0BEFFE6C0A3FF000000000000000000000000515149FFF9EAD2FFF9EA + D2FFF9E9D1FFF9E9D1FFF9E9D0FF464544FF3E3E3EFF3D3D3DFFF8E8CEFFF8E7 + CDFFF8E7CDFF353535FF9E9485FFE2D3B9FFE2D2B8FFF3E2C4FFF8E6C9FFF8E5 + C8FFF8E5C7FFF8E5C7FF363634FF00000000000000000000000000000000073A + 76FF155EA9FFF8E5C4FFF8E4C3FFF8E4C3FFF8E4C3FFF8E4C3FFF7E3C2FFF7E2 + C1FFF6E1BEFFF5DAB4FFF5DCB3FFF6DEB9FFF7E3C0FFF7E2BFFFF7E2BEFF155F + A9FF083A76FF00000000000000000000000000000000D5D5D5FFD4D4D4FFE19C + 75FFECA980FFECA980FFEDA980FFEDA980FFECAA82FFE9DAD1FFCA8662FFCE8D + 6BFFCB8764FFE4D5CEFFE9E5E3FFDFBFAEFFD08D68FFE29F77FFECA87FFFE09C + 75FFD4D4D4FFD4D4D4FF00000000000000000000000000000000000000000000 + 0000F9E6C9FFF7E1BFFFF9E4C2FFF8E4C3FFF8E4C2FFF9E4C2FFF8E4C2FFF9E4 + C2FFF7E3C2FFF7E1BFFFF5DEBDFFF5DFBDFFF5DFBEFFF5DEBEFFF5DEBDFFF3DC + BAFFF3DCBCFFE8C3A5FF00000000000000000000000053534BFFF9EBD4FFF9EB + D4FFF9EAD3FFF9EAD2FFF9E9D1FFE1D3BDFF5D5B57FF414141FFF9E9CFFFF8E8 + CEFFF8E8CEFF393939FF383838FF363636FF333333FFCBBDA7FFF8E7CBFFF8E6 + CAFFF8E6C9FFF8E6C9FF363635FF00000000000000000000000000000000083B + 78FF1660ABFFF8E5C7FFF8E5C5FFF8E5C4FFF8E5C4FFF8E4C3FFF8E4C3FFF8E4 + C3FFF8E3C2FFF5DFB7FFF5DBB2FFF5DCB4FFF7E1BEFFF7E3C0FFF7E3C0FF1660 + ABFF083C78FF00000000000000000000000000000000D7D7D7FFD6D6D6FFEBB1 + 8FFFFCC9A6FFFCC9A6FFFCC9A6FFFCC9A6FFFCC9A6FFF9CAABFFDEB49DFFC887 + 65FFD6A991FFEBCDBAFFF4C4A6FFECE7E4FFCC8B69FFDCA07EFFF3BD9BFFEBB1 + 8FFFD5D5D5FFD5D5D5FF00000000000000000000000000000000000000000000 + 0000F9E7CAFFF7E2C0FFF9E5C4FFF8E4C3FFF9E5C4FFF8E5C4FFF9E5C3FFF9E4 + C4FFF8E3C1FFF4DEBEFFF2DCBCFFF3DDBDFFF4DDBEFFF5DEBEFFF4DEBDFFF4DD + BAFFF4DEBDFFE8C5A7FF00000000000000000000000053534BFFF9ECD5FFF9EC + D5FFF9EBD4FFF9EBD4FFF9EAD3FFF9EAD2FFDACEB9FF504F4DFFF9E9D1FFF9E9 + D0FFF9E9D0FF6B6760FF6A6660FF69655FFF67635CFFD7C9B1FFF8E7CCFFF8E7 + CBFFF8E7CBFFF8E7CBFF383836FF00000000000000000000000000000000093C + 7AFF1662ADFFF8E6C9FFF8E5C8FFF8E5C7FFF8E5C7FFF8E5C5FFF8E4C4FFF8E4 + C3FFF8E4C3FFF8E1BFFFF5DFB8FFF4DAB0FFF5DFBAFFF7E1BFFFF7E3C2FF1661 + ADFF093D7AFF00000000000000000000000000000000D8D8D8FFD7D7D7FFE19E + 77FFEDAB82FFEEAB82FFEEAB82FFEDAB82FFEDAB82FFEDAB82FFEEE9E7FFE7D1 + C3FFECE3DEFFEBA981FFEDAB82FFEBB99AFFD29B7EFFCA8663FFDB9772FFE19E + 77FFD7D7D7FFD7D7D7FF00000000000000000000000000000000000000000000 + 0000F9E8CCFFF8E5C4FFF9E5C5FFF9E5C5FFF9E5C5FFF9E5C4FFF8E5C4FFF8E4 + C4FFF8E3C2FFF2DCBDFFF3DCBDFFF2DBBAFFF2DBBBFFF2DCBCFFF3DCBCFFF3DD + BCFFF3DCBDFFE9C7A9FF00000000000000000000000058584FFF0C5DDDFF0B5C + DCFF0A5ADAFF0959D9FF0958D8FF0855D6FF0754D5FF0653D4FF0551D2FF0550 + D1FF044FD1FF034DCFFF034DCEFF024CCEFF024BCDFF024BCDFF024BCDFF024B + CDFF024BCDFF024BCDFF3A3A38FF000000000000000000000000000000000A3F + 7EFF1864B2FFF8E7CBFFF8E7CAFFF8E7CAFFF8E7CAFFF8E6C9FFF8E5C8FFF8E5 + C8FFF8E5C8FFF8E5C5FFF8E4C4FFF8E2C1FFF6DBB4FFF5DBB3FFF7E0BDFF1864 + B1FF0A3F7EFF00000000000000000000000000000000DADADAFFD9D9D9FFE19F + 78FFEEAD84FFEEAD84FFEEAD84FFEEAD84FFEEAD84FFEEAD84FFEEAD84FFFCC8 + A5FFEEAD85FFEEAD84FFEEAD84FFEEAD84FFEFD7C8FFECD9CFFFCA8663FFDA98 + 72FFD9D9D9FFD9D9D9FF00000000000000000000000000000000000000000000 + 0000F9E8CDFFF8E6C7FFF9E6C8FFF9E5C8FFF8E6C8FFF9E5C7FFF9E6C8FFF7E4 + C5FFF6E1C3FFEDD5B7FFEACFB1FFE8CCAFFFE7CBACFFE6CBADFFE7CBACFFE8CC + AFFFDEBEA3FFE7C3A8FF0101010200000000000000005A5A50FF0C5EDEFF0C5D + DEFF0B5BDCFF0A5ADBFF0A59DAFF0957D8FF0856D7FF0755D6FF0653D4FF0652 + D3FF0551D2FF044FD0FF044ED0FF034DCFFF024CCEFF024BCDFF024BCDFF024B + CDFF024BCDFF024BCDFF3C3C39FF000000000000000000000000000000000A41 + 81FF1965B3FFF8E8CCFFF8E7CBFFF8E7CBFFF8E7CBFFF8E7CAFFF8E6C9FFF8E6 + C9FFF8E6C9FFF8E5C8FFF8E5C7FFF8E5C7FFF6E0BBFFF5DAB3FFF6DCB6FF1865 + B3FF0A4081FF00000000000000000000000000000000DBDBDBFFDADADAFFE2A0 + 79FFEFAE85FFEEAE85FFEFAE85FFEEAE85FFEFAE85FFEFAE85FFEEAE85FFFCC9 + A6FFEEAE85FFEFAE85FFEEAE85FFEFAE85FFECAE87FFF2E4DCFFE5C7B5FFD28E + 6AFFDADADAFFDADADAFF00000000000000000000000000000000000000000000 + 0000F9E9CFFFF8E6C8FFF9E7C8FFF9E6C8FFF9E6C8FFF8E6C9FFF9E7C9FFF8E5 + C7FFF5E1C3FFEACFB3FFE4C5AAFFE2C0A5FFDBB89CFFDBB89CFFD9B69BFFD9B7 + 9BFFE8CDAEFFE7C3A8FF0000000000000000000000005D5C52FF0D5FE0FF0D5F + DFFF0C5DDDFF0B5CDDFF0B5BDCFF0A59DAFF0958D9FF0857D8FF0754D6FF0753 + D5FF0652D4FF0550D2FF044FD1FF044ED0FF034DCEFF034CCEFF024BCDFF024B + CDFF024BCDFF024BCDFF3E3E3BFF000000000000000000000000000000000B41 + 82FF1966B5FFF8E8CEFFF8E8CDFFF8E8CCFFF8E8CCFFF8E7CBFFF8E7CAFFF8E7 + CAFFF8E7CAFFF8E6C9FFF8E5C8FFF8E5C8FFF8E2C3FFF6E0BCFFF5DDB5FF1967 + B5FF0B4282FF00000000000000000000000000000000DCDCDCFFDBDBDBFFE2A1 + 79FFEFAF86FFEEAF86FFEEAE85FFEFAF86FFEFAF86FFEFAF86FFEFAF86FFFCC9 + A6FFEEAE86FFEEAF86FFEFAF86FFEFAF86FFEFAF86FFECB58FFFF5EFEBFFCC88 + 64FFDBDBDBFFDBDBDBFF00000000000000000000000000000000000000000000 + 0000F9E9CFFFF8E7C9FFF8E7C9FFF9E7C9FFF8E6C9FFF9E7CAFFF9E6C9FFF8E5 + C8FFF4E0C1FFE8CBAFFFE2C2A7FFE4C7AEFFDFBFA6FFE1C3A8FFEAD2B6FFF5DF + BCFFE8C5AAFF483B3252000000000000000000000000626156FF0E61E1FF0E61 + E1FF0D60E0FF2A70E4FF3D79E6FF3270E0FF0B5BDCFF0A5ADBFF0958D9FF0857 + D8FF0856D7FF0753D5FF0652D4FF2769DFFF3B77E5FF306CDDFF044ECFFF034C + CEFF024BCDFF024BCDFF43433FFF000000000000000000000000000000000C44 + 87FF1B69B9FFF9E9D0FFF8E9CFFF9B9280FF9B9280FF9B927FFF9B927FFF9B92 + 7FFF9B927EFF9B917EFF9B917DFF9B917DFF9B917DFFBFB299FFF8E5C7FF1B69 + B8FF0C4487FF00000000000000000000000000000000DEDEDEFFDDDDDDFFE3A1 + 7AFFEFB187FFEFB188FFEFB087FFEFB088FFEFB187FFEFB187FFEFB188FFFCCA + A7FFEFB187FFEFB187FFEFB188FFF0B188FFEFB188FFEFB088FFEFB088FFF5EA + E3FFDDDDDDFFDDDDDDFF00000000000000000000000000000000000000000000 + 0000F9EAD1FFF9E7CBFFF9E8CBFFF9E8CBFFF9E7CCFFF9E8CBFFF9E8CBFFF6E6 + C9FFF1DDC0FFFCF9F7FFF8F2ECFFFDF7EEFFFAECD5FFF8E3C3FFF7E0BBFF483D + 33520000000000000000000000000000000000000000646458FF0E61E1FF0E61 + E1FF1F6BE4FF2E65D0FF133896FF133896FF2A5CBFFF0B5CDCFF0A5ADAFF0959 + D9FF0957D8FF0855D6FF1B62DCFF2D63CEFF173271FF133896FF2A5EC5FF034D + CFFF034CCEFF024CCEFF454540FF000000000000000000000000000000000D45 + 8AFF1B6AB9FFF9EAD1FFF9E9D0FF565544FF575545FF575544FF575644FF5755 + 44FF565544FF575545FF575544FF575644FF86806CFF9B917DFFF8E7CAFF1B69 + BAFF0D4589FF00000000000000000000000000000000DFDFDFFFDEDEDEFFE3A3 + 7BFFEFB288FFF0B188FFEFB288FFF0B188FFEFB188FFEFB188FFF0B288FFFCCA + A7FFEFB288FFF0B188FFEFB288FFEFB289FFF0B188FFEFB188FFF0B188FFEFD1 + BDFFDEDEDEFFDEDEDEFF00000000000000000000000000000000000000000000 + 0000F9EBD2FFF9E8CCFFF8E7CCFFF9E8CCFFF9E7CCFFF9E8CCFFF8E7CBFFF7E4 + C8FFF2DDC0FFFEFAF5FFFCF6ECFFFBF0DDFFF8E3C2FFF7DFBAFFEDD0B4FF0000 + 0000000000000000000000000000000000000000000067665AFF0E61E1FF0E61 + E1FF1565E2FF133CA0FF526D97FF506C97FF163A8BFF0C59D5FF0B5BDCFF0A5A + DBFF0A59DAFF0957D8FF115BD9FF123BA0FF4774C5FF506C97FF1742A4FF044E + D0FF034ECFFF034DCFFF484842FF000000000000000000000000000000000D47 + 8CFF1C6BBBFFF9EAD2FFF9EAD1FF908974FF908974FF908974FF908974FF9089 + 74FF908974FF908974FF908974FF908974FF5A5A48FF9B917EFFF8E7CBFF1C6A + BBFF0D468CFF00000000000000000000000000000000E1E1E1FFE0E0E0FFE2A3 + 7BFFEFB289FFF0B289FFF0B289FFF0B289FFF0B288FFF0B289FFEFB289FFFCCA + A7FFF0B289FFEFB289FFEFB289FFEFB289FFEFB289FFEFB289FFF0B289FFE9B7 + 98FFDFDFDFFFDFDFDFFF00000000000000000000000000000000000000000000 + 0000F9EBD2FFF9E8CDFFF9E8CDFFF9E8CCFFF9E8CDFFF8E8CDFFF9E7CBFFF6E4 + C9FFF1DCBFFFFCF4E7FFFBEFDCFFF9E8CEFFF7DFB9FFEFD3B7FF493E35520000 + 000000000000000000000000000000000000000000006B6B5DFF579BF0FF579B + F0FF579BF0FF579BF0FF46453DFF48473FFF345E98FF4C89D6FF579BF0FF579B + F0FF579BF0FF579BF0FF579BF0FF579BF0FF3D3C36FF48473FFF345E98FF579B + F0FF579BF0FF579BF0FF4B4B45FF000000000000000000000000000000000E49 + 90FF3786D5FF3786D5FF3786D5FFF5F6EFFFE3E5D2FFD3D6B6FFD3D6B6FFD3D6 + B6FFD3D6B6FFD3D6B6FFD3D6B6FFDDDFC7FF64634FFF2F5B83FF3786D5FF3786 + D5FF0E4990FF00000000000000000000000000000000E3E3E3FFE2E2E2FFE3A3 + 7CFFE3A37CFFE3A37CFFE3A37CFFE3A37CFFE3A37CFFE3A37CFFE3A37CFFEBB2 + 90FFE3A37CFFE3A37CFFE3A37CFFE3A37CFFE3A37CFFE3A37CFFE3A37CFFE3A3 + 7CFFE2E2E2FFE2E2E2FF00000000000000000000000000000000000000000000 + 0000F9EBD4FFF9E8CEFFF9E8CEFFF9E8CEFFF9E9CEFFF9E9CEFFF7E6CDFFF5E1 + C8FFF0DABEFFF7E2C0FFF7E1BEFFF7DFB9FF51463C5900000000000000000000 + 000000000000000000000000000000000000000000006E6D5FFF4078AFFF2380 + E4FF2380E4FF2380E4FF3D3C36FF3D3C36FF164883FF1F6EC5FF2380E4FF2380 + E4FF2380E4FF2380E4FF2380E4FF2380E4FF3D3C36FF3D3C36FF164883FF2380 + E4FF2380E4FF3770A9FF4F4E47FF000000000000000000000000000000000B39 + 71C70E4A93FF0E4B92FF0F4A92FF686754FF686754FF686754FF72725EFF7272 + 5EFF72725EFF72725EFF686854FF686754FF455C6DFF183A5EFF0E4B92FF0F4A + 92FF0B3971C700000000000000000000000000000000E4E4E4FFE3E3E3FFE3E3 + E3FFE3E3E3FFE3E3E3FFE3E3E3FFE3E3E3FFE3E3E3FFE3E3E3FFE3E3E3FFE3E3 + E3FFE3E3E3FFE3E3E3FFE3E3E3FFE3E3E3FFE3E3E3FFE3E3E3FFE3E3E3FFE3E3 + E3FFE3E3E3FFE3E3E3FF00000000000000000000000000000000000000000000 + 0000FAECD4FFF9E8CEFFF9E9CFFFF9E9CEFFF9E9CFFFF9E8CDFFF7E5CCFFF4E2 + C7FFF0DABFFFF7DFB9FFF7DFB9FFF1D8BCFF0000000000000000000000000000 + 000000000000000000000000000000000000000000006E6D5FFF6C6C5EFF6B6B + 5DFF6A695CFF69685BFFA9A98AFFB8B998FF32363FFF52544FFF636257FF6261 + 56FF626156FF5F5F54FF5E5E53FF5E5D53FFD4D4ABFFB8B998FF2C313BFF5858 + 4FFF58584FFF57564EFF79786DFF000000000000000000000000000000000000 + 000000000000000000000000000000000000000000006C6B57FF646351FF6463 + 51FF646351FF646351FF6D6C58FF000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000FFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000 + 0000FAECD5FFF9E9CFFFF9E9CFFFF9E9CFFFF9E9CFFFF9E9CEFFF7E6CCFFF6E3 + C9FFF1DDC2FFF4DCB8FFF1D8BCFF6A5E50720000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000515044C7515044C70000000000000000000000000000 + 000000000000000000000000000000000000686758FF515044C7000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 000000000000000000000000000000000000000000004545389B73725DFF7372 + 5DFF73725DFF73725DFF4545389B000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000F1D8BCFFF1D8BCFFF1D8BCFFF1D8BCFFF1D8BCFFF1D8BCFFF1D8BCFFF1D8 + BCFFF1D8BCFF7266587900000000000000000000000000000000000000000000 + 000000000000000000000000000000000000424D3E000000000000003E000000 + 2800000060000000A00500000100010000000000804300000000000000000000 + 000000000000000000000000FFFFFF0000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 0000000000000000000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE003FF + E003FFE003FFE003FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01FFFF01 + FFFE01FFFE01FFFE01FFFE01FFF801FFF801FFF801FFF801FFF803FFF803FFF8 + 03FFF803FFF003FFF003FFF003FFF003FFE00FFFE00FFFE00FFFE00FF0001FF0 + 001FF0001FF0001FE0001FE0001FE0001FE0001F80007F80007F80007F80007F + 8000FF8000FF8000FF8000FF8001FF8001FF8001FF8001FF0000FF0000FF0000 + FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF00001F00 + 001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F + 8000FF8000FF8000FF8000FF8000FF8000FF8000FF8000FFC000FFC000FFC000 + FFC000FFF03FFFF03FFFF03FFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00 + 0000FFFFFF8007FFE00007000000FFFFFF80FFFFC00007000000010101807FFF + E00007000000010101803FFFE00007800001010101801FFFE000078000030101 + 01800FFFE00007C000030101018007FFE00007E00007010101E003FFE00007E0 + 0007010101F001FFF0000FF0000FEFEFEFF000FFF8001FF0001FEFEFEFFC007F + FE00FFF0001FE0000FFE0007FF00FFF8001FFFEFFFFE0003FE00FFFC003FFE00 + FFFF8001FE007FFE007FFE00FFFFC000FE007FFE007FFE00FFFFC000FE007FFE + 00FFFE00FFFFF020FE007FFF00FFFE00FFFFF070FE007FFF00FFFE00FFFFF038 + FE00FFFFC1FFFE00FFFFF01CFE00FFFFC3FFFE00FFFFF81FFF00FFFFC7FFFE00 + FFFFF80FFFFFFFFFFFFFFFFFFFFFFE07FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFE00FF800001FFFFFF00003FFE00FF000000FFFFFF8000FFFE00FF + 000000FFFFFF8000FFFE00FF0000008007F98000FFFE00FF0000008007F18000 + FFFE00FF0000008007F18000FFFE00FF000000801FE18000FFFE00FF00000080 + 3FC38000FFFE00FF000000801F038000FFFE00FF0000008000038000F8FE00FF + 0000008000038000F8FE00FF0000008000078000F8FE00FF00000080000FFFE3 + F8E0000300000080000FFFE3F8E0000700000080001FFFE3F8F0000F000000FC + 003FFFE1F0F8001F000000FE00FFFFE1F0FC003F000000FF01FFFFE0E0FE007F + 800003FFFFFFFFF001FF00FFFFFFFFFFFFFFFFF803FF81FFFFFFFFFFFFFFFFFC + 07FFC3FFFFFFFFFFFFFFFFFFFFFFF7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFC00007FE003FFFFFFFC0000FE0001FFE003F000000C0000FE0001F + FFC0FF800003C0000FE0001FFFC1FF800003C0000FE0001FFFC1FF800003C000 + 0FE0001FFFC1FF800003C0000FE0001FFFC1FF800003C0FC0FE0001FFFC1FF80 + 0003C0FC0FE0001FFFC1FF800003C0FC0FE0001FFFC1FF800001C0FC0FE0001F + FFC1FF800001C0FC0FE0001FFFC1FF800001C0FC0FE0001FFFC1FF800001C0C0 + 00E0001FFFC1FF800001C0C000E0001FFFC1FF800001C0C000E0001FF3C1E3FE + 007FC0F003E0001FF1C1E3FE007FC0F803800007F1C1C3FE007FC0F807800007 + F00003FFFFFFC0FE1F800007F00003FFFFFFE1FF1F800007F00003FFFFFFFFFF + 1FC0000FFFFFFFFFFFFFFFFFFFFF87FFF0000FFFFFFFFFFFFFFFFFFFF8001FFF + FFFFFFFFFFFF801FF0000FFFFFFFC00001FFE0FFE00007FFFFFFC00001FFC07F + C00003FFFFFFC00001FFC03F800001FFFFFFC00001FF001F000000FFFFFFC000 + 01FE000F000000FFFFFFC00001FE0007000000FFFFFFC00001F8000300000080 + 0003C00001F00001000000800003C00001F00000000000800003C00001C00001 + 000000E00007C00001800003000000E00007C00001800003000000F0000FC000 + 0180000F000000F0000FC0000180001F000000F0000FC0000180001F000000F0 + 000FC0000182007F800001F0001FC000018200FF800003F8001FC000018000FF + E00007FFFFFFFFFFFFC003FFF0000FFFFFFFFFFFFFE007FFF0001FFFFFFFFFFF + FFF007FFFC003FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFF000FF01C07FC0FFFFF87FFFFFC3FF07F0FF007FFFF87FFFFF83FF83E1F + F003FFFF87FFFFF83FF8181FC000FFF8007FFFE03FFC001FC0C0FFF8007FFFC0 + 3FFC001F81E0FFF8007FFC003FFC001F83F0FFFF03FFF0001FFE003F87F8FFFE + 00FFF0001FFE001F87F8FFFC00FFF0000FF8001F83F0FFF0003FF0000FE00003 + 81E0FFF0303FF0000FC00003C0C0C7F0781FF0000F800000E00047F0FC1FF000 + 1F800000F00007F1FE1FF0001FFF80FFF00007F1FE1FF0003FFF80FFFFF807F0 + FC1FFFC03FFFC1FFFFF807F0781FFFE03FFFC1FFFFE007F0303FFFF03FFFC3FF + FFE007F8007FFFF83FFFC3FFFFE007FC00FFFFFC3FFFE7FFFFFFFFFE00FFFFFE + 3FFFE7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE00FFF03E0FC0 + 000FE00007FF81FFF07F0780001FF8003FFE00FFF07F0780001FF8003FFE007F + F03E0780001FF8003FFE007FF03C2780001FF8003FF8001FF01847F0001FF800 + 3FF0001FF00807F0001FF8003FF0001FF0000FF0001FF8003FF0000FF8001FF0 + 001FF8003FE00007FE003FF0001FF8003FE00007FF80FFF0001FF8003FC00003 + FF80FFF0001FF8003FC00003FF00FFF0001FF8003FC00003FE087FF0001FF800 + 3FC00003FE183FF0001FF8003FC00003FE183FF0001FF8003FC00003FC3E1FF0 + 0003F8003FC00003F87F1FF00003F8003FC00003F07F0FF00003F8003FC00003 + F1FF8FF00003F8003FFF81FFF1FFCFF00003F8003FFFC3FFF3FFEFF80003F800 + 3FFFC7FFFFFFFFFFFFFFF8003FFFE7FFFFFFFFFFFFFFFFFFFFFFFFFFE00003E0 + 0003FFFFFFFFFFFFFC001FFC001FC00003E00003F0000FF0000F800003C00003 + F00007F00007800003800003E00003E00003800003800003C00003C000038000 + 03800003C00003C0000380000380000380000180000180000380000380000180 + 0001800003800003800001800001800003800003800001800001800003800003 + 8000018000018000038000038000018000018000038000038000018000018000 + 03800003800001800001800003800003C00003C00003800003800003E00003E0 + 0003800003800003F00007F00007800003800003F00007F00007800003800003 + FC001FFC001F800003800003FE003FFE003FC00003800003FF00FFFF00FFE000 + 07800003FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE00003E0 + 0003E00003FFFFFFFC001FFC001FFC001FFC007FF0000FF0000FF0000FF8003F + F00007F00007F00007F0001FE00003E00003E00003E0000FC00003C00003C000 + 03C00007C00003C00003C0000380000380000180000180000180000380000180 + 0001800001800003800001800001800001800003800001800001800001800003 + 8000018000018000018000038000018000018000018000038000018000018000 + 01800003800001800001800001800003C00003C00003C00003800003E00003E0 + 0003E00003800003F00007F00007F00007C00007F00007F00007F00007E0000F + FC001FFC001FFC001FF0001FFE003FFE003FFE003FF8003FFF00FFFF00FFFF00 + FFFC007FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFC3FFFFF8FFFC007FFFFFFFFF80E3FFF8FFF8003F + FFFFFFFF00C3FFF87FF0001FFFFFFFFE0001FFF81FE0000FFFFFFFFC0001FFF8 + 1FC00007FFFFFFF8000180000F800003800001F00003800003800003800001E0 + 0003800003800003800001E00003800001800003800001800001800001800003 + 8000018000018000018000038000018000018000038000038000018000018000 + 0780000380000180000180000F800003800001800001FFF81F800003FFFFFF80 + 0001FFF83F800003FFFFFF800001FFF87FC00007FFFFFF800001FFF8FFE0000F + FFFFFF801803FFFFFFF0001FFFFFFFC03803FFFFFFF8003FFFFFFFF03E07FFFF + FFFC007FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC003F80 + 07FFFFFFFFFFFFFFFC003F83FFFF80007FFFFFFFF0001FC1FFFF80007FFFFFFF + F0000FE0FFFF80007FFFFFFF800003F03E7F8000639FFFFF800003F03C7F8000 + 439FE001800003F0187F8000418FE001800003FC007FC200018FF001800003FE + 007FE3000187F801800003FE007FFF000183F801800003FF803FC20001806001 + 800003FF001F800001C00001800003FE001F800001C00001C00003FC00078000 + 63E00001E00007FC000380007FF00001F0001FFC000080007FF00001F0001FFF + F80080007FF80019F0001FFFF801FE07FFFC003FF0001FFFFC03FC03FFFE007F + FC003FFFFF07F801FFFFFFFFFC003FFFFF0FF801FFFFFFFFFC003FFFFF1FF801 + FFFFFFFFFFFFFFFFFFFFFE07FFFFFFFFFFFFFF800001FFFFFFFFFFFFFFFFFFF0 + 0007800001FFFFFFFE0003F00007C00003F07FFFFC0003F00007C00003E03FFF + F80003F00007C00003C01FFFF00003F00007C000038007FFE00003F00007C000 + 038007FFE00003F00007C000038003FFE00003F00007C000038000FFE00003F0 + 0007C000038000FFE00003F00007C00003C0007FE00003F00007C00003E0001F + E00003F00007C00003F0001FE00003F00007C00003F0000FE00003F00007C000 + 03FC0007E00003F00007C00003FE0003E00003F00007C00003FE0003E00003F0 + 0007C00003FF8003E00003F00007C00003FFC003E00003F00007C00003FFC003 + E00003F00007C00003FFF007FFFFFFF00007C00003FFF80FFFFFFFFE493FC000 + 03FFFC1FFFFFFFFE493FFFFFFFFFFFFFC00FFFFFFFFFFFFFFFFFFFFFC07FFFFF + FFFFFFFFFFFE001F807FFFFFFFFF800003FFF8FF807FFFFFFFFF800003FFF0FF + 807E1FFC003F800003FFE0FF807807000000800003FFC0FFC078070000008000 + 03FF80C7E07807000000800003F00083F87807000000800003C00003F87807FC + 003F800003C00003F87C07FF00FF800003C00003F87F07FF00FF800003C00007 + F87F87FF00FF800003C00007F87F87FF00FFFC0003C00003F87F87FFC3FFFC00 + 03C00003F80F87FFC3FFFC0003C00003F80187FFC3FFFC0003E00003F80007FF + C3FFFC0003FF80C7F80007FFC3FFFC0003FFC0FFF80007FFC3FFFC0003FFC0FF + FC0007FFC3FFFC0003FFF0FFFF0007FFFFFFFFFFFFFFF8FFFFE007FFFFFFFFFF + FFFFF8FFFFFF87FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC003FF00007FF + FFFFFFFFFFFFC3FFFC001FF0001FFFFFFFFF00FFFC001FFC003FFFFFFFFE00FF + FC001FFC003FF8000FFE007FFC001FFF00FFFF181FFE007FFC001F000000FF18 + 1FFF81FFFC001F000000FE101FF381CFFC001F000000FE007FE381C3FC001F00 + 0000FE00FFC00003FC001F000000FC00FF800001FC001F000000F8007F000000 + FC001F000000F8003F000000FC001F000000F0003F000000FC001F000000F000 + FF800003FC001F000000F003FFC381C3FC001F000000F007FFE381C7FC001F00 + 0000E03FFFFF81FFFC001F000000C0FFFFFE007FFC001F000000C3FFFFFE007F + FC001F000000FFFFFFFE00FFFC001F000000FFFFFFFF00FFFC001F000000FFFF + FFFF81FFFFFFFFFFFFFFFFFFFFFFC7FFC0000FFFFFFFFFFFFFFFFFFFE07FFFFF + FFFFFFFFFFFFFFFF803FFF80000383FFFFFFFFFF801FFFE0000F81FFFFFFFFFF + 860FFFE0000F81FFFFFFFFFF8F07FFE0000FC07FFF8000018707FFE0000FE03F + FF8000018207FFE0000FF03FFF800001C007FFE0000FF80FFF800001E007FFE0 + 000FFC07FF800001F003FFE0000FFE07FF800001F8001FE0000FFF00CF800001 + FC000FE0000FFF8007800001FFC007F0001FFFC007800001FFE003F8FE3FFFE0 + 03800001FFE001F8FE3FFFE001800001FFE061F8FE3FFFE001800001FFF0F0F8 + 7C3FFFF803800001FFF070F87C3FFFF803800001FFF820F8383FFFF003800001 + FFFC01FC007FFFF003800001FFFE03FE00FFFFFE1FFFFFFFFFFF03FF01FFFFFF + 1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + E003FFFFFFFFFFFFFF3FFFFFFF01FFFFFFFFFFFFFE3FFFFFFF01800000800001 + FE3FFFFFFE01800000800003F83FFFFFF801900081800003F03FFFFFF8039000 + 81800003F00001FFF003900081800003C00001FFE00F900081800003800001F0 + 001F900081800003800001E0001F90008180000380000180007F9000FF800003 + 8000018000FF9000FF8000038000018001FF9000FF800003E000010001FF9000 + FF800003F000010001FF9FC0FF800003F03FFF0001FF9FC0FF800003FC3FFF00 + 01FF9FC0FF800003FE3FFF0001FF9FC0FF800003FE3FFF0001FF9FC0FF800003 + FFFFFF8003FF9FC0FFFFFFFFFFFFFF8007FF9FC0FFFFFFFFFFFFFFC007FF9FFF + FFFFFFFFFFFFFFF03FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0 + 3FFFFFFFFFFFFFFF80007FC01FFFFFFFFF80000383FFFF800FFFFFFFFF800003 + 83FFFF8207FFFFFFFF80000381FFFF8F87FFFFFFFF800003807FFF8FC7FF8000 + 01800003C03FFF8FC7FF800001800003F00FFF8F07FF800001800003F000FF82 + 07FF800001800003F8003F8003FF800001800003FE001FE000FF800001800003 + FE0007F000FF800001800003FF0003FFC07F800001800003FF0003FFF01F8000 + 01800003FF0003FFF81F800001800003FF0203FFF80FEFFFFF800003FF8703FF + FE03E00003800003FF8707FFFF03FFFFFF800003FFC20FFFFF01FFFFFF800003 + FFE01FFFFF00FFFFFFFFFFFFFFE03FFFFF00FFFFFFFFFFFFFFF07FFFFF00FFFF + FFFFFFFFFFFFFFFFFFC7FFFFFFFFFFFFFFFFFFFFFFFFF00007FFFFFF800003FF + FFFFF0000FFFFFFFE00007FC007FF0000FF8001FE00007F8003FF0000FF8001F + E00007F0001FF0000FF8001FE00007E0000FF0000FF8001FE00007C00007F000 + 0FF8001FE00007800003F0000FF8001FE00007800003F0000FF8001FE0000780 + 0003F0000FF8001F800001800003F0000FF8001F800001800003F0000FF8001F + 800001800003F0000FF8001F800001800003F0000FF8001FC00003800003F000 + 0FF8001FE00007800003F0000FF8001FF0000F800003F0000FF8001FF8000F80 + 0003F0000FF8001FFC0007C00007F0000FF8001FFE0007E0000FF0000FF8001F + FF00FFF0001FF0000FF8001FFF81FFF8003FF0000FF8001FFFC3FFFC007FF000 + 0FF8001FFFFFFFFFFFFFF8001FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000FFF + FFFFFC003FFE00FFF8001FFFFFFFFF81FFF6004FF0001FFFFFFFFF00FFE80003 + F0000FFFFFFFFE00FFC0001BC00003000000FC003FA00005C00003000000F800 + 1FE00005800003000000F0001FC00001800001000000E0000F803C0180000100 + 0000E00007807E01800001000000C0000380FF0180000100000080000380FF01 + 80000100000080000380FF0180000100000080000180FF018000010000008000 + 01807E01800001800001800001803C01800003800003800001C00001C00003E0 + 0007800001E00007C00003F0000F800001E00007E00007FFFFFF800001B0000F + F0001FFFFFFFC03803D80013F8001FFFFFFFF03E07CE0067FE007FFFFFFFFFFF + FFF300CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000FFFF + BFFFFFFFFFF0001FF1FFFFFF8FFF000000F8001FF1FFFFFF8FFF800001F8001F + F1FFFFFF87FF800001F8001FF1FFFFFF87FF800001C00003F1FFFFFF83FF8000 + 01800003F1FFFFFFC3FF800001800003F1FFFFFFC0FF800001C03C03F1FFFFFF + C0FF800001C07E03F1FFFFFFC0FF80000180FF03F00003FE007F80000181FF01 + F00003FE003F80000181FF01F00003FE003F80000180FF01F00003FE001F8000 + 01C07E03F00003FE001F800001C03C03F00003FE01FF800001801803F00003FE + 00FF800001800003F00003FE00FF800001C00003F00003FE00FF803FFFF8001F + F00003FE007F807FFFF8001FF001F3FE003F80FFFFF8001FF0FFFFFE003FFFFF + FFFCC33FF1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80 + 0003800001FF9FFF807E03E00007CC0033FF87FF807E03E00007CC0033FF87FF + 80FF03E00007C00003FF83FF807E03E00007C00003FF81FF803C03E00007CC00 + 33FF81FF803803E00007CC0033FF81FF880013E00007C00003FF81FFFC003FE0 + 0007C00003FF81FFFE007FE00007CC0033FF81FFFF00FFE00007C00003FF00FF + FF00FFE00007C00003FE007FFE00FFE00007C00003FE003FFC003FE00007CC00 + 33F8001F880013E00007C00003F0000F801803E00007C00003F00007803C03E0 + 0007CC0033C00003807E03E00007CC003380000180FF03E00007C00003800001 + 807E03E00007C00003800001807E03E0000FCC0033800001807E03E0001FCC00 + 33800001FFFFFFE0003FC00003FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + FFFFFFFFFFFFFFFFC00003800001C1FFFFFC007F800003800001C0FFFFF8003F + 800003800001E03FFFF0001F800003800001F00FFFE0000F800003800001F007 + FFC00007800003800001F007FF800003800003800001F001FF80000380000380 + 0001F800FF800003800003800001F800FF800003800003800001FE003F800003 + 800003800001FE001F800003800003800001FF001F800003800003800001FFC0 + 07800003800003800001FFC003800003800003800001FFE00380000380000380 + 0001FFF801800003800003803FFFFFF801C00007800003803FFFFFFC01E0000F + 80000380FFFFFFFF01F0001FC00003FFFFFFFFFF83F8003FE00007FFFFFFFFFF + C3FC007FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0000FFFF7FFF03E0780 + 0001F0001FFFC7FFE07E07E00007F0001FFF81FFC03C03E00007F0001FFF00FF + 803803E00007F0001FFE00FF800001E00007F0001FFC003F800001E00007F000 + 1FF8001F800001E00007F0001FF0001FC00003E00007F0001FE00007E00007E0 + 0007F0001FE00003F0000FE00007F0001FE00007F8001FE00007F0001FFE00FF + F8001FE00007F0001FFE00FFF0001FE00007F0001FFE00FFE00007E00007F000 + 1FFE00FFC00003E00007F0001FFE00FF800003E00007F0001FFE00FF800001E0 + 0007F0001FFE00FF800001E00007F0001FFE00FF801801E00007F0001FFE00FF + C03C03E00007F0001FFE00FFE07E07E0000FF0001FFE00FFF0FF0FE0001FF000 + 1FFE00FFFFFFFFE0003FF0001FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + F0E3FF00FFFFFFFFFFF1FFFFF003FC001FE0000FFFE1FFFFF003F0000FE0000F + FFE1FFFFF003F00007E0000FFFC1FFFE001FE00003E0000FC00003FE001FC000 + 03E0000F800003FE001FC00003E0000F800001C0021F800001E0000F800001C0 + 021F800001E0000F800001C0021F800001E0000F800001C0021F800001E0000F + 800001C0021F800001E0000F800001C0021F800001E0000F800001C0021F8000 + 01E0000F800001C0021F800001E0000F800001C0021FC00003E0000F800001C0 + 021FE00003E0000F800001C0021FF00007E0000F800001C0021FF00007E0000F + 800001FE001FFC001FE0000F800001FE001FFE003FE0000F800003FE001FFF00 + FFF0001FFFFFFFFFFFFFFFFFFFFFFFFFF8001FFFFFFFFFFFFFFF00FFFC003FFF + FFFF800001FE003FF0000FFC03FFE00007F0000FE00007F803FFE00007F00007 + C00003F003FFE00007E00003800003E001FFE00007C00003800001C001FFE000 + 07800001800001C001FFE00007800001000000E000FFE00007800000000000F0 + 40FFE00007800000000800F0C0FFE00007800000003800FFE07FE00007800000 + 003C00FFE03FE00007800000003800FFF03FE00007800000000000FFF81FE000 + 07800000000000FFF81FE00007800000000000FFFC0FE00007800001800001FF + FF03E00007C00003800003FFFF03E00007C00003800003FFFF83E00007E00003 + E00007FFFFE1E00007F0000FF0000FFFFFFFF0000FF8001FF0001FFFFFFFFE00 + FFFE003FFE00FFFFFFFFFFC7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8001FFF + FFFFFFFFFFFFFFFFF8001FFFFFFF800003C1F0FFF0000F840023800003C0007F + F00007840021800003C000FFE00003840021800003E3F8FFC01E038E00618000 + 03FFFC7FC00F03840021800003FFFC7F80078180000180000380003F8003C180 + 000180000380003F8001C180000180000380003F8100C180000180000380001F + 81804180000180000380001F81C00180000180000380001F81E0018000018000 + 0380001F81F001800001E0000780000FC0F803800001E0000780000FE0000380 + 0001E00007C00007E00007800001FFFFFFFFE007F00007800001FFFFFFFFFFC1 + F8001FFFFFFFFFFFFFFFFFE1FE003FFFFFFFFFFFFFFFFFFFFF00FFFFFFFFFFFF + FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80001FFFFFFFFFFFFFFFFFFFC00003FF + FFFF800003FFFFFFC0000780001FC00007FFFFFFC0000780000FC00007800003 + C00007800007C00007800001C00007800003C00007800001C00007800003C000 + 07800001C00007800003C00007800001C00007800003C00007800001C0000780 + 0003C00007800001C00007800003C00007800001C00007800003C00007800001 + C00007800003C00007800001C00007800003C00007800001C00007800003C000 + 07800001C00007800003C00007800001C00007800003C00007800003C0001F80 + 0003C00007E00007C0001F800003C00007F8001FC001FF800003C00007FFC01F + C001FF800003C00007FFFFFFC001FF800003C00007FFFFFFC001FFFFFFFFC000 + 07FFFFFFF007FFFFFFFFFFFFFFFFFFFFFFFFFFF9FBFFFFFFFFFFFFFFFFFFFFF9 + F3FFFFFFFFFFFFFFE00007F8E3FF000000FFFFFFC00003F843FF000000800003 + C00003F803FF000000800003C00003F803FF000000800003C00003F803FF0000 + 00800003C00003F803FF000000800003C00003F803FF000000800003C00003F8 + 03FF000000800003C00003F803FF000000800003800001F803FF000000800003 + 800001F803FF000000800003800001F8001F000000800003800001F8001F0000 + 00800003FFC7FFF8001F000000800003FFC7FFF8001F000000800003FFC7FFF8 + 001F000000800003FFC7FFF8001F800001800003FFC7FFF8001FFE3CFF800003 + FFC7FFF8001FFE00FFFFFFFFFFC7FFF8001FFE00FFFFFFFFFFC7FFF8001FFE00 + FFFFFFFFFFFFFFFE007FFFFFFFFFFFFFFFFFFFFFF7FFFFFFFFFFFFFFE0000FFF + C1FFFFFFFFF8001FE0000FFE003FFE7E7FFE00FFE0000FFC001FF83C1FFE18FF + E0000FF8000FF03C1FFE38FFC00007F00003F0181FFE3CFFC00007C0C181F818 + 1FFC38FF800003C1C1C1F8001FFC38FF800003C1C1C1FE007FFC38FF800003C1 + C1E1FE007FFC38FF800003C3E3E1FE00FFFC38FF800003CFE3F9800001FC38FF + 800003CFE3FD800001FC38FF800003FF80FF800001FC38FF800003FF80FF8000 + 01FC38FF800003FFE3FFFE00FFFC30FF800003FFC1FFFE007FFC30FF800003FF + 80FFFC003FFC00FF800003FF80FFFC001FFC84FF800003FF88FFF8181FFCFCFF + 800003FF80FFF0381FFC38FFC06C07FF80FFF03C1FFC00FFF0C60FFFC0FFF83C + 1FFE00FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF + E003FC001FC0001F000000FFFF01FF00FFC00007000001FFFF01FF00FFC00007 + 000001FFFE01FF00FFC00007000001FFF801FF00FFC00007000001FFF803FF00 + FFC00007000001FFF003FF00FFC00007000001FFE00F800000C00007000001F0 + 001F800000C00007000000E0001F800000C0000700000080007F800000C00007 + 0000008000FF800000C000070000008001FF800000C000070000000001FF8000 + 00C000070000010001FF800000C000070000010001FF800000C0000700000100 + 001FFF00FFC0000700000100001FFF00FFC0000700000100001FFF00FFC00007 + 0000018003FFFF00FFC000070000018007FFFF00FFC00007000001C007FFFF00 + FFC00007FFFFFFF03FFFFF00FFFFFFFFFFFFFFFFFFFFF0000FFFFFFFFE000F00 + 0000FC001FFFFFFFFC0007000000FC001F000000FA000FF0000FFC001F000001 + F00FFFF0000FFC001F800001F007FFF0000FFC001F800001E003FFF00007FC00 + 1F8000018003FFF00007FC001F8000018001FFF00007FC001FC000030001FFF0 + 0007FC001FE0000701807FF00003FC001FF0000F03C07FE00003FC003FFF00FF + 87E07FE00003000001FF81FF87F03FE00003000001FF00FFFFF81FE000018000 + 03FF00FFFFFC0F800001C00007FE00FFFFFE0F800001E0000FFE00FFFFFF0780 + 0001F0001FFE00FFFFFF87800001F8003FFE00FFFFFFC1800001FC007FFE00FF + FFFFE1800000FE00FFFF00FFFFFFF1800001FF01FFFF00FFFFFFF8800001FF83 + FFFF81FFFFFFFCE00003FFC7FFFFFFFFFFFFFFF0000FFFFFFF000001F8000FF0 + 000F000000000041FE003FFFF1FF800001800041000000FFF0FF800005800041 + 000000FFF07F80000180004180000100103F80000180004180000100000F8000 + 0180004180000100000780000180004180000100000380000180004180000100 + 0003800001800041800001000000800001800041800001000000800001800041 + 80000100000080000180006380000100000080000180007F8000010000018000 + 0180007F80000100000380000180007FE4000700000780000180007FFC003F00 + 000F80000180007FFC003FFFF01F80000180007FFC003FFFF03F800001803FFF + FC003FFFF07F800001803FFFFC003FFFF0FF800001803FFFFC003FFFF1FF8000 + 01803FFFFFFFFFFFF7FFFFFFFF807FFFFFFFFFF8003F88007FFFFFFF000000FE + 003F800000000000800001FE00FFFE00FF800001800000FE00FFFE00FF800001 + 800000FF01FFFE00FF800001800000FF01FFFE00FF800001800000000000FE00 + FF800001800000000000FE00FF80000180000000000000000180000180000000 + 0000000001800001800000000000000001800001800000000000000001800001 + 8000000000000000018000008000000000000000018000008000000000000000 + 01800000800001000000000001800000800001000000000001800000C0000300 + 0000FE00FF800000E00007000000FE00FF800000F0000F000000FE00FF800001 + F8001F000000FE00FF800001FC003F000000FE00FF801801FE007F000000FE00 + FF803E01FFFFFF000000FE00FFC1FFC1F0000FFFFFFFFFFFFFE0001FF0000FFF + FFFF800001E0001FFF83FFFFFFFFE00007FF8FFFFF00FFFFFFFFE00007FF0FFF + FE007F000001E00007FE0FFFFC003F000001F0000FFC0800F8003F800007F000 + 0FF00000F0000F800003F0000FE00000E0000F800003F0000FC00000C0000780 + 0001F0000FC00000800001800001E00007000000000001800001E00007000000 + 000001800001E00007000000FC003F800000E00007000000FC003F800000E000 + 07800000FC003F800000E00007C00000FC003F800007F0000FE00000FC003F80 + 0007F8001FF00000FC003F800007FC003FF80FFFFC003F80000FFE007FFC0FFF + FC003F803FFFFF007FFE0FFFFC003FFFFFFFFF807FFF0FFFFC003FFFFFFFFFC0 + 7FFF8FFFFC003FFFFFFFFFE7FFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFF00000080 + 0001000001E00001800001E00007000001C00001800001E00007800001F00003 + 800001E00007800001F00003800001E00007800001F00003800001E000078000 + 01F00003800001E00007800001F00003800001E00007800001F00003800001E0 + 0007800001F00003800001E00007800001F00003800001E00007800001F00003 + 800001E00007800001F00003800001E00007800001F00001800001E000078000 + 01F00001800001E00007800001F00001800001E00007800001F00003800001E0 + 0007800001F0000F800001E00007800001F0000F800001E00007800001F0001F + 800001E00007800001F0007F800001E00007800001F0007F800001FF81FF8000 + 01F000FFFCFF3FFF81FFFFFFFFF003FF00000000000000000000000000000000 + 000000000000} + end +end diff --git a/Z99Dependency/ThreeFun/Form/U_DxZDYHelp.pas b/Z99Dependency/ThreeFun/Form/U_DxZDYHelp.pas new file mode 100644 index 0000000..a39a858 --- /dev/null +++ b/Z99Dependency/ThreeFun/Form/U_DxZDYHelp.pas @@ -0,0 +1,310 @@ +unit U_DxZDYHelp; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + cxDataStorage, cxEdit, DB, cxDBData, ToolWin, ComCtrls, + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGridLevel, + cxClasses, cxControls, cxGridCustomView, cxGrid, DBClient, ADODB, ImgList, + StdCtrls, ExtCtrls, cxCheckBox, cxDropDownEdit; + +type + TfrmDxZDYHelp = class(TForm) + TV1: TcxGridDBTableView; + cxGrid1Level1: TcxGridLevel; + cxGrid1: TcxGrid; + V1Code: TcxGridDBColumn; + V1Name: TcxGridDBColumn; + ToolBar1: TToolBar; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + ADOQueryCmd: TADOQuery; + DataSource1: TDataSource; + ClientDataSet1: TClientDataSet; + TBAdd: TToolButton; + TBSave: TToolButton; + TBDel: TToolButton; + TBClose: TToolButton; + ToolButton1: TToolButton; + TBEdit: TToolButton; + V1Note: TcxGridDBColumn; + V1OrderNo: TcxGridDBColumn; + ADOConnection1: TADOConnection; + Panel1: TPanel; + Label1: TLabel; + ZDYName: TEdit; + ThreeImgList: TImageList; + V1Sel: TcxGridDBColumn; + procedure FormCreate(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBAddClick(Sender: TObject); + procedure TBSaveClick(Sender: TObject); + procedure TBDelClick(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure TBEditClick(Sender: TObject); + procedure TV1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); + procedure ZDYNameChange(Sender: TObject); + private + procedure InitGrid(); + { Private declarations } + public + flag,flagname,snote:string; + fnote,forderno:Boolean; + Mresult:string; + { Public declarations } + end; + +var + frmDxZDYHelp: TfrmDxZDYHelp; + +implementation +uses + U_DataLink,U_Fun10, U_ZDYHelp; +{$R *.dfm} + +procedure TfrmDxZDYHelp.FormCreate(Sender: TObject); +begin + cxGrid1.Align:=alClient; + with ADOConnection1 do + begin + Connected:=false; + ConnectionString:=DConString; + Connected:=true; + end; +end; + +procedure TfrmDxZDYHelp.FormClose(Sender: TObject; + var Action: TCloseAction); +begin + Action:=cahide; +end; + +procedure TfrmDxZDYHelp.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Close; + sql.Clear; + sql.Add('select * from KH_ZDY where Type='''+flag+''''); + Open; + end; + SCreateCDS20(ADOQueryMain,ClientDataSet1); + SInitCDSData20(ADOQueryMain,ClientDataSet1); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmDxZDYHelp.TBAddClick(Sender: TObject); +begin + v1name.Options.Editing:=true; + //TV1.OptionsData.Editing:=True; + with ClientDataSet1 do + begin + Append; + Post; + end; +end; + +procedure TfrmDxZDYHelp.TBSaveClick(Sender: TObject); +var + maxno:string; +begin + if ClientDataSet1.IsEmpty then Exit; + try + ADOQueryCmd.Connection.BeginTrans; + {with ADOQueryCmd do + begin + close; + sql.Clear; + sql.Add('delete KH_ZDY where Type='''+Trim(Flag)+''''); + SQL.Add('delete KH_ZDY where ZDYNo='''+Trim(Flag)+''''); + sql.Add('insert into KH_ZDY(ZDYNo,ZDYName,Type) select :ZDYNo,:ZDYName,:Type '); + Parameters.ParamByName('ZDYNo').Value:=Trim(flag); + Parameters.ParamByName('ZDYName').Value:=Trim(flagname); + Parameters.ParamByName('Type').Value:='Main'; + ExecSQL; + end;} + + with ADOQueryCmd do + begin + with ClientDataSet1 do + begin + First; + while not eof do + begin + if Trim(ClientDataSet1.FieldByName('ZDYNO').AsString)='' then + begin + if GetLSNo(ADOQueryTemp,maxno,'SY','KH_ZDY',3,1)=False then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('取最大编号失败!','提示',0); + Exit; + end; + end else + begin + maxno:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + SQL.Add('delete KH_ZDY where ZDYNO='''+Trim(ClientDataSet1.fieldbyname('ZDYNO').AsString)+''''); + ExecSQL; + end; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('select * from KH_ZDY where 1<>1'); + Open; + end; + if Trim(ClientDataSet1.FieldByName('ZDYName').AsString)='' then + begin + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('名称不能为空!','提示',0); + Exit; + end; + ADOQueryCmd.Append; + ADOQueryCmd.FieldByName('ZDYNo').Value:=Trim(maxno); + ADOQueryCmd.FieldByName('ZDYName').Value:=ClientDataSet1.fieldbyname('ZDYName').AsString; + ADOQueryCmd.FieldByName('note').Value:=Trim(ClientDataSet1.fieldbyname('note').AsString); + //ADOQueryCmd.FieldByName('orderno').Value:=ClientDataSet1.fieldbyname('Name').AsString; + ADOQueryCmd.FieldByName('Type').Value:=flag; + ADOQueryCmd.FieldByName('valid').Value:='Y'; + //ADOQueryCmd.FieldByName('sel').Value:=0; + ADOQueryCmd.Post; + ClientDataSet1.Edit; + ClientDataSet1.FieldByName('ZDYNo').Value:=Trim(maxno); + ClientDataSet1.Post; + Next; + end; + end; + end; + ADOQueryCmd.Connection.CommitTrans; + Application.MessageBox('保存成功!','提示',0); + except + ADOQueryCmd.Connection.RollbackTrans; + Application.MessageBox('保存失败!','提示',0); + end; + V1Name.Options.Editing:=false; +end; + +procedure TfrmDxZDYHelp.TBDelClick(Sender: TObject); +begin + if ClientDataSet1.IsEmpty then Exit; + if (Trim(ClientDataSet1.FieldByName('ZDYNo').AsString)<>'') or + (Trim(ClientDataSet1.FieldByName('ZDYname').AsString)<>'') then + begin + if application.MessageBox('确定要删除吗?','提示信息',1)=2 then exit; + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('delete KH_ZDY where ZDYNo='''+Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString)+''''); + SQL.Add(' and Type='''+Trim(flag)+''''); + ExecSQL; + end; + end; + ClientDataSet1.Delete; +end; + +procedure TfrmDxZDYHelp.TBCloseClick(Sender: TObject); +begin + ModalResult:=2; + Close; +end; + +procedure TfrmDxZDYHelp.FormShow(Sender: TObject); +var + fsj,fsj1:string; +begin + InitGrid(); + fsj:=Trim(flag)+'01'; + fsj1:=Trim(flagname)+'01'; + {if ClientDataSet1.IsEmpty then + begin + with ADOQueryCmd do + begin + Close; + sql.Clear; + sql.Add('insert into KH_ZDY(ZDYNo,ZDYname,Type,note)'); + sql.Add('select '''+Trim(fsj)+''''); + sql.Add(','''+Trim(fsj1)+''''); + SQL.Add(','''+Trim(flag)+''''); + sql.Add(','''+Trim(snote)+''''); + ExecSQL; + end; + InitGrid(); + end;} + frmDxZDYHelp.Caption:=Trim(flagname)+'<'+Trim(flag)+'>'; +end; + +procedure TfrmDxZDYHelp.ToolButton1Click(Sender: TObject); +var + ftype:string; + i:integer; +begin + i:=0; + with ClientDataSet1 do + begin + Mresult:=''; + First; + DisableControls; + while not eof do + begin + if fieldbyname('Ssel').AsBoolean then + begin + if (i=1) and (ftype<>trim(fieldbyname('note').AsString)) then + begin + application.MessageBox('备注信息不同,不能选择!','提示信息',0); + EnableControls; + exit; + end; + Mresult:=Mresult+trim(fieldbyname('zdyname').AsString)+';'; + ftype:=trim(fieldbyname('note').AsString); + i:=1; + end; + next; + end; + First; + EnableControls; + end; + ModalResult:=1; +end; + +procedure TfrmDxZDYHelp.TBEditClick(Sender: TObject); +begin + v1name.Options.Editing:=true; + // TV1.OptionsData.Editing:=True; +end; + +procedure TfrmDxZDYHelp.TV1CellDblClick(Sender: TcxCustomGridTableView; + ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; + AShift: TShiftState; var AHandled: Boolean); +begin + if v1name.Options.Editing=False then + begin + ToolButton1.Click; + end; +end; + +procedure TfrmDxZDYHelp.ZDYNameChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2)); + SCreateCDS20(ADOQueryMain,ClientDataSet1); + SInitCDSData20(ADOQueryMain,ClientDataSet1); + end; +end; + +end. diff --git a/Z99Dependency/ThreeFun/Form/U_YPTypeHelp.dfm b/Z99Dependency/ThreeFun/Form/U_YPTypeHelp.dfm new file mode 100644 index 0000000..c275f50 --- /dev/null +++ b/Z99Dependency/ThreeFun/Form/U_YPTypeHelp.dfm @@ -0,0 +1,63 @@ +object frmYPTypeHelp: TfrmYPTypeHelp + Left = 320 + Top = 178 + Width = 371 + Height = 524 + Caption = #26679#21697#31867#21035#36873#25321#21015#34920 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnCreate = FormCreate + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object cxDBTreeList1: TcxDBTreeList + Left = 0 + Top = 0 + Width = 249 + Height = 486 + Align = alLeft + Bands = < + item + end> + BufferedPaint = False + DataController.DataSource = DataSource1 + DataController.ParentField = 'CPParent' + DataController.KeyField = 'CPID' + OptionsBehavior.ExpandOnDblClick = False + OptionsSelection.CellSelect = False + OptionsView.CellAutoHeight = True + OptionsView.Headers = False + RootValue = -1 + TabOrder = 0 + OnDblClick = cxDBTreeList1DblClick + object cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn + DataBinding.FieldName = 'CPName' + Width = 210 + Position.ColIndex = 1 + Position.RowIndex = 0 + Position.BandIndex = 0 + end + end + object ADOConnection1: TADOConnection + LoginPrompt = False + Left = 288 + Top = 60 + end + object DataSource1: TDataSource + DataSet = ADOQueryHelp + Left = 280 + Top = 188 + end + object ADOQueryHelp: TADOQuery + Connection = ADOConnection1 + Parameters = <> + Left = 288 + Top = 136 + end +end diff --git a/Z99Dependency/ThreeFun/Form/U_YPTypeHelp.pas b/Z99Dependency/ThreeFun/Form/U_YPTypeHelp.pas new file mode 100644 index 0000000..f078b17 --- /dev/null +++ b/Z99Dependency/ThreeFun/Form/U_YPTypeHelp.pas @@ -0,0 +1,70 @@ +unit U_YPTypeHelp; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, + cxInplaceContainer, cxDBTL, cxControls, cxTLData, DB, ADODB; + +type + TfrmYPTypeHelp = class(TForm) + ADOConnection1: TADOConnection; + cxDBTreeList1: TcxDBTreeList; + cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn; + DataSource1: TDataSource; + ADOQueryHelp: TADOQuery; + procedure FormCreate(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure cxDBTreeList1DblClick(Sender: TObject); + private + { Private declarations } + public + { Public declarations } + end; + +var + frmYPTypeHelp: TfrmYPTypeHelp; + +implementation + +uses + U_DataLink; +{$R *.dfm} + +procedure TfrmYPTypeHelp.FormCreate(Sender: TObject); +begin + cxDBTreeList1.Align := alclient; + try + with ADOConnection1 do + begin + Connected := false; + ConnectionString := DConString; + //ConnectionString:=''; + Connected := true; + end; + except + end; +end; + +procedure TfrmYPTypeHelp.FormShow(Sender: TObject); +begin + with ADOQueryHelp do + begin + Close; + SQL.Clear; + SQL.Add('select * from CP_Type where FLType=''样品类别'' order by CPlevel,CPOrder,CPName'); + Open; + end; + cxDBTreeList1.Items[0].Expand(false); +end; + +procedure TfrmYPTypeHelp.cxDBTreeList1DblClick(Sender: TObject); +begin + if ADOQueryHelp.IsEmpty then + exit; + ModalResult := 1; +end; + +end. + diff --git a/Z99Dependency/ThreeFun/Fun/U_CPBCKKCSel.dfm b/Z99Dependency/ThreeFun/Fun/U_CPBCKKCSel.dfm new file mode 100644 index 0000000..b703243 --- /dev/null +++ b/Z99Dependency/ThreeFun/Fun/U_CPBCKKCSel.dfm @@ -0,0 +1,633 @@ +object frmCPBCKKCSel: TfrmCPBCKKCSel + Left = 506 + Top = 220 + Width = 1181 + Height = 511 + Align = alClient + Caption = #25104#21697#24067#24211#23384#36873#25321 + Color = clBtnFace + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + OldCreateOrder = False + Position = poScreenCenter + OnClose = FormClose + OnDestroy = FormDestroy + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 12 + object ToolBar1: TToolBar + Left = 0 + Top = 0 + Width = 1165 + Height = 33 + ButtonHeight = 30 + ButtonWidth = 59 + Caption = 'ToolBar1' + Color = clSkyBlue + Flat = True + Font.Charset = GB2312_CHARSET + Font.Color = clWindowText + Font.Height = -12 + Font.Name = #23435#20307 + Font.Style = [] + Images = DataLink_PBMDDJ.ThreeImgList + List = True + ParentColor = False + ParentFont = False + ShowCaptions = True + TabOrder = 0 + object TBRafresh: TToolButton + Left = 0 + Top = 0 + AutoSize = True + Caption = #21047#26032 + ImageIndex = 0 + OnClick = TBRafreshClick + end + object TBFind: TToolButton + Left = 63 + Top = 0 + AutoSize = True + Caption = #36807#28388 + ImageIndex = 20 + OnClick = TBFindClick + end + object ToolButton1: TToolButton + Left = 126 + Top = 0 + AutoSize = True + Caption = #30830#23450 + ImageIndex = 31 + Visible = False + OnClick = ToolButton1Click + end + object TBClose: TToolButton + Left = 189 + Top = 0 + AutoSize = True + Caption = #20851#38381 + ImageIndex = 21 + OnClick = TBCloseClick + end + end + object Panel1: TPanel + Left = 0 + Top = 33 + Width = 1165 + Height = 60 + Align = alTop + BevelInner = bvRaised + BevelOuter = bvLowered + Color = clSkyBlue + TabOrder = 1 + object Label3: TLabel + Left = 199 + Top = 12 + Width = 24 + Height = 12 + Caption = #21697#21517 + end + object Label4: TLabel + Left = 340 + Top = 12 + Width = 36 + Height = 12 + Caption = #21152#24037#21378 + end + object Label5: TLabel + Left = 26 + Top = 12 + Width = 48 + Height = 12 + Caption = #20837#24211#21333#21495 + end + object Label8: TLabel + Left = 199 + Top = 36 + Width = 24 + Height = 12 + Caption = #35268#26684 + end + object Label12: TLabel + Left = 27 + Top = 36 + Width = 48 + Height = 12 + Caption = #20837#24211#31867#22411 + end + object Label6: TLabel + Left = 340 + Top = 36 + Width = 36 + Height = 12 + Caption = #25104' '#20998 + end + object Label7: TLabel + Left = 470 + Top = 12 + Width = 48 + Height = 12 + Caption = #35746' '#21333' '#21495 + end + object Label1: TLabel + Left = 470 + Top = 36 + Width = 48 + Height = 12 + Caption = #23384#25918#24037#21378 + end + object Label2: TLabel + Left = 646 + Top = 36 + Width = 48 + Height = 12 + Caption = #24211' '#20301 + end + object Label9: TLabel + Left = 646 + Top = 12 + Width = 48 + Height = 12 + Caption = #26579#21378#32568#21495 + end + object Label10: TLabel + Left = 774 + Top = 36 + Width = 24 + Height = 12 + Caption = #39068#33394 + end + object SPName: TEdit + Tag = 2 + Left = 226 + Top = 9 + Width = 100 + Height = 20 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 0 + OnChange = TBFindClick + end + object FactoryName: TEdit + Tag = 2 + Left = 378 + Top = 9 + Width = 78 + Height = 20 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 1 + OnChange = FactoryNameChange + end + object SPID: TEdit + Tag = 2 + Left = 76 + Top = 9 + Width = 109 + Height = 20 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 2 + OnChange = TBFindClick + end + object SPSpec: TEdit + Tag = 2 + Left = 226 + Top = 32 + Width = 100 + Height = 20 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 3 + OnChange = TBFindClick + end + object CRType: TComboBox + Tag = 2 + Left = 76 + Top = 32 + Width = 109 + Height = 20 + Style = csDropDownList + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + ItemHeight = 12 + TabOrder = 4 + OnChange = TBFindClick + Items.Strings = ( + #21152#24037#23436#25104 + #22238#20462#23436#25104 + #26816#39564#36864#22238 + #26399#21021#20837#24211 + '') + end + object SPCF: TEdit + Tag = 2 + Left = 378 + Top = 32 + Width = 78 + Height = 20 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 5 + OnChange = FactoryNameChange + end + object OrderNo: TEdit + Tag = 2 + Left = 519 + Top = 9 + Width = 108 + Height = 20 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 6 + OnChange = FactoryNameChange + end + object ToFactoryName: TEdit + Tag = 2 + Left = 519 + Top = 33 + Width = 108 + Height = 20 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 7 + OnChange = FactoryNameChange + end + object KuWei: TEdit + Tag = 2 + Left = 694 + Top = 32 + Width = 65 + Height = 20 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 8 + OnChange = FactoryNameChange + end + object RCGangNo: TEdit + Tag = 2 + Left = 694 + Top = 8 + Width = 65 + Height = 20 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 9 + OnChange = FactoryNameChange + end + object SPColor: TEdit + Tag = 2 + Left = 799 + Top = 32 + Width = 65 + Height = 20 + ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 + TabOrder = 10 + OnChange = FactoryNameChange + end + end + object cxGrid2: TcxGrid + Left = 0 + Top = 93 + Width = 1165 + Height = 380 + Align = alClient + PopupMenu = PopupMenu1 + TabOrder = 2 + object Tv1: TcxGridDBTableView + NavigatorButtons.ConfirmDelete = False + DataController.DataSource = DataSource1 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skCount + end + item + Kind = skSum + end + item + Kind = skSum + Column = v2Column6 + end + item + Kind = skSum + end + item + Kind = skSum + Column = v1Column9 + end> + DataController.Summary.SummaryGroups = <> + OptionsCustomize.ColumnFiltering = False + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Inactive = DataLink_PBMDDJ.SHuangSe + Styles.IncSearch = DataLink_PBMDDJ.SHuangSe + Styles.Selection = DataLink_PBMDDJ.SHuangSe + Styles.Header = DataLink_PBMDDJ.Default + object v1Column20: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'SSel' + PropertiesClassName = 'TcxCheckBoxProperties' + Properties.ImmediatePost = True + Properties.NullStyle = nssUnchecked + HeaderAlignmentHorz = taCenter + Width = 44 + end + object v1Column6: TcxGridDBColumn + Caption = #20837#24211#21333#21495 + DataBinding.FieldName = 'SPID' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 83 + end + object v1Column2: TcxGridDBColumn + Tag = 2 + Caption = #20837#24211#26102#38388 + DataBinding.FieldName = 'CRTime' + PropertiesClassName = 'TcxDateEditProperties' + Properties.SaveTime = False + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 93 + end + object v1Column4: TcxGridDBColumn + Tag = 2 + Caption = #20837#24211#31867#22411 + DataBinding.FieldName = 'CRType' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + #27491#24120#20837#24211 + #29983#20135#36864#22238 + #26399#21021#20837#24211) + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 81 + end + object v1Column13: TcxGridDBColumn + Caption = #35746#21333#21495 + DataBinding.FieldName = 'OrderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 95 + end + object v1Column14: TcxGridDBColumn + Tag = 2 + Caption = #21152#24037#21378 + DataBinding.FieldName = 'FactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Alignment.Horz = taLeftJustify + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 103 + end + object v1Column15: TcxGridDBColumn + Caption = #39068#33394 + DataBinding.FieldName = 'SPColor' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 116 + end + object v1Column22: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'CustomerNoName' + HeaderAlignmentHorz = taCenter + Width = 83 + end + object v1Column21: TcxGridDBColumn + Caption = #32534#21495 + DataBinding.FieldName = 'spcode' + HeaderAlignmentHorz = taCenter + Width = 82 + end + object v2Column1: TcxGridDBColumn + Tag = 2 + Caption = #21697#21517 + DataBinding.FieldName = 'SPName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 97 + end + object v1Column8: TcxGridDBColumn + Tag = 2 + Caption = #35268#26684 + DataBinding.FieldName = 'SPSpec' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Editing = False + Width = 65 + end + object v1Column7: TcxGridDBColumn + Tag = 2 + Caption = #25104#20998 + DataBinding.FieldName = 'SPCF' + HeaderAlignmentHorz = taCenter + HeaderGlyphAlignmentHorz = taCenter + Options.Editing = False + Width = 73 + end + object v1Column1: TcxGridDBColumn + Tag = 2 + Caption = #38376#24133 + DataBinding.FieldName = 'SPMF' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 73 + end + object v1Column10: TcxGridDBColumn + Caption = #20811#37325 + DataBinding.FieldName = 'SPKZ' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1Column16: TcxGridDBColumn + Caption = #26469#33258#24037#21378 + DataBinding.FieldName = 'FromFactoryName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object v1Column11: TcxGridDBColumn + Tag = 2 + Caption = #23384#25918#24037#21378 + DataBinding.FieldName = 'ToFactoryName' + PropertiesClassName = 'TcxButtonEditProperties' + Properties.Buttons = < + item + Default = True + Kind = bkEllipsis + end> + Properties.ReadOnly = True + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 90 + end + object v1Column18: TcxGridDBColumn + Caption = #24211#20301 + DataBinding.FieldName = 'KuWei' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 76 + end + object v1Column19: TcxGridDBColumn + Caption = #26579#21378#32568#21495 + DataBinding.FieldName = 'RCGangNo' + Options.Editing = False + Width = 67 + end + object v1Column9: TcxGridDBColumn + Tag = 2 + Caption = #24211#23384#21305#25968 + DataBinding.FieldName = 'MXKCPiQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 67 + end + object v2Column6: TcxGridDBColumn + Tag = 2 + Caption = #24211#23384#25968#37327 + DataBinding.FieldName = 'MXKCQty' + PropertiesClassName = 'TcxTextEditProperties' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 85 + end + object v1Column3: TcxGridDBColumn + Tag = 2 + Caption = #25968#37327#21333#20301 + DataBinding.FieldName = 'QtyUnit' + PropertiesClassName = 'TcxComboBoxProperties' + Properties.DropDownListStyle = lsFixedList + Properties.Items.Strings = ( + 'Kg' + 'M' + 'Y') + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 66 + end + object v1Column12: TcxGridDBColumn + Tag = 2 + Caption = #22791#27880 + DataBinding.FieldName = 'Note' + Options.Editing = False + Width = 79 + end + end + object cxGrid2Level1: TcxGridLevel + GridView = Tv1 + end + end + object ADOQueryCmd: TADOQuery + Connection = DataLink_PBMDDJ.ADOLink + Parameters = <> + Left = 792 + end + object ADOQueryMain: TADOQuery + Connection = DataLink_PBMDDJ.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 824 + end + object ADOQueryTemp: TADOQuery + Connection = DataLink_PBMDDJ.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 760 + end + object DataSource1: TDataSource + DataSet = CDS_Main + Left = 920 + Top = 152 + end + object cxGridPopupMenu1: TcxGridPopupMenu + Grid = cxGrid2 + PopupMenus = <> + Left = 888 + Top = 152 + end + object CDS_Main: TClientDataSet + Aggregates = <> + Params = <> + Left = 952 + Top = 152 + end + object RM1: TRMGridReport + ThreadPrepareReport = True + InitialZoom = pzDefault + PreviewButtons = [pbZoom, pbLoad, pbSave, pbPrint, pbFind, pbPageSetup, pbExit, pbExport, pbNavigator] + DefaultCollate = False + SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\' + PreviewOptions.RulerUnit = rmutScreenPixels + PreviewOptions.RulerVisible = False + PreviewOptions.DrawBorder = False + PreviewOptions.BorderPen.Color = clGray + PreviewOptions.BorderPen.Style = psDash + Dataset = RMDBMain + CompressLevel = rmzcFastest + CompressThread = False + LaterBuildEvents = True + OnlyOwnerDataSet = False + Left = 360 + Top = 232 + ReportData = {} + end + object RMDBMain: TRMDBDataSet + Visible = True + DataSet = CDS_PRT + Left = 424 + Top = 232 + end + object RMXLSExport1: TRMXLSExport + ShowAfterExport = True + ExportPrecision = 1 + PagesOfSheet = 100 + ExportImages = True + ExportFrames = True + ExportImageFormat = ifBMP + JPEGQuality = 0 + ScaleX = 1.000000000000000000 + ScaleY = 1.000000000000000000 + CompressFile = False + Left = 392 + Top = 232 + end + object RMDBHZ: TRMDBDataSet + Visible = True + DataSet = CDS_HZ + Left = 520 + Top = 232 + end + object CDS_HZ: TClientDataSet + Aggregates = <> + Params = <> + Left = 488 + Top = 232 + end + object CDS_PRT: TClientDataSet + Aggregates = <> + Params = <> + Left = 456 + Top = 232 + end + object PopupMenu1: TPopupMenu + Left = 328 + Top = 232 + object N1: TMenuItem + Caption = #20840#36873 + OnClick = N1Click + end + object N2: TMenuItem + Caption = #20840#24323 + OnClick = N2Click + end + end +end diff --git a/Z99Dependency/ThreeFun/Fun/U_CPBCKKCSel.pas b/Z99Dependency/ThreeFun/Fun/U_CPBCKKCSel.pas new file mode 100644 index 0000000..6462df2 --- /dev/null +++ b/Z99Dependency/ThreeFun/Fun/U_CPBCKKCSel.pas @@ -0,0 +1,227 @@ +unit U_CPBCKKCSel; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, + cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView, + cxGridBandedTableView, cxGridDBBandedTableView, cxGridLevel, cxClasses, + cxControls, cxGridCustomView, cxGridDBTableView, cxGrid, StdCtrls, ComCtrls, + ExtCtrls, ToolWin, cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, DBClient, + cxDropDownEdit, cxCheckBox, RM_Common, RM_Class, RM_e_Xls, RM_Dataset, + RM_System, RM_GridReport, Menus, cxCalendar, cxButtonEdit, cxTextEdit; + +type + TfrmCPBCKKCSel = class(TForm) + ToolBar1: TToolBar; + TBRafresh: TToolButton; + TBFind: TToolButton; + TBClose: TToolButton; + Panel1: TPanel; + ADOQueryCmd: TADOQuery; + ADOQueryMain: TADOQuery; + ADOQueryTemp: TADOQuery; + DataSource1: TDataSource; + cxGridPopupMenu1: TcxGridPopupMenu; + CDS_Main: TClientDataSet; + RM1: TRMGridReport; + RMDBMain: TRMDBDataSet; + RMXLSExport1: TRMXLSExport; + RMDBHZ: TRMDBDataSet; + CDS_HZ: TClientDataSet; + CDS_PRT: TClientDataSet; + PopupMenu1: TPopupMenu; + N1: TMenuItem; + N2: TMenuItem; + ToolButton1: TToolButton; + cxGrid2: TcxGrid; + Tv1: TcxGridDBTableView; + v1Column6: TcxGridDBColumn; + v1Column2: TcxGridDBColumn; + v1Column4: TcxGridDBColumn; + v1Column13: TcxGridDBColumn; + v1Column14: TcxGridDBColumn; + v2Column1: TcxGridDBColumn; + v1Column8: TcxGridDBColumn; + v1Column7: TcxGridDBColumn; + v1Column1: TcxGridDBColumn; + v1Column10: TcxGridDBColumn; + v1Column11: TcxGridDBColumn; + v1Column9: TcxGridDBColumn; + v2Column6: TcxGridDBColumn; + v1Column3: TcxGridDBColumn; + v1Column12: TcxGridDBColumn; + cxGrid2Level1: TcxGridLevel; + Label3: TLabel; + Label4: TLabel; + Label5: TLabel; + Label8: TLabel; + Label12: TLabel; + Label6: TLabel; + Label7: TLabel; + SPName: TEdit; + FactoryName: TEdit; + SPID: TEdit; + SPSpec: TEdit; + CRType: TComboBox; + SPCF: TEdit; + OrderNo: TEdit; + Label1: TLabel; + ToFactoryName: TEdit; + v1Column16: TcxGridDBColumn; + v1Column15: TcxGridDBColumn; + Label2: TLabel; + KuWei: TEdit; + v1Column18: TcxGridDBColumn; + v1Column19: TcxGridDBColumn; + Label9: TLabel; + RCGangNo: TEdit; + Label10: TLabel; + SPColor: TEdit; + v1Column20: TcxGridDBColumn; + v1Column21: TcxGridDBColumn; + v1Column22: TcxGridDBColumn; + procedure FormDestroy(Sender: TObject); + procedure FormClose(Sender: TObject; var Action: TCloseAction); + procedure TBRafreshClick(Sender: TObject); + procedure ConNoMChange(Sender: TObject); + procedure TBCloseClick(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure TBFindClick(Sender: TObject); + procedure MPRTCodeNameChange(Sender: TObject); + procedure N1Click(Sender: TObject); + procedure N2Click(Sender: TObject); + procedure SXBatchNOChange(Sender: TObject); + procedure FactoryNameChange(Sender: TObject); + procedure ToolButton1Click(Sender: TObject); + procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + private + procedure InitGrid(); + { Private declarations } + public + { Public declarations } + end; + +var + frmCPBCKKCSel: TfrmCPBCKKCSel; + +implementation + +uses + U_DataLink, U_RTFun, U_SXCKInPut; + +{$R *.dfm} + +procedure TfrmCPBCKKCSel.FormDestroy(Sender: TObject); +begin + frmDJBCKKCSelList := nil; +end; + +procedure TfrmCPBCKKCSel.FormClose(Sender: TObject; var Action: TCloseAction); +begin + Action := caFree; +end; + +procedure TfrmCPBCKKCSel.InitGrid(); +begin + try + ADOQueryMain.DisableControls; + with ADOQueryMain do + begin + Filtered := False; + Close; + sql.Clear; + sql.Add(' select A.* '); + sql.Add(' ,OrderNo=(select OrderNo from JYOrder_Main JM where JM.MainId=A.OrdMainIdRK )'); + sql.Add(' from CK_SXPB_CR A where isnull(CKName,'''')=''成品布'' '); + SQL.Add(' and A.CRFlag=''入库'' and MXKCQty>0'); + Open; + //ShowMessage(SQL.Text); + end; + SCreateCDS20(ADOQueryMain, CDS_Main); + SInitCDSData20(ADOQueryMain, CDS_Main); + finally + ADOQueryMain.EnableControls; + end; +end; + +procedure TfrmCPBCKKCSel.TBRafreshClick(Sender: TObject); +begin + InitGrid(); +end; + +procedure TfrmCPBCKKCSel.ConNoMChange(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); + end; +end; + +procedure TfrmCPBCKKCSel.TBCloseClick(Sender: TObject); +begin + WriteCxGrid('待检布库存选择列表', Tv1, '待检布仓库'); + Close; +end; + +procedure TfrmCPBCKKCSel.FormShow(Sender: TObject); +begin + ReadCxGrid('待检布库存选择列表', Tv1, '待检布仓库'); + //InitGrid(); +end; + +procedure TfrmCPBCKKCSel.TBFindClick(Sender: TObject); +begin + if ADOQueryMain.Active then + begin + SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2)); + SCreateCDS20(ADOQueryMain, CDS_Main); + SInitCDSData20(ADOQueryMain, CDS_Main); + end; +end; + +procedure TfrmCPBCKKCSel.MPRTCodeNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCPBCKKCSel.N1Click(Sender: TObject); +begin + SelOKNo(CDS_Main, True); +end; + +procedure TfrmCPBCKKCSel.N2Click(Sender: TObject); +begin + SelOKNo(CDS_Main, False); +end; + +procedure TfrmCPBCKKCSel.SXBatchNOChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCPBCKKCSel.FactoryNameChange(Sender: TObject); +begin + TBFind.Click; +end; + +procedure TfrmCPBCKKCSel.ToolButton1Click(Sender: TObject); +begin + if CDS_Main.IsEmpty then + Exit; + if CDS_Main.Locate('SSel', True, []) = False then + begin + Application.MessageBox('没有选择数据!', '提示', 0); + Exit; + end; + ModalResult := 1; +end; + +procedure TfrmCPBCKKCSel.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); +begin + ModalResult := 1; +end; + +end. + diff --git a/Z99Dependency/ThreeFun/Fun/U_Fun.pas b/Z99Dependency/ThreeFun/Fun/U_Fun.pas index 8c2a5fe..663c4fd 100644 --- a/Z99Dependency/ThreeFun/Fun/U_Fun.pas +++ b/Z99Dependency/ThreeFun/Fun/U_Fun.pas @@ -1,653 +1,652 @@ -unit U_Fun; - -interface -uses - Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, - Dialogs, ComCtrls, ToolWin, StdCtrls, BtnEdit, cxStyles, cxCustomData, - cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit,DBGrids, DB, cxDBData, - cxGridLevel, cxClasses, cxControls, cxGridCustomView, ADODB,StrUtils, - Midas,cxGridCustomTableView, cxGridTableView, cxGridDBTableView,cxTimeEdit, - cxTreeView, cxGrid,cxDBLookupComboBox,cxCalendar, cxCurrencyEdit,cxGridExportLink, - ExtCtrls, Buttons,DBClient,FTComboBox,cxDropDownEdit,cxGridBandedTableView, - cxGridDBBandedTableView,cxRichEdit,cxButtonEdit,IniFiles,WinSock,dxCore,ActiveX; -//Function sendarp(ipaddr:ulong;temp:dword;ulmacaddr:pointer;ulmacaddrleng:pointer) : DWord; StdCall; External 'Iphlpapi.dll' Name 'SendARP'; -type - TA = class(TComponent) - public - S:string; -end; - - function SGetMaxId(AdoQueryTemp:TADOQuery;MyTable:string;MyField:string;Var MaxId:Integer):Boolean; - function SIsRepeated(AdoQueryTemp:TADOQuery;MyTable:string;MyField:string;MyCode:String):Boolean; - function SSetSaveDataCDS(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBTableView; - CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; - function SSetSaveDataCDS10(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBBandedTableView; - CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; - function SGetServerDate(ADOQueryTmp:TADOQuery):TdateTime; - procedure SSetsavedata(ADOQueryCmd:TADOQuery;MyTable:string; - Myparent:TWinControl;MyTag:integer); - procedure SSetWinData(ADOQueryTmp:TADOQuery;mParent:TWinControl); - function SDelData(ADOQueryCmd:TADOQuery;mDelStr:String):Boolean; - function SGetFilters(TMPanel:TPanel;EquTag,LikeTag:Integer):string; - function SGetFiltersHint(TMPanel:TPanel;EquTag,LikeTag:Integer):string; - procedure SDofilter(ADOQry:TADOQuery;FilterStr:string); - function SGetMaxNo(MyAdoQuery:TADOQuery;MyTable:string;MyField:string;MyFlag:string):String; - procedure SCreateCDS20(SADOQry:TADOQuery; mClientDataset:TclientDataSet ); - procedure SInitCDSData20(fromADO:TADOQuery;toCDS:TclientDataSet); - procedure SCreateCDSYS(SADOQry:TADOQuery; mClientDataset:TclientDataSet ); - procedure SInitCDSDataYS(fromADO:TADOQuery;toCDS:TclientDataSet); - procedure SInitFtComBoxBySql(ADOQueryTmp:TADOQuery; - cb: TFtComboBox;FlagType:string; - Boxtype:integer; - showMsg:string; - emptyFlag:Boolean; - mSql:string - ); - procedure SInitComBoxBySql(ADOQueryTmp:TADOQuery; - cb: TComboBox; - emptyFlag:Boolean; - mSql:string - ); - procedure SInitComBoxByCustCode(ADOQueryTmp:TADOQuery; - cb: TComboBox;FlagType:string; - Boxtype:integer; - showMsg:string; - emptyFlag:Boolean - ); - procedure SInitCxGridComboBoxByCustCode(ADOQueryTmp:TADOQuery;c3:TcxGriddbColumn; - FlagType:string;PState:Integer;IsNull:Boolean;Shmeg:string); - procedure SSetsavedata10(ADOQueryCmd:TADOQuery;MyTable:string; - Myparent:TWinControl;MyTag:integer); - procedure SSetWinData10(ADOQueryTmp:TADOQuery;mParent:TWinControl); - procedure SInitCxGridComboBoxBySql(ADOQueryTmp:TADOQuery;c3:TcxGriddbColumn;FSql:string; - PState:Integer;IsNull:Boolean;Shmeg:string); - function SSWR(s: real): real; //*****四舍五入 *****// - procedure SSetWinData20(ADOQueryTmp:TADOQuery;mParent:TWinControl); - procedure SSetWinData30(ADOQueryTmp:TADOQuery;mParent:TWinControl;FTag:Integer); - procedure SCSHData(ADOQueryTmp:TADOQuery;mParent:TWinControl;FTag:Integer); - procedure SSetsavedataNew(ADOQueryCmd:TADOQuery;MyTable:string; - Myparent:TWinControl;MyTag:integer); - function SGetServerDate10(ADOQueryTmp:TADOQuery):TDateTime; - function SGetServerDateTime(ADOQueryTmp:TADOQuery):TDateTime; - procedure SCreateCDSSel(SADOQry:TADOQuery; mClientDataset:TclientDataSet ); - procedure SInitCDSDataSel(fromADO:TADOQuery;toCDS:TclientDataSet); - procedure CopyAddRow(Tv1:TcxGridDBTableView;CDS_Sub:TClientDataSet); //复制增行。(groupformat标记值) - procedure CopyAddRowBand(Tv1:TcxGridDBBandedTableView;CDS_Sub:TClientDataSet); - procedure OneKeyPost(Tv1:TcxGridDBTableView;CDS_Sub:TClientDataSet); //一键替换粘贴 - procedure CopyAddRowCDS(CDS_Sub:TClientDataSet); - function SSetSaveDataCDSNew(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBTableView; - CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; - function SGetFinds(TMPanel:TPanel;EquTag,LikeTag:Integer):string; - function SSetSaveDataCDSBandNew(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBBandedTableView; - CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; - function GetLSNoHZ(ADOQueryTmp: TADOQuery; var mMaxNo: string; mFlag: string; mTable: string; mlen: integer; mtype: integer = 0; HZype: integer = 0): Boolean; - function GetLSNo(ADOQueryTmp:TADOQuery; - var mMaxNo:string; - mFlag:string; - mTable:string; - mlen:integer; - mtype:integer=0):Boolean; - - procedure SSetsaveSql(ADOQueryCmd:TADOQuery;MyTable:string; - Myparent:TWinControl;MyTag:integer); - procedure ReadCxGrid(fileName:string;cxgrid:TcxGridDBTableView;filePack:string='公用'); - procedure ReadCxBandedGrid(fileName:string;cxgrid:TcxGridDBBandedTableView;filePack:string='公用'); - procedure WriteCxGrid(fileName:string;cxgrid:TcxGridDBTableView;filePack:string='公用'); - procedure WriteCxBandedGrid(fileName:string;cxgrid:TcxGridDBBandedTableView;filePack:string='公用'); - procedure CreateGroupSummarry(tv1:TcxGridDBTableView); - procedure TcxGridToExcel(mfileName:string;gridName:TcxGrid); - procedure TcxGridToExcelEng(mfileName:string;gridName:TcxGrid); - function ReadINIFileStr(ininame,TypeName:string;ValueName,ValueMR:String):string; - procedure SClearData(mParent:TWinControl;FTag:Integer); - procedure SelExportData(FTv:TcxGridDBTableView;FAdoQry:TADOQuery;FTile:string); - procedure SDofilter10(cds_Main:TClientDataSet;FilterStr:string); - procedure SInitCxBandGridComboBoxBySql(ADOQueryTmp:TADOQuery;c3:TcxGridDBBandedColumn;FSql:string; - PState:Integer;IsNull:Boolean;Shmeg:string); - procedure ColumnView(AdoQueryTemp:TADOQuery;Tv1:TcxGridDBTableView;MKName10:string); - procedure ColumnSet(TV10:TcxGridDBTableView;MKName10:String); - procedure ColumnBandSet(TV10:TcxGridDBBandedTableView;MKName10:String); - procedure ColumnBandView(AdoQueryTemp:TADOQuery;Tv1:TcxGridDBBandedTableView;MKName10:string); - procedure SCSHDataWTag(ADOQueryTmp:TADOQuery;mParent:TWinControl); - procedure GetSWLDZ(IPStr:string); - procedure SCSHDataCDS(CDS_Main:TClientDataSet;mParent:TWinControl;FTag:Integer); - procedure SelPrintData(FTv:TcxGridDBTableView;FAdoQry:TADOQuery;FTitle:string - ;FLTitle:string;FRTile:string); - procedure SelPrintDataMore(FTv:TcxGridDBTableView;FAdoQry:TADOQuery;FTitle:string - ;FLTitle:string;FRTile:string;FKK:Integer;FiniName:string); - procedure SelExportDataBand(FTv:TcxGridDBBandedTableView;FAdoQry:TADOQuery;FTile:string); - procedure SSetsaveSqlNew(ADOQueryCmd:TADOQuery;MyTable:string; - Myparent:TWinControl;MyTag:integer); - procedure SCSHDataNew(ADOQueryTmp:TADOQuery;mParent:TWinControl;FTag:Integer); - function RTSetSaveDataCDS(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBTableView; - CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; - function RTSetSaveDataCDSBand(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBBandedTableView; - CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; - procedure SCreateCDSOnly(SADOQry:TADOQuery; mClientDataset:TclientDataSet ); - procedure SInitCDSDataOnly(fromADO:TADOQuery;toCDS:TclientDataSet); - procedure SelOKNo(CDS_MainSel:TClientDataSet;FSel:Boolean); - procedure SelOKNoAdo(CDS_MainSel:TADOQuery;FSel:Boolean); - function num2cengnum(strArabic:string):string; - function num2ceng(strArabic:string):string; - procedure RTSetsavedata(ADOQueryCmd:TADOQuery;MyTable:string; - Myparent:TWinControl;MyTag:integer); - procedure InitOrderColor(OrdMainId:string;Combox:TComboBox;FAdoQry:TADOQuery); - procedure InitBCGangNo(OrdSubId:string;Combox:TComboBox;FAdoQry:TADOQuery); - procedure InitRCGangNo(OrdSubId:string;Combox:TComboBox;FAdoQry:TADOQuery); - procedure DelCDS(ClientDataSet1:TClientDataSet;ADOCmd:TADOQuery;DelSql:string); - procedure SInitComBoxByTvColumns(cb:TComboBox; - Tv1:TcxGridDBTableView; - ColumnTag:Integer; - TowFlag:Boolean; - emptyFlag:Boolean); - procedure HJ(mClientDataset:TclientDataSet;Label1:TLabel;mfieldName:double); - function num2cengnumZS(strArabic:string):string; - - function CovFileDate(Fd:_FileTime):TDateTime; - procedure GetFileEditTime(mFile:string;var editTime:tdatetime); - procedure GetFileInfo(mFile:string;var mfileSize:integer;var CreationTime:tdatetime;var WriteTime:tdatetime); - function ExportFtErpFile(mFileName:string;ADORead:TADOQuery):boolean; - function ExportFtErpFile10(mFileName:string;ADORead:TADOQuery):boolean; - procedure UpdateFileTime(FileName:string; CreationTime, LastAccessTime, LastWriteTime:TDateTime); - - procedure ClearOrHideControls(TMPanel: TPanel; HintValue: string; IsClear: Boolean; IsHide: Boolean); +unit U_Fun; + +interface +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, BtnEdit, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit,DBGrids, DB, cxDBData, + cxGridLevel, cxClasses, cxControls, cxGridCustomView, ADODB,StrUtils, + Midas,cxGridCustomTableView, cxGridTableView, cxGridDBTableView,cxTimeEdit, + cxTreeView, cxGrid,cxDBLookupComboBox,cxCalendar, cxCurrencyEdit,cxGridExportLink, + ExtCtrls, Buttons,DBClient,FTComboBox,cxDropDownEdit,cxGridBandedTableView, + cxGridDBBandedTableView,cxRichEdit,cxButtonEdit,IniFiles,WinSock,dxCore,ActiveX; +//Function sendarp(ipaddr:ulong;temp:dword;ulmacaddr:pointer;ulmacaddrleng:pointer) : DWord; StdCall; External 'Iphlpapi.dll' Name 'SendARP'; +type + TA = class(TComponent) + public + S:string; +end; + + function SGetMaxId(AdoQueryTemp:TADOQuery;MyTable:string;MyField:string;Var MaxId:Integer):Boolean; + function SIsRepeated(AdoQueryTemp:TADOQuery;MyTable:string;MyField:string;MyCode:String):Boolean; + function SSetSaveDataCDS(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBTableView; + CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; + function SSetSaveDataCDS10(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBBandedTableView; + CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; + function SGetServerDate(ADOQueryTmp:TADOQuery):TdateTime; + procedure SSetsavedata(ADOQueryCmd:TADOQuery;MyTable:string; + Myparent:TWinControl;MyTag:integer); + procedure SSetWinData(ADOQueryTmp:TADOQuery;mParent:TWinControl); + function SDelData(ADOQueryCmd:TADOQuery;mDelStr:String):Boolean; + function SGetFilters(TMPanel:TPanel;EquTag,LikeTag:Integer):string; + function SGetFiltersHint(TMPanel:TPanel;EquTag,LikeTag:Integer):string; + procedure SDofilter(ADOQry:TADOQuery;FilterStr:string); + function SGetMaxNo(MyAdoQuery:TADOQuery;MyTable:string;MyField:string;MyFlag:string):String; + procedure SCreateCDS20(SADOQry:TADOQuery; mClientDataset:TclientDataSet ); + procedure SInitCDSData20(fromADO:TADOQuery;toCDS:TclientDataSet); + procedure SCreateCDSYS(SADOQry:TADOQuery; mClientDataset:TclientDataSet ); + procedure SInitCDSDataYS(fromADO:TADOQuery;toCDS:TclientDataSet); + procedure SInitFtComBoxBySql(ADOQueryTmp:TADOQuery; + cb: TFtComboBox;FlagType:string; + Boxtype:integer; + showMsg:string; + emptyFlag:Boolean; + mSql:string + ); + procedure SInitComBoxBySql(ADOQueryTmp:TADOQuery; + cb: TComboBox; + emptyFlag:Boolean; + mSql:string + ); + procedure SInitComBoxByCustCode(ADOQueryTmp:TADOQuery; + cb: TComboBox;FlagType:string; + Boxtype:integer; + showMsg:string; + emptyFlag:Boolean + ); + procedure SInitCxGridComboBoxByCustCode(ADOQueryTmp:TADOQuery;c3:TcxGriddbColumn; + FlagType:string;PState:Integer;IsNull:Boolean;Shmeg:string); + procedure SSetsavedata10(ADOQueryCmd:TADOQuery;MyTable:string; + Myparent:TWinControl;MyTag:integer); + procedure SSetWinData10(ADOQueryTmp:TADOQuery;mParent:TWinControl); + procedure SInitCxGridComboBoxBySql(ADOQueryTmp:TADOQuery;c3:TcxGriddbColumn;FSql:string; + PState:Integer;IsNull:Boolean;Shmeg:string); + function SSWR(s: real): real; //*****四舍五入 *****// + procedure SSetWinData20(ADOQueryTmp:TADOQuery;mParent:TWinControl); + procedure SSetWinData30(ADOQueryTmp:TADOQuery;mParent:TWinControl;FTag:Integer); + procedure SCSHData(ADOQueryTmp:TADOQuery;mParent:TWinControl;FTag:Integer); + procedure SSetsavedataNew(ADOQueryCmd:TADOQuery;MyTable:string; + Myparent:TWinControl;MyTag:integer); + function SGetServerDate10(ADOQueryTmp:TADOQuery):TDateTime; + function SGetServerDateTime(ADOQueryTmp:TADOQuery):TDateTime; + procedure SCreateCDSSel(SADOQry:TADOQuery; mClientDataset:TclientDataSet ); + procedure SInitCDSDataSel(fromADO:TADOQuery;toCDS:TclientDataSet); + procedure CopyAddRow(Tv1:TcxGridDBTableView;CDS_Sub:TClientDataSet); //复制增行。(groupformat标记值) + procedure CopyAddRowBand(Tv1:TcxGridDBBandedTableView;CDS_Sub:TClientDataSet); + procedure OneKeyPost(Tv1:TcxGridDBTableView;CDS_Sub:TClientDataSet); //一键替换粘贴 + procedure CopyAddRowCDS(CDS_Sub:TClientDataSet); + function SSetSaveDataCDSNew(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBTableView; + CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; + function SGetFinds(TMPanel:TPanel;EquTag,LikeTag:Integer):string; + function SSetSaveDataCDSBandNew(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBBandedTableView; + CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; + function GetLSNoHZ(ADOQueryTmp: TADOQuery; var mMaxNo: string; mFlag: string; mTable: string; mlen: integer; mtype: integer = 0; HZype: integer = 0): Boolean; + function GetLSNo(ADOQueryTmp:TADOQuery; + var mMaxNo:string; + mFlag:string; + mTable:string; + mlen:integer; + mtype:integer=0):Boolean; + + procedure SSetsaveSql(ADOQueryCmd:TADOQuery;MyTable:string; + Myparent:TWinControl;MyTag:integer); + procedure ReadCxGrid(fileName:string;cxgrid:TcxGridDBTableView;filePack:string='公用'); + procedure ReadCxBandedGrid(fileName:string;cxgrid:TcxGridDBBandedTableView;filePack:string='公用'); + procedure WriteCxGrid(fileName:string;cxgrid:TcxGridDBTableView;filePack:string='公用'); + procedure WriteCxBandedGrid(fileName:string;cxgrid:TcxGridDBBandedTableView;filePack:string='公用'); + procedure CreateGroupSummarry(tv1:TcxGridDBTableView); + procedure TcxGridToExcel(mfileName:string;gridName:TcxGrid); + procedure TcxGridToExcelEng(mfileName:string;gridName:TcxGrid); + function ReadINIFileStr(ininame,TypeName:string;ValueName,ValueMR:String):string; + procedure SClearData(mParent:TWinControl;FTag:Integer); + procedure SelExportData(FTv:TcxGridDBTableView;FAdoQry:TADOQuery;FTile:string); + procedure SDofilter10(cds_Main:TClientDataSet;FilterStr:string); + procedure SInitCxBandGridComboBoxBySql(ADOQueryTmp:TADOQuery;c3:TcxGridDBBandedColumn;FSql:string; + PState:Integer;IsNull:Boolean;Shmeg:string); + procedure ColumnView(AdoQueryTemp:TADOQuery;Tv1:TcxGridDBTableView;MKName10:string); + procedure ColumnSet(TV10:TcxGridDBTableView;MKName10:String); + procedure ColumnBandSet(TV10:TcxGridDBBandedTableView;MKName10:String); + procedure ColumnBandView(AdoQueryTemp:TADOQuery;Tv1:TcxGridDBBandedTableView;MKName10:string); + procedure SCSHDataWTag(ADOQueryTmp:TADOQuery;mParent:TWinControl); + procedure GetSWLDZ(IPStr:string); + procedure SCSHDataCDS(CDS_Main:TClientDataSet;mParent:TWinControl;FTag:Integer); + procedure SelPrintData(FTv:TcxGridDBTableView;FAdoQry:TADOQuery;FTitle:string + ;FLTitle:string;FRTile:string); + procedure SelPrintDataMore(FTv:TcxGridDBTableView;FAdoQry:TADOQuery;FTitle:string + ;FLTitle:string;FRTile:string;FKK:Integer;FiniName:string); + procedure SelExportDataBand(FTv:TcxGridDBBandedTableView;FAdoQry:TADOQuery;FTile:string); + procedure SSetsaveSqlNew(ADOQueryCmd:TADOQuery;MyTable:string; + Myparent:TWinControl;MyTag:integer); + procedure SCSHDataNew(ADOQueryTmp:TADOQuery;mParent:TWinControl;FTag:Integer); + function RTSetSaveDataCDS(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBTableView; + CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; + function RTSetSaveDataCDSBand(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBBandedTableView; + CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; + procedure SCreateCDSOnly(SADOQry:TADOQuery; mClientDataset:TclientDataSet ); + procedure SInitCDSDataOnly(fromADO:TADOQuery;toCDS:TclientDataSet); + procedure SelOKNo(CDS_MainSel:TClientDataSet;FSel:Boolean); + procedure SelOKNoAdo(CDS_MainSel:TADOQuery;FSel:Boolean); + function num2cengnum(strArabic:string):string; + function num2ceng(strArabic:string):string; + procedure RTSetsavedata(ADOQueryCmd:TADOQuery;MyTable:string; + Myparent:TWinControl;MyTag:integer); + procedure InitOrderColor(OrdMainId:string;Combox:TComboBox;FAdoQry:TADOQuery); + procedure InitBCGangNo(OrdSubId:string;Combox:TComboBox;FAdoQry:TADOQuery); + procedure InitRCGangNo(OrdSubId:string;Combox:TComboBox;FAdoQry:TADOQuery); + procedure DelCDS(ClientDataSet1:TClientDataSet;ADOCmd:TADOQuery;DelSql:string); + procedure SInitComBoxByTvColumns(cb:TComboBox; + Tv1:TcxGridDBTableView; + ColumnTag:Integer; + TowFlag:Boolean; + emptyFlag:Boolean); + procedure HJ(mClientDataset:TclientDataSet;Label1:TLabel;mfieldName:double); + function num2cengnumZS(strArabic:string):string; + + function CovFileDate(Fd:_FileTime):TDateTime; + procedure GetFileEditTime(mFile:string;var editTime:tdatetime); + procedure GetFileInfo(mFile:string;var mfileSize:integer;var CreationTime:tdatetime;var WriteTime:tdatetime); + function ExportFtErpFile(mFileName:string;ADORead:TADOQuery):boolean; + function ExportFtErpFile10(mFileName:string;ADORead:TADOQuery):boolean; + procedure UpdateFileTime(FileName:string; CreationTime, LastAccessTime, LastWriteTime:TDateTime); + + procedure ClearOrHideControls(TMPanel: TPanel; HintValue: string; IsClear: Boolean; IsHide: Boolean); procedure AssignmentControls(TMPanel: TPanel; TMClientDataset: TclientDataSet; Hintvalue: string); procedure IsVisibleTV(TMPanel: TPanel; MTV: TcxGridDBTableView; Hintvalue: string; IsVisible: Boolean); - - function RoundFloat(f: double; i: integer): double; - -implementation -uses U_DataLink,U_SelExportField,U_ColumnSet,U_ColumnBandSet,U_SelPrintFieldNew; - - function RoundFloat(f: double; i: integer): double; -var - s: string; - ef: Extended; -begin - if f = 0 then begin - Result := 0; - Exit; - end; - s := '#.' + StringOfChar('0', i); - if s = '#.' then s := '#'; - ef := StrToFloat(FloatToStr(f)); //防止浮点运算的误差 - result := StrToFloat(FormatFloat(s, ef)); -end; - function ExportFtErpFile(mFileName:string;ADORead:TADOQuery):boolean; -var - Stream : TMemoryStream; - ff:TADOBlobstream; - mfileSize:integer; - mCreationTime:TdateTime; - mWriteTime:TdateTime; - IsFileHas:boolean; - mChildPath:string; - mFilePath:string; -begin - try - result:=false; - mChildPath:=''; - /////////////////////////////////////////////// - //获取文件下载的子路径 - with ADORead do - begin - close; - sql.Clear ; - sql.Add('select FilePath '); - sql.Add('from RT_FileUpdate'); - sql.Add('where FileName='+quotedStr(mFileName)); - Open; - if RecordCount>0 then - begin - // if not fieldByName('valid').AsBoolean then exit; - if trim(fieldByName('FilePath').AsString)<>'' then - mChildPath:=trim(fieldByName('FilePath').AsString)+'\'; - end; - end; - //如果产品存在 - mFilePath:= ExtractFilePath(Paramstr(0))+mChildPath; - IsFileHas:= FileExists(mFilePath+mFileName); - if IsFileHas then - begin - ////////////////////////// - //获取文件信息 - GetFileInfo(mFilePath+mFileName,mfileSize,mCreationTime,mWriteTime); - end; - ////////////////////////////////////////// - //存在文件 - if IsFileHas then - begin - with ADORead do - begin - close; - sql.Clear ; - sql.Add('select count(FileName) as cnt '); - sql.Add('from RT_FileUpdate'); - sql.Add('where FileName='+quotedStr(mFileName)); - // sql.Add('and fileEditDate>'''+formatDateTime('yyyy-MM-dd hh:mm',mWriteTime)+''''); - sql.Add(' and DATEDIFF(minute,'+ quotedStr(formatDateTime('yyyy-MM-dd hh:mm',mWriteTime))+',fileEditDate)>0'); - Open; - - - //是否存在新的文件 - if fieldByName('cnt').AsInteger>0 then - begin - close; - sql.Clear ; - sql.Add('select * '); - sql.Add('from RT_FileUpdate'); - sql.Add('where FileName='+quotedStr(mFileName)); - - Open; - - ff := TADOBlobstream.Create(fieldByName('Files') as TblobField, bmRead); - end - else - begin - exit; - end; - - if trim(fieldByName('FilePath').AsString)<>'' then - mChildPath:=trim(fieldByName('FilePath').AsString)+'\'; - end; - end - ////////////////////////////////////// - //不存在 - else - begin - with ADORead do - begin - close; - sql.Clear ; - sql.Add('select * '); - sql.Add('from RT_FileUpdate'); - sql.Add('where FileName='+quotedStr(mFileName)); - Open; - - if recordCount>0 then - begin - ff := TADOBlobstream.Create(fieldByName('Files') as TblobField, bmRead); - end - else - begin - exit; - end; - - if trim(fieldByName('FilePath').AsString)<>'' then - mChildPath:=trim(fieldByName('FilePath').AsString)+'\'; - end; - - end; - - if ff<>nil then - begin - try - mfileName:=trim(ADORead.fieldByName('FileName').asString); - if not DirectoryExists(ExtractFileDir(mFilePath+mfileName)) then - ForceDirectories(ExtractFileDir(mFilePath+mfileName)); - Stream:= TMemoryStream.Create ; - //OleContainer1.SaveToStream(Stream); - //ADOQuery1FileContent.SaveToFile('tmp'); //数据存入临时文件 - //OleContainer1.LoadFromFile('tmp'); //从临时文件中读取OLE对象 - ff.SaveToStream(Stream); - //OleContainer1.SaveToFile(ExtractFilePath(Paramstr(0))+mfielName) - Stream.SaveToFile(mFilePath+mfileName); //+'\tmpFile\' - - //OleContainer1.SaveToFile('tmp'); - finally - Stream.Free ; - end; - end; - UpdateFileTime(mFilePath+mfileName,ADORead.fieldByName('FileCreateDate').AsDateTime,ADORead.fieldByName('FileEditDate').AsDateTime,ADORead.fieldByName('FileEditDate').AsDateTime); - Result:=true; - except - application.MessageBox(pchar('读取文件'+mfileName+'失败!'),'提示信息',0); - end; -end; -function ExportFtErpFile10(mFileName:string;ADORead:TADOQuery):boolean; -var - Stream : TMemoryStream; - ff:TADOBlobstream; - mfileSize:integer; - mCreationTime:TdateTime; - mWriteTime:TdateTime; - IsFileHas:boolean; - mChildPath:string; - mFilePath:string; -begin - try - result:=false; - mChildPath:=''; - /////////////////////////////////////////////// - //获取文件下载的子路径 - with ADORead do - begin - close; - sql.Clear ; - sql.Add('select FilePath '); - sql.Add('from RT_FileUpdate'); - sql.Add('where FileName='+quotedStr(mFileName)); - Open; - if RecordCount>0 then - begin - // if not fieldByName('valid').AsBoolean then exit; - if trim(fieldByName('FilePath').AsString)<>'' then - mChildPath:='report10\'; - end; - end; - //如果产品存在 - mFilePath:= ExtractFilePath(Paramstr(0))+mChildPath; - IsFileHas:= FileExists(mFilePath+mFileName); - if IsFileHas then - begin - ////////////////////////// - //获取文件信息 - GetFileInfo(mFilePath+mFileName,mfileSize,mCreationTime,mWriteTime); - end; - ////////////////////////////////////////// - //存在文件 - if IsFileHas then - begin - with ADORead do - begin - close; - sql.Clear ; - sql.Add('select count(FileName) as cnt '); - sql.Add('from RT_FileUpdate'); - sql.Add('where FileName='+quotedStr(mFileName)); - // sql.Add('and fileEditDate>'''+formatDateTime('yyyy-MM-dd hh:mm',mWriteTime)+''''); - sql.Add(' and DATEDIFF(minute,'+ quotedStr(formatDateTime('yyyy-MM-dd hh:mm',mWriteTime))+',fileEditDate)>0'); - Open; - - - //是否存在新的文件 - if fieldByName('cnt').AsInteger>0 then - begin - close; - sql.Clear ; - sql.Add('select * '); - sql.Add('from RT_FileUpdate'); - sql.Add('where FileName='+quotedStr(mFileName)); - - Open; - - ff := TADOBlobstream.Create(fieldByName('Files') as TblobField, bmRead); - end - else - begin - exit; - end; - - if trim(fieldByName('FilePath').AsString)<>'' then - mChildPath:=trim(fieldByName('FilePath').AsString)+'\'; - end; - end - ////////////////////////////////////// - //不存在 - else - begin - with ADORead do - begin - close; - sql.Clear ; - sql.Add('select * '); - sql.Add('from RT_FileUpdate'); - sql.Add('where FileName='+quotedStr(mFileName)); - Open; - - if recordCount>0 then - begin - ff := TADOBlobstream.Create(fieldByName('Files') as TblobField, bmRead); - end - else - begin - exit; - end; - - if trim(fieldByName('FilePath').AsString)<>'' then - mChildPath:=trim(fieldByName('FilePath').AsString)+'\'; - end; - - end; - - if ff<>nil then - begin - try - mfileName:=trim(ADORead.fieldByName('FileName').asString); - if not DirectoryExists(ExtractFileDir(mFilePath+mfileName)) then - ForceDirectories(ExtractFileDir(mFilePath+mfileName)); - Stream:= TMemoryStream.Create ; - //OleContainer1.SaveToStream(Stream); - //ADOQuery1FileContent.SaveToFile('tmp'); //数据存入临时文件 - //OleContainer1.LoadFromFile('tmp'); //从临时文件中读取OLE对象 - ff.SaveToStream(Stream); - //OleContainer1.SaveToFile(ExtractFilePath(Paramstr(0))+mfielName) - Stream.SaveToFile(mFilePath+mfileName); //+'\tmpFile\' - - //OleContainer1.SaveToFile('tmp'); - finally - Stream.Free ; - end; - end; - UpdateFileTime(mFilePath+mfileName,ADORead.fieldByName('FileCreateDate').AsDateTime,ADORead.fieldByName('FileEditDate').AsDateTime,ADORead.fieldByName('FileEditDate').AsDateTime); - Result:=true; - except - application.MessageBox(pchar('读取文件'+mfileName+'失败!'),'提示信息',0); - end; -end; -procedure UpdateFileTime(FileName:string; CreationTime, LastAccessTime, LastWriteTime:TDateTime); -var - FileHnd : Integer; - SysTime : TSystemTime; - tTzi: TTimezoneInformation; - FCreationTime, FLastAccessTime, FLastWriteTime: TFileTime; -begin - GetTimezoneInformation(tTzi) ; - CreationTime := CreationTime+Ttzi.Bias/1440; - DateTimeToSystemTime(CreationTime,SysTime); - SystemTimeToFileTime(SysTime,FCreationTime); - //LastAccessTime := LastAccessTime + Ttzi.Bias/1440; - //DateTimeToSystemTime(LastAccessTime,SysTime); - //SystemTimeToFileTime(SysTime,FLastAccessTime); - LastWriteTime := LastWriteTime + Ttzi.Bias/1440; - DateTimeToSystemTime(LastWriteTime,SysTime); - SystemTimeToFileTime(SysTime,FLastWriteTime); - try - FileHnd := FileOpen(FileName, fmOpenWrite or fmShareDenyNone); - SetFileTime(FileHnd, @FCreationTime, nil, @FLastWriteTime); - finally - FileClose(FileHnd); - end; -end; -//////////////////////////////////////////////////////// - // -/////////////////////////////////////////////////////// - -procedure GetFileInfo(mFile:string;var mfileSize:integer;var CreationTime:tdatetime;var WriteTime:tdatetime); -var - vSearchRec: TSearchRec; -begin - FindFirst(mFile,faAnyFile,vSearchRec); - mfileSize:=vSearchRec.Size; - CreationTime:=CovFileDate(vSearchRec.FindData.ftCreationTime);//创建时间 - //vSearchRec.FindData.ftLastAccessTime//访问时间 - WriteTime:=CovFileDate(vSearchRec.FindData.ftLastWriteTime);//修改时间 - FindClose(vSearchRec); -end; - -procedure GetFileEditTime(mFile:string;var editTime:tdatetime); -var - vSearchRec: TSearchRec; -begin - FindFirst(mFile,faAnyFile,vSearchRec); - //mfileSize:=vSearchRec.Size; - // CreationTime:=CovFileDate(vSearchRec.FindData.ftCreationTime);//创建时间 - //vSearchRec.FindData.ftLastAccessTime//访问时间 - editTime:=CovFileDate(vSearchRec.FindData.ftLastWriteTime);//修改时间 - FindClose(vSearchRec); -end; -/////////////////////////////////////////////// - // -///////////////////////////////////////////// -function CovFileDate(Fd:_FileTime):TDateTime; -var - Tct:_SystemTime; - Temp:_FileTime; -begin - FileTimeToLocalFileTime(Fd,Temp); - FileTimeToSystemTime(Temp,Tct); - CovFileDate:=SystemTimeToDateTime(Tct); -end; -/////////////////////////////////////////////////////// - //按照搜索款隐藏表格列 -/////////////////////////////////////////////////////// - -procedure IsVisibleTV(TMPanel: TPanel; MTV: TcxGridDBTableView; Hintvalue: string; IsVisible: Boolean); -var - i, j: integer; -begin - - with TMPanel do - begin - for j := 0 to TMPanel.ControlCount - 1 do - begin - if TMPanel.Controls[j] is TEdit then - begin - if Trim(TEdit(TMPanel.Controls[j]).Hint) = Hintvalue then - begin - with MTV do - begin - for i := 0 to MTV.ColumnCount - 1 do - begin - if Trim(TEdit(TMPanel.Controls[j]).Name) = Trim(MTV.Columns[i].DataBinding.FieldName) then - begin - MTV.Columns[i].Visible := IsVisible; - Continue; - end; - end; - end; - end; - end; - if TMPanel.Controls[j] is TComboBox then - begin - if Trim(TComboBox(TMPanel.Controls[j]).Hint) = Hintvalue then - begin - with MTV do - begin - for i := 0 to MTV.ColumnCount - 1 do - begin - if Trim(TComboBox(TMPanel.Controls[j]).Name) = Trim(MTV.Columns[i].DataBinding.FieldName) then - begin - MTV.Columns[i].Visible := IsVisible; - Continue; - end; - end; - end; - end; - end; - end; - end; -end; -/////////////////////////////////////////////////////// - //将表格内容填入搜索框 -/////////////////////////////////////////////////////// - -procedure AssignmentControls(TMPanel: TPanel; TMClientDataset: TclientDataSet; Hintvalue: string); -var - i: integer; -begin - with TMPanel do - begin - for i := 0 to ControlCount - 1 do - begin - if Controls[i] is TEdit then - begin - if Trim(TEdit(Controls[i]).Hint) = Hintvalue then - begin - TEdit(Controls[i]).Text := Trim(TMClientDataset.FieldByName(TEdit(Controls[i]).Name).AsString); - end; - end; - if Controls[i] is TComboBox then - begin - if Trim(TEdit(Controls[i]).Hint) = Hintvalue then - begin - TComboBox(Controls[i]).ItemIndex := TComboBox(Controls[i]).Items.IndexOf(Trim(TMClientDataset.FieldByName(TComboBox(Controls[i]).Name).AsString)); - end; - end; - end; - end; -end; -/////////////////////////////////////////////////////// - //清除或者隐藏搜索框 -/////////////////////////////////////////////////////// - -procedure ClearOrHideControls(TMPanel: TPanel; HintValue: string; IsClear: Boolean; IsHide: Boolean); -var - i: Integer; -begin - with TMPanel do - begin - for i := 0 to ControlCount - 1 do - begin - if Controls[i] is TCheckBox then - begin - if TCheckBox(Controls[i]).Hint = HintValue then - begin - TCheckBox(Controls[i]).Visible := IsHide; - end; - end; - if Controls[i] is TLabel then - begin - if TLabel(Controls[i]).Hint = HintValue then - begin - TLabel(Controls[i]).Visible := IsHide; - end; - end; - if Controls[i] is TComboBox then - begin - if TComboBox(Controls[i]).Hint = HintValue then - begin - TComboBox(Controls[i]).Visible := IsHide; - if IsClear then - TComboBox(Controls[i]).ItemIndex := -1; - end; - end; - if Controls[i] is TEdit then - begin - - if Trim(TEdit(Controls[i]).Hint) = HintValue then - begin - TEdit(Controls[i]).Visible := IsHide; - if IsClear then - TEdit(Controls[i]).Text := ''; - end; - end; - end; - end; -end; -function num2cengnumZS(strArabic:string):string; -var - p,i,j,x:integer; - s,Y:string; -begin - result := ''; - s := strarabic; - p := pos('.',strarabic); - if p = 0 then - begin - result := num2ceng(strarabic)+'Only'; - exit; - end - else - begin - i := length(s)-p;//计算小数点后面有几位 - delete(strarabic,p,i+1);//删除小数点后面数字 - result := num2ceng(strarabic)+'DOLLORS'; - end; - Y:= copy(s,p,i+1); - result :=result +' '+num2ceng(Y)+' CENTS'; -end; - -procedure HJ(mClientDataset:TclientDataSet;Label1:TLabel;mfieldName:double); + function RoundFloat(f: double; i: integer): double; + +implementation +uses U_DataLink,U_SelExportField,U_ColumnSet,U_ColumnBandSet,U_SelPrintFieldNew; + + function RoundFloat(f: double; i: integer): double; +var + s: string; + ef: Extended; +begin + if f = 0 then begin + Result := 0; + Exit; + end; + s := '#.' + StringOfChar('0', i); + if s = '#.' then s := '#'; + ef := StrToFloat(FloatToStr(f)); //防止浮点运算的误差 + result := StrToFloat(FormatFloat(s, ef)); +end; + function ExportFtErpFile(mFileName:string;ADORead:TADOQuery):boolean; +var + Stream : TMemoryStream; + ff:TADOBlobstream; + mfileSize:integer; + mCreationTime:TdateTime; + mWriteTime:TdateTime; + IsFileHas:boolean; + mChildPath:string; + mFilePath:string; +begin + try + result:=false; + mChildPath:=''; + /////////////////////////////////////////////// + //获取文件下载的子路径 + with ADORead do + begin + close; + sql.Clear ; + sql.Add('select FilePath '); + sql.Add('from RT_FileUpdate'); + sql.Add('where FileName='+quotedStr(mFileName)); + Open; + if RecordCount>0 then + begin + // if not fieldByName('valid').AsBoolean then exit; + if trim(fieldByName('FilePath').AsString)<>'' then + mChildPath:=trim(fieldByName('FilePath').AsString)+'\'; + end; + end; + //如果产品存在 + mFilePath:= ExtractFilePath(Paramstr(0))+mChildPath; + IsFileHas:= FileExists(mFilePath+mFileName); + if IsFileHas then + begin + ////////////////////////// + //获取文件信息 + GetFileInfo(mFilePath+mFileName,mfileSize,mCreationTime,mWriteTime); + end; + ////////////////////////////////////////// + //存在文件 + if IsFileHas then + begin + with ADORead do + begin + close; + sql.Clear ; + sql.Add('select count(FileName) as cnt '); + sql.Add('from RT_FileUpdate'); + sql.Add('where FileName='+quotedStr(mFileName)); + // sql.Add('and fileEditDate>'''+formatDateTime('yyyy-MM-dd hh:mm',mWriteTime)+''''); + sql.Add(' and DATEDIFF(minute,'+ quotedStr(formatDateTime('yyyy-MM-dd hh:mm',mWriteTime))+',fileEditDate)>0'); + Open; + + + //是否存在新的文件 + if fieldByName('cnt').AsInteger>0 then + begin + close; + sql.Clear ; + sql.Add('select * '); + sql.Add('from RT_FileUpdate'); + sql.Add('where FileName='+quotedStr(mFileName)); + + Open; + + ff := TADOBlobstream.Create(fieldByName('Files') as TblobField, bmRead); + end + else + begin + exit; + end; + + if trim(fieldByName('FilePath').AsString)<>'' then + mChildPath:=trim(fieldByName('FilePath').AsString)+'\'; + end; + end + ////////////////////////////////////// + //不存在 + else + begin + with ADORead do + begin + close; + sql.Clear ; + sql.Add('select * '); + sql.Add('from RT_FileUpdate'); + sql.Add('where FileName='+quotedStr(mFileName)); + Open; + + if recordCount>0 then + begin + ff := TADOBlobstream.Create(fieldByName('Files') as TblobField, bmRead); + end + else + begin + exit; + end; + + if trim(fieldByName('FilePath').AsString)<>'' then + mChildPath:=trim(fieldByName('FilePath').AsString)+'\'; + end; + + end; + + if ff<>nil then + begin + try + mfileName:=trim(ADORead.fieldByName('FileName').asString); + if not DirectoryExists(ExtractFileDir(mFilePath+mfileName)) then + ForceDirectories(ExtractFileDir(mFilePath+mfileName)); + Stream:= TMemoryStream.Create ; + //OleContainer1.SaveToStream(Stream); + //ADOQuery1FileContent.SaveToFile('tmp'); //数据存入临时文件 + //OleContainer1.LoadFromFile('tmp'); //从临时文件中读取OLE对象 + ff.SaveToStream(Stream); + //OleContainer1.SaveToFile(ExtractFilePath(Paramstr(0))+mfielName) + Stream.SaveToFile(mFilePath+mfileName); //+'\tmpFile\' + + //OleContainer1.SaveToFile('tmp'); + finally + Stream.Free ; + end; + end; + UpdateFileTime(mFilePath+mfileName,ADORead.fieldByName('FileCreateDate').AsDateTime,ADORead.fieldByName('FileEditDate').AsDateTime,ADORead.fieldByName('FileEditDate').AsDateTime); + Result:=true; + except + application.MessageBox(pchar('读取文件'+mfileName+'失败!'),'提示信息',0); + end; +end; +function ExportFtErpFile10(mFileName:string;ADORead:TADOQuery):boolean; +var + Stream : TMemoryStream; + ff:TADOBlobstream; + mfileSize:integer; + mCreationTime:TdateTime; + mWriteTime:TdateTime; + IsFileHas:boolean; + mChildPath:string; + mFilePath:string; +begin + try + result:=false; + mChildPath:=''; + /////////////////////////////////////////////// + //获取文件下载的子路径 + with ADORead do + begin + close; + sql.Clear ; + sql.Add('select FilePath '); + sql.Add('from RT_FileUpdate'); + sql.Add('where FileName='+quotedStr(mFileName)); + Open; + if RecordCount>0 then + begin + // if not fieldByName('valid').AsBoolean then exit; + if trim(fieldByName('FilePath').AsString)<>'' then + mChildPath:='report10\'; + end; + end; + //如果产品存在 + mFilePath:= ExtractFilePath(Paramstr(0))+mChildPath; + IsFileHas:= FileExists(mFilePath+mFileName); + if IsFileHas then + begin + ////////////////////////// + //获取文件信息 + GetFileInfo(mFilePath+mFileName,mfileSize,mCreationTime,mWriteTime); + end; + ////////////////////////////////////////// + //存在文件 + if IsFileHas then + begin + with ADORead do + begin + close; + sql.Clear ; + sql.Add('select count(FileName) as cnt '); + sql.Add('from RT_FileUpdate'); + sql.Add('where FileName='+quotedStr(mFileName)); + // sql.Add('and fileEditDate>'''+formatDateTime('yyyy-MM-dd hh:mm',mWriteTime)+''''); + sql.Add(' and DATEDIFF(minute,'+ quotedStr(formatDateTime('yyyy-MM-dd hh:mm',mWriteTime))+',fileEditDate)>0'); + Open; + + + //是否存在新的文件 + if fieldByName('cnt').AsInteger>0 then + begin + close; + sql.Clear ; + sql.Add('select * '); + sql.Add('from RT_FileUpdate'); + sql.Add('where FileName='+quotedStr(mFileName)); + + Open; + + ff := TADOBlobstream.Create(fieldByName('Files') as TblobField, bmRead); + end + else + begin + exit; + end; + + if trim(fieldByName('FilePath').AsString)<>'' then + mChildPath:=trim(fieldByName('FilePath').AsString)+'\'; + end; + end + ////////////////////////////////////// + //不存在 + else + begin + with ADORead do + begin + close; + sql.Clear ; + sql.Add('select * '); + sql.Add('from RT_FileUpdate'); + sql.Add('where FileName='+quotedStr(mFileName)); + Open; + + if recordCount>0 then + begin + ff := TADOBlobstream.Create(fieldByName('Files') as TblobField, bmRead); + end + else + begin + exit; + end; + + if trim(fieldByName('FilePath').AsString)<>'' then + mChildPath:=trim(fieldByName('FilePath').AsString)+'\'; + end; + + end; + + if ff<>nil then + begin + try + mfileName:=trim(ADORead.fieldByName('FileName').asString); + if not DirectoryExists(ExtractFileDir(mFilePath+mfileName)) then + ForceDirectories(ExtractFileDir(mFilePath+mfileName)); + Stream:= TMemoryStream.Create ; + //OleContainer1.SaveToStream(Stream); + //ADOQuery1FileContent.SaveToFile('tmp'); //数据存入临时文件 + //OleContainer1.LoadFromFile('tmp'); //从临时文件中读取OLE对象 + ff.SaveToStream(Stream); + //OleContainer1.SaveToFile(ExtractFilePath(Paramstr(0))+mfielName) + Stream.SaveToFile(mFilePath+mfileName); //+'\tmpFile\' + + //OleContainer1.SaveToFile('tmp'); + finally + Stream.Free ; + end; + end; + UpdateFileTime(mFilePath+mfileName,ADORead.fieldByName('FileCreateDate').AsDateTime,ADORead.fieldByName('FileEditDate').AsDateTime,ADORead.fieldByName('FileEditDate').AsDateTime); + Result:=true; + except + application.MessageBox(pchar('读取文件'+mfileName+'失败!'),'提示信息',0); + end; +end; +procedure UpdateFileTime(FileName:string; CreationTime, LastAccessTime, LastWriteTime:TDateTime); +var + FileHnd : Integer; + SysTime : TSystemTime; + tTzi: TTimezoneInformation; + FCreationTime, FLastAccessTime, FLastWriteTime: TFileTime; +begin + GetTimezoneInformation(tTzi) ; + CreationTime := CreationTime+Ttzi.Bias/1440; + DateTimeToSystemTime(CreationTime,SysTime); + SystemTimeToFileTime(SysTime,FCreationTime); + //LastAccessTime := LastAccessTime + Ttzi.Bias/1440; + //DateTimeToSystemTime(LastAccessTime,SysTime); + //SystemTimeToFileTime(SysTime,FLastAccessTime); + LastWriteTime := LastWriteTime + Ttzi.Bias/1440; + DateTimeToSystemTime(LastWriteTime,SysTime); + SystemTimeToFileTime(SysTime,FLastWriteTime); + try + FileHnd := FileOpen(FileName, fmOpenWrite or fmShareDenyNone); + SetFileTime(FileHnd, @FCreationTime, nil, @FLastWriteTime); + finally + FileClose(FileHnd); + end; +end; +//////////////////////////////////////////////////////// + // +/////////////////////////////////////////////////////// + +procedure GetFileInfo(mFile:string;var mfileSize:integer;var CreationTime:tdatetime;var WriteTime:tdatetime); +var + vSearchRec: TSearchRec; +begin + FindFirst(mFile,faAnyFile,vSearchRec); + mfileSize:=vSearchRec.Size; + CreationTime:=CovFileDate(vSearchRec.FindData.ftCreationTime);//创建时间 + //vSearchRec.FindData.ftLastAccessTime//访问时间 + WriteTime:=CovFileDate(vSearchRec.FindData.ftLastWriteTime);//修改时间 + FindClose(vSearchRec); +end; + +procedure GetFileEditTime(mFile:string;var editTime:tdatetime); +var + vSearchRec: TSearchRec; +begin + FindFirst(mFile,faAnyFile,vSearchRec); + //mfileSize:=vSearchRec.Size; + // CreationTime:=CovFileDate(vSearchRec.FindData.ftCreationTime);//创建时间 + //vSearchRec.FindData.ftLastAccessTime//访问时间 + editTime:=CovFileDate(vSearchRec.FindData.ftLastWriteTime);//修改时间 + FindClose(vSearchRec); +end; +/////////////////////////////////////////////// + // +///////////////////////////////////////////// +function CovFileDate(Fd:_FileTime):TDateTime; +var + Tct:_SystemTime; + Temp:_FileTime; +begin + FileTimeToLocalFileTime(Fd,Temp); + FileTimeToSystemTime(Temp,Tct); + CovFileDate:=SystemTimeToDateTime(Tct); +end; +/////////////////////////////////////////////////////// + //按照搜索款隐藏表格列 +/////////////////////////////////////////////////////// + +procedure IsVisibleTV(TMPanel: TPanel; MTV: TcxGridDBTableView; Hintvalue: string; IsVisible: Boolean); +var + i, j: integer; +begin + + with TMPanel do + begin + for j := 0 to TMPanel.ControlCount - 1 do + begin + if TMPanel.Controls[j] is TEdit then + begin + if Trim(TEdit(TMPanel.Controls[j]).Hint) = Hintvalue then + begin + with MTV do + begin + for i := 0 to MTV.ColumnCount - 1 do + begin + if Trim(TEdit(TMPanel.Controls[j]).Name) = Trim(MTV.Columns[i].DataBinding.FieldName) then + begin + MTV.Columns[i].Visible := IsVisible; + Continue; + end; + end; + end; + end; + end; + if TMPanel.Controls[j] is TComboBox then + begin + if Trim(TComboBox(TMPanel.Controls[j]).Hint) = Hintvalue then + begin + with MTV do + begin + for i := 0 to MTV.ColumnCount - 1 do + begin + if Trim(TComboBox(TMPanel.Controls[j]).Name) = Trim(MTV.Columns[i].DataBinding.FieldName) then + begin + MTV.Columns[i].Visible := IsVisible; + Continue; + end; + end; + end; + end; + end; + end; + end; +end; +/////////////////////////////////////////////////////// + //将表格内容填入搜索框 +/////////////////////////////////////////////////////// + +procedure AssignmentControls(TMPanel: TPanel; TMClientDataset: TclientDataSet; Hintvalue: string); +var + i: integer; +begin + with TMPanel do + begin + for i := 0 to ControlCount - 1 do + begin + if Controls[i] is TEdit then + begin + if Trim(TEdit(Controls[i]).Hint) = Hintvalue then + begin + TEdit(Controls[i]).Text := Trim(TMClientDataset.FieldByName(TEdit(Controls[i]).Name).AsString); + end; + end; + if Controls[i] is TComboBox then + begin + if Trim(TEdit(Controls[i]).Hint) = Hintvalue then + begin + TComboBox(Controls[i]).ItemIndex := TComboBox(Controls[i]).Items.IndexOf(Trim(TMClientDataset.FieldByName(TComboBox(Controls[i]).Name).AsString)); + end; + end; + end; + end; +end; +/////////////////////////////////////////////////////// + //清除或者隐藏搜索框 +/////////////////////////////////////////////////////// + +procedure ClearOrHideControls(TMPanel: TPanel; HintValue: string; IsClear: Boolean; IsHide: Boolean); +var + i: Integer; +begin + with TMPanel do + begin + for i := 0 to ControlCount - 1 do + begin + if Controls[i] is TCheckBox then + begin + if TCheckBox(Controls[i]).Hint = HintValue then + begin + TCheckBox(Controls[i]).Visible := IsHide; + end; + end; + if Controls[i] is TLabel then + begin + if TLabel(Controls[i]).Hint = HintValue then + begin + TLabel(Controls[i]).Visible := IsHide; + end; + end; + if Controls[i] is TComboBox then + begin + if TComboBox(Controls[i]).Hint = HintValue then + begin + TComboBox(Controls[i]).Visible := IsHide; + if IsClear then + TComboBox(Controls[i]).ItemIndex := -1; + end; + end; + if Controls[i] is TEdit then + begin + + if Trim(TEdit(Controls[i]).Hint) = HintValue then + begin + TEdit(Controls[i]).Visible := IsHide; + if IsClear then + TEdit(Controls[i]).Text := ''; + end; + end; + end; + end; +end; +function num2cengnumZS(strArabic:string):string; +var + p,i,j,x:integer; + s,Y:string; +begin + result := ''; + s := strarabic; + p := pos('.',strarabic); + if p = 0 then + begin + result := num2ceng(strarabic)+'Only'; + exit; + end + else + begin + i := length(s)-p;//计算小数点后面有几位 + delete(strarabic,p,i+1);//删除小数点后面数字 + result := num2ceng(strarabic)+'DOLLORS'; + end; + Y:= copy(s,p,i+1); + result :=result +' '+num2ceng(Y)+' CENTS'; +end; + +procedure HJ(mClientDataset:TclientDataSet;Label1:TLabel;mfieldName:double); begin if mClientDataset.IsEmpty then exit; with mClientDataset do @@ -657,3636 +656,3636 @@ begin else Label1.Caption:=currtostr(strtoCurr(Label1.Caption)-mfieldName); end; -end; - -///////////////////取表中Int型字段最大值/////////////////////////////////////// -function SGetMaxId(AdoQueryTemp:TADOQuery;MyTable:string;MyField:string;Var MaxId:Integer):Boolean; -begin - try - with AdoQueryTemp do - begin - Close; - SQL.Clear; - SQL.Add('select Max('+MyField+')+1 MaxId from '+MyTable); - Open; - end; - with AdoQueryTemp do - begin - if (Trim(FieldByName('MaxId').AsString)='') or - (Trim(FieldByName('MaxId').AsString)=NULL) then - MaxId:=1 - else - MaxId:=(fieldbyname('MaxId').AsInteger); - Close; - SQL.Clear; - end; - Result:=True; - except - Result:=False; - Application.MessageBox('取最大值失败!','提示',0); - end; -end; -procedure InitBCGangNo(OrdSubId:string;Combox:TComboBox;FAdoQry:TADOQuery); -var - fsj:string; -begin - fsj:='select distinct(AOrdDefStr1) Code from JYOrder_Sub_AnPai '+ - ' where Subid='''+Trim(OrdSubId)+''''; - with FAdoQry do - begin - Close; - sql.Clear; - sql.Add(fsj); - Open; - end; - Combox.Clear; - with FAdoQry do - begin - First; - while not Eof do - begin - Combox.Items.Add(Trim(FAdoQry.fieldbyname('Code').AsString)); - Next; - end; - end; - Combox.Items.Add(''); -end; -procedure InitRCGangNo(OrdSubId:string;Combox:TComboBox;FAdoQry:TADOQuery); -var - fsj:string; -begin - fsj:='select distinct(gangno) Code from JYOrder_Sub_AnPai '+ - ' where Subid='''+Trim(OrdSubId)+''''; - with FAdoQry do - begin - Close; - sql.Clear; - sql.Add(fsj); - Open; - end; - Combox.Clear; - with FAdoQry do - begin - First; - while not Eof do - begin - Combox.Items.Add(Trim(FAdoQry.fieldbyname('Code').AsString)); - Next; - end; - end; - Combox.Items.Add(''); -end; -procedure InitOrderColor(OrdMainId:string;Combox:TComboBox;FAdoQry:TADOQuery); -var - fsj:string; -begin - fsj:='select distinct(PRTColor) Code from JYOrder_Sub '+ - ' where Mainid='''+Trim(OrdMainId)+''''; - with FAdoQry do - begin - Close; - sql.Clear; - sql.Add(fsj); - Open; - end; - Combox.Clear; - with FAdoQry do - begin - First; - while not Eof do - begin - Combox.Items.Add(Trim(FAdoQry.fieldbyname('Code').AsString)); - Next; - end; - end; - Combox.Items.Add(''); -end; -////自定义打印 -procedure SelPrintData(FTv:TcxGridDBTableView;FAdoQry:TADOQuery;FTitle:string - ;FLTitle:string;FRTile:string); -var - i,j,k,KK:Integer; - fsj:string; - FOrder,fcolumnName:string; -begin - {if FAdoQry.IsEmpty then Exit; - try - frmSelPrintFieldNew:=TfrmSelPrintFieldNew.Create(Application); - with frmSelPrintFieldNew do - begin - with frmSelPrintFieldNew.PrnGrid do - begin - PrnGrid.Columns.Clear; - frmSelPrintFieldNew.IniName:=FTitle; - for i:=0 to FTv.ColumnCount-1 do - begin - if FTv.Columns[i].Visible=True then - begin - PrnGrid.Columns.Add; - j:=PrnGrid.Columns.Count-1; - PrnGrid.Columns[j].Title.Caption:=FTv.Columns[i].Caption; - PrnGrid.Columns[j].FieldName:=FTv.Columns[i].DataBinding.FieldName; - PrnGrid.Columns[j].Width:=FTv.Columns[i].Width; - if FTv.Columns[i].SortOrder=soAscending then - begin - FOrder:=' '+FTv.Columns[i].DataBinding.FieldName+' '; - end else - if FTv.Columns[i].SortOrder=soDescending then - begin - FOrder:=' '+FTv.Columns[i].DataBinding.FieldName+' DESC'; - end; - end; - end; - end; - FAdoQry.Sort:=FOrder; - frmSelPrintFieldNew.RMPrintDBGrid1.PageCaptionMsg.TitleMemo.Add(FTitle); - frmSelPrintFieldNew.RMPrintDBGrid1.PageCaptionMsg.CaptionMsg.LeftMemo.Add(FLTitle); - frmSelPrintFieldNew.RMPrintDBGrid1.PageCaptionMsg.CaptionMsg.RightMemo.Add(FRTile); - SCreatecds20(FAdoQry,frmSelPrintFieldNew.ClientDataSet1); - SInitCDSData20(FAdoQry,frmSelPrintFieldNew.ClientDataSet1); - if FTv.OptionsView.Footer=True then - begin - if FTv.DataController.Summary.FooterSummaryItems.Count>0 then - begin - frmSelPrintFieldNew.ClientDataSet1.Append; - //frmSelPrintFieldNew.ClientDataSet1.FieldByName('Sindex').Value:=frmSelPrintFieldNew.ClientDataSet1.RecNo+1; - frmSelPrintFieldNew.ClientDataSet1.Post; - KK:=0; - for i:=0 to FTv.ColumnCount-1 do - begin - if FTv.Columns[i].Visible=False then Continue; - - fcolumnName:=FTv.Columns[i].Name; - if FTv.Columns[i].Summary.FooterKind<>sknone then - begin - for k:=0 to FTv.DataController.Summary.FooterSummaryItems.Count-1 do - begin - if TcxGridDBTableSummaryItem(FTv.DataController.Summary.FooterSummaryItems.Items[k]).Column.Name=fcolumnName then - begin - frmSelPrintFieldNew.ClientDataSet1.edit; - frmSelPrintFieldNew.ClientDataSet1.FieldByName(FTv.Columns[i].DataBinding.FieldName).Value:= - FTv.DataController.Summary.FooterSummaryValues[k]; - frmSelPrintFieldNew.ClientDataSet1.Post; - end; - end; - end; - end; - end; - end; - if ShowModal=1 then - begin - - end; - end; - - finally - frmSelPrintFieldNew.Free; - end; } -end; -////自定义打印 -procedure SelPrintDataMore(FTv:TcxGridDBTableView;FAdoQry:TADOQuery;FTitle:string - ;FLTitle:string;FRTile:string;FKK:Integer;FiniName:string); -var - i,j,k,KK:Integer; - fsj:string; - FOrder,fcolumnName:string; -begin - {if FAdoQry.IsEmpty then Exit; - try - frmSelPrintFieldNew:=TfrmSelPrintFieldNew.Create(Application); - with frmSelPrintFieldNew do - begin - with frmSelPrintFieldNew.PrnGrid do - begin - PrnGrid.Columns.Clear; - frmSelPrintFieldNew.IniName:=FiniName; - for i:=0 to FTv.ColumnCount-1 do - begin - if FTv.Columns[i].Visible=True then - begin - PrnGrid.Columns.Add; - j:=PrnGrid.Columns.Count-1; - PrnGrid.Columns[j].Title.Caption:=FTv.Columns[i].Caption; - PrnGrid.Columns[j].FieldName:=FTv.Columns[i].DataBinding.FieldName; - PrnGrid.Columns[j].Width:=FTv.Columns[i].Width; - if FTv.Columns[i].SortOrder=soAscending then - begin - FOrder:=' '+FTv.Columns[i].DataBinding.FieldName+' '; - end else - if FTv.Columns[i].SortOrder=soDescending then - begin - FOrder:=' '+FTv.Columns[i].DataBinding.FieldName+' DESC'; - end; - end; - end; - end; - FAdoQry.Sort:=FOrder; - frmSelPrintFieldNew.RMPrintDBGrid1.PageCaptionMsg.TitleMemo.Add(FTitle); - frmSelPrintFieldNew.RMPrintDBGrid1.PageCaptionMsg.CaptionMsg.LeftMemo.Add(FLTitle); - frmSelPrintFieldNew.RMPrintDBGrid1.PageCaptionMsg.CaptionMsg.RightMemo.Add(FRTile); - - SCreatecds20(FAdoQry,frmSelPrintFieldNew.ClientDataSet1); - SInitCDSData20(FAdoQry,frmSelPrintFieldNew.ClientDataSet1); - if FTv.OptionsView.Footer=True then - begin - if FTv.DataController.Summary.FooterSummaryItems.Count>0 then - begin - frmSelPrintFieldNew.ClientDataSet1.Append; - - frmSelPrintFieldNew.ClientDataSet1.Post; - KK:=0; - for i:=0 to FTv.ColumnCount-1 do - begin - - - fcolumnName:=FTv.Columns[i].Name; - if FTv.Columns[i].Summary.FooterKind<>sknone then - begin - if KK=0 then - begin - frmSelPrintFieldNew.ClientDataSet1.edit; - frmSelPrintFieldNew.ClientDataSet1.FieldByName(FTv.Columns[i-FKK].DataBinding.FilterFieldName).Value:='Total'; - frmSelPrintFieldNew.ClientDataSet1.Post; - KK:=99; - end; - for k:=0 to FTv.DataController.Summary.FooterSummaryItems.Count-1 do - begin - if TcxGridDBTableSummaryItem(FTv.DataController.Summary.FooterSummaryItems.Items[k]).Column.Name=fcolumnName then - begin - frmSelPrintFieldNew.ClientDataSet1.edit; - frmSelPrintFieldNew.ClientDataSet1.FieldByName(FTv.Columns[i].DataBinding.FieldName).Value:= - FTv.DataController.Summary.FooterSummaryValues[k]; - frmSelPrintFieldNew.ClientDataSet1.Post; - end; - end; - end; - end; - end; - end; - if ShowModal=1 then - begin - - end; - end; - - finally - frmSelPrintFieldNew.Free; - end;} -end; -///////////////////////判断表中数据是否重复/////////////////////////////////// -function SIsRepeated(AdoQueryTemp:TADOQuery;MyTable:string;MyField:string;MyCode:String):Boolean; -begin - try - Result:=False; - with AdoQueryTemp do - begin - Close; - SQL.Clear; - SQL.Add('select * from '+MyTable+' where '+MyField+'='''+Trim(MyCode)+''''); - Open; - if IsEmpty then Result:=True; - Close; - SQL.Clear; - end; - except - Result:=False; - Application.MessageBox('表名或字段名错误!','提示',0); - end; -end; -////////////////////设置ClientDataSet的保存信息///////////////////////////// -function SSetSaveDataCDS(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBTableView; - CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; -var - i:Integer; -begin - try - Result:=False; - for i:=0 to Tv1.ColumnCount-1 do - begin - if Tv1.Columns[i].Tag=MyTag then - begin - if Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).AsString)<>'' then - begin - AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:= - CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).Value; - end; - - end; - end; - Result:=True; - except - Result:=False; - Application.MessageBox('设置Cds保存信息失败!','提示',0); - end; -end; -////////////////////设置ClientDataSet的保存信息///////////////////////////// -function SSetSaveDataCDSNew(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBTableView; - CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; -var - i:Integer; -begin - try - Result:=False; - for i:=0 to Tv1.ColumnCount-1 do - begin - if Tv1.Columns[i].Tag=MyTag then - begin - if Tv1.Columns[i].Visible=True then - begin - if Trim(Tv1.Columns[i].Summary.GroupFooterFormat)<>'1' then - begin - if Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).AsString)<>'' then - begin - AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:= - CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).Value; - end{ else - begin - AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:=null; - end}; - end; - if Trim(Tv1.Columns[i].Summary.GroupFormat)<>'' then - begin - if Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].Summary.GroupFormat).AsString)<>'' then - begin - AdoQueryCmd.FieldByName(Tv1.Columns[i].Summary.GroupFormat).Value:= - CDS_Sub.fieldbyname(Tv1.Columns[i].Summary.GroupFormat).Value; - end;{ else - begin - AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:=null; - end; } - end; - end; - - - - end; - end; - Result:=True; - except - Result:=False; - Application.MessageBox('设置Cds保存信息失败!','提示',0); - end; -end; -function RTSetSaveDataCDS(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBTableView; - CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; -var - i:Integer; -begin - try - Result:=False; - for i:=0 to Tv1.ColumnCount-1 do - begin - if Tv1.Columns[i].Tag=MyTag then - begin - if Trim(Tv1.Columns[i].DataBinding.FilterFieldName)='' then Continue; - begin - if Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).AsString)<>'' then - begin - AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:= - CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).Value; - end else - begin - if Trim(Tv1.Columns[i].Summary.GroupFooterFormat)='0' then - begin - AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:=0; - end else - begin - AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:=null; - end; - end; - - end; - - end; - end; - Result:=True; - except - Result:=False; - Application.MessageBox('设置Cds保存信息失败!','提示',0); - end; -end; -function RTSetSaveDataCDSBand(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBBandedTableView; - CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; -var - i:Integer; -begin - try - Result:=False; - for i:=0 to Tv1.ColumnCount-1 do - begin - if Tv1.Columns[i].Tag=MyTag then - begin - - begin - if Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).AsString)<>'' then - begin - AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:= - CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).Value; - end else - begin - if Trim(Tv1.Columns[i].Summary.GroupFooterFormat)<>'' then - AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:=0 - else - AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:=Trim(Tv1.Columns[i].Summary.GroupFooterFormat); - end; - - end; - - end; - end; - Result:=True; - except - Result:=False; - Application.MessageBox('设置Cds保存信息失败!','提示',0); - end; -end; - -function SSetSaveDataCDSBandNew(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBBandedTableView; - CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; -var - i:Integer; -begin - try - Result:=False; - for i:=0 to Tv1.ColumnCount-1 do - begin - if Tv1.Columns[i].Tag=MyTag then - begin - if Trim(Tv1.Columns[i].Summary.GroupFooterFormat)<>'1' then - begin - if Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).AsString)<>'' then - begin - AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:= - CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).Value; - end; - end; - if Trim(Tv1.Columns[i].Summary.GroupFormat)<>'' then - begin - if Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].Summary.GroupFormat).AsString)<>'' then - begin - AdoQueryCmd.FieldByName(Tv1.Columns[i].Summary.GroupFormat).Value:= - CDS_Sub.fieldbyname(Tv1.Columns[i].Summary.GroupFormat).Value; - end; - end; - - - end; - end; - Result:=True; - except - Result:=False; - Application.MessageBox('设置Cds保存信息失败!','提示',0); - end; -end; -////////////////////设置ClientDataSet的保存信息///////////////////////////// -function SSetSaveDataCDS10(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBBandedTableView; - CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; -var - i:Integer; -begin - try - Result:=False; - for i:=0 to Tv1.ColumnCount-1 do - begin - if Tv1.Columns[i].Tag=MyTag then - begin - if Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).AsString)<>'' then - AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:= - CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).Value; - end; - end; - Result:=True; - except - Result:=False; - Application.MessageBox('设置Cds保存信息失败!','提示',0); - end; -end; - ///////////////////////////服务器日期////////////////////////////////////// -function SGetServerDate(ADOQueryTmp:TADOQuery):TdateTime; -begin - try - with ADOQueryTmp do - begin - close; - sql.Clear; - sql.Add('select getDate()as dt'); - open; - result:=StrToDate(formatdatetime('yyyy-MM-dd',fieldByName('dt').AsDatetime)); - close; - SQL.Clear; - end; - except - application.MessageBox('获取当前日期发生错误!','提示信息',0); - end; - -end; -function SGetServerDateTime(ADOQueryTmp:TADOQuery):TdateTime; -begin - try - with ADOQueryTmp do - begin - close; - sql.Clear; - sql.Add('select getDate()as dt'); - open; - result:=fieldByName('dt').AsDatetime; - close; - SQL.Clear; - end; - except - application.MessageBox('获取当前日期发生错误!','提示信息',0); - end; - -end; -function SGetServerDate10(ADOQueryTmp:TADOQuery):TdateTime; -begin - try - with ADOQueryTmp do - begin - close; - sql.Clear; - sql.Add('select getDate()as dt'); - open; - result:=StrToDate(formatdatetime('yyyy-MM-dd',fieldByName('dt').AsDatetime)); - close; - SQL.Clear; - end; - except - application.MessageBox('获取当前日期发生错误!','提示信息',0); - end; - -end; - -///////////////////////////////////////////////////// -//保存数据时字段赋值 -///////////////////////////////////////////////////// -procedure SSetsavedata(ADOQueryCmd:TADOQuery;MyTable:string; - Myparent:TWinControl;MyTag:integer); -var - i:Integer; -begin - with Myparent do - begin - for i:=0 to ControlCount-1 do - begin - if Controls[i].Tag=MyTag then - begin - if Controls[i] is TEdit then - begin - if Trim(TEdit(Controls[i]).Text)<>'' then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TEdit(Controls[i]).Text); - end else - if Controls[i] is TRichEdit then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TRichEdit(Controls[i]).Text; - end else - if Controls[i] is TcxRichEdit then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TcxRichEdit(Controls[i]).Text; - end else - if Controls[i] is TMemo then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TMemo(Controls[i]).Text; - end; - if Controls[i] is TFTComboBox then - begin - if (TFTComboBox(Controls[i]).Text)<>'' then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TFTComboBox(Controls[i]).Item2); - end else - if Controls[i] is TComboBox then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TComboBox(Controls[i]).Text); - end else - if Controls[i] is TCheckBox then - begin - if TCheckBox(Controls[i]).Checked=True then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=1 - else - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=0; - end else - if Controls[i] is TDateTimePicker then - begin - if TDateTimePicker(Controls[i]).ShowCheckbox then - begin - if TDateTimePicker(Controls[i]).Checked then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime; - end else - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime; - end else - if Controls[i] is TBtnEditA then - begin - if TBtnEditA(Controls[i]).Hint='名称' then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditA(Controls[i]).Text) - else - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditA(Controls[i]).TxtCode); - end else - if Controls[i] is TBtnEditC then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditC(Controls[i]).TxtCode); - end else - if Controls[i] is TcxTimeEdit then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TcxTimeEdit(Controls[i]).Text); - end; - end; - end; - end; -end; -procedure SSetsavedataNew(ADOQueryCmd:TADOQuery;MyTable:string; - Myparent:TWinControl;MyTag:integer); -var - i:Integer; -begin - with Myparent do - begin - for i:=0 to ControlCount-1 do - begin - if Controls[i].Tag=MyTag then - begin - if Controls[i] is TEdit then - begin - if Trim(TEdit(Controls[i]).Text)<>'' then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TEdit(Controls[i]).Text); - end else - if Controls[i] is TRichEdit then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TRichEdit(Controls[i]).Text; - end else - if Controls[i] is TMemo then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TMemo(Controls[i]).Text; - end; - if Controls[i] is TFTComboBox then - begin - if (TFTComboBox(Controls[i]).Text)<>'' then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TFTComboBox(Controls[i]).Item2); - end else - if Controls[i] is TComboBox then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TComboBox(Controls[i]).Text); - end else - if Controls[i] is TDateTimePicker then - begin - if TDateTimePicker(Controls[i]).ShowCheckbox then - begin - if TDateTimePicker(Controls[i]).Checked then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime; - end else - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime; - end else - if Controls[i] is TBtnEditA then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditA(Controls[i]).TxtCode); - if (TBtnEditA(Controls[i]).Hint<>'') and (TBtnEditA(Controls[i]).ParentCtl3D=True) then - ADOQueryCmd.FieldByName(Trim(TBtnEditA(Controls[i]).Hint)).Value:=Trim(TBtnEditA(Controls[i]).Text); - end else - if Controls[i] is TBtnEditC then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditC(Controls[i]).TxtCode); - //if (TBtnEditC(Controls[i]).Hint<>'') and (TBtnEditC(Controls[i]).ParentCtl3D=True)then - //ADOQueryCmd.FieldByName(Trim(TBtnEditC(Controls[i]).Hint)).Value:=Trim(TBtnEditC(Controls[i]).Text); - end else - if Controls[i] is TcxTimeEdit then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TcxTimeEdit(Controls[i]).Text); - end; - end; - end; - end; -end; -procedure RTSetsavedata(ADOQueryCmd:TADOQuery;MyTable:string; - Myparent:TWinControl;MyTag:integer); -var - i:Integer; -begin - with Myparent do - begin - for i:=0 to ControlCount-1 do - begin - if Controls[i].Tag=MyTag then - begin - if Controls[i] is TEdit then - begin - if Trim(TEdit(Controls[i]).Text)<>'' then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TEdit(Controls[i]).Text); - end else - if Controls[i] is TRichEdit then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TRichEdit(Controls[i]).Text; - end else - if Controls[i] is TMemo then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TMemo(Controls[i]).Text; - end; - if Controls[i] is TFTComboBox then - begin - if (TFTComboBox(Controls[i]).Text)<>'' then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TFTComboBox(Controls[i]).Item2); - end else - if Controls[i] is TComboBox then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TComboBox(Controls[i]).Text); - end else - if Controls[i] is TDateTimePicker then - begin - if TDateTimePicker(Controls[i]).ShowCheckbox then - begin - if TDateTimePicker(Controls[i]).Checked then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime; - end else - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime; - end else - if Controls[i] is TBtnEditA then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditA(Controls[i]).Text); - if (TBtnEditA(Controls[i]).Hint<>'') then - ADOQueryCmd.FieldByName(Trim(TBtnEditA(Controls[i]).Hint)).Value:=Trim(TBtnEditA(Controls[i]).TxtCode); - end else - if Controls[i] is TBtnEditC then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditC(Controls[i]).Text); - if (TBtnEditC(Controls[i]).Hint<>'') then - ADOQueryCmd.FieldByName(Trim(TBtnEditC(Controls[i]).Hint)).Value:=Trim(TBtnEditC(Controls[i]).TxtCode); - end else - if Controls[i] is TcxTimeEdit then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TcxTimeEdit(Controls[i]).Text); - end; - end; - end; - end; -end; -procedure SSetsaveSql(ADOQueryCmd:TADOQuery;MyTable:string; - Myparent:TWinControl;MyTag:integer); -var - i:Integer; - MCode:String; -begin - with Myparent do - begin - for i:=0 to ControlCount-1 do - begin - if Controls[i].Tag=MyTag then - begin - if Controls[i] is TEdit then - begin - if Trim(TEdit(Controls[i]).Text)<>'' then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TEdit(Controls[i]).Text) - else - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Null; - end else - if Controls[i] is TRichEdit then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TRichEdit(Controls[i]).Text; - end else - if Controls[i] is TcxRichEdit then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TcxRichEdit(Controls[i]).Text; - end else - if Controls[i] is TMemo then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TMemo(Controls[i]).Text; - end else - if Controls[i] is TFTComboBox then - begin - if (TFTComboBox(Controls[i]).Text)<>'' then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TFTComboBox(Controls[i]).Item2); - end else - if Controls[i] is TComboBox then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TComboBox(Controls[i]).Text); - end else - if Controls[i] is TDateTimePicker then - begin - if TDateTimePicker(Controls[i]).ShowCheckbox then - begin - if TDateTimePicker(Controls[i]).Checked then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime; - end else - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime; - end else - if Controls[i] is TBtnEditA then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditA(Controls[i]).TxtCode); - if (TBtnEditA(Controls[i]).Hint<>'') and (TBtnEditA(Controls[i]).ParentCtl3D=True) then - ADOQueryCmd.FieldByName(Trim(TBtnEditA(Controls[i]).Hint)).Value:=Trim(TBtnEditA(Controls[i]).Text); - end else - if Controls[i] is TBtnEditC then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditC(Controls[i]).TxtCode); - //if (TBtnEditC(Controls[i]).Hint<>'') and (TBtnEditC(Controls[i]).ParentCtl3D=True)then - //ADOQueryCmd.FieldByName(Trim(TBtnEditC(Controls[i]).Hint)).Value:=Trim(TBtnEditC(Controls[i]).Text); - end else - if Controls[i] is TcxTimeEdit then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TcxTimeEdit(Controls[i]).Text); - end else - if Controls[i] is TcxButtonEdit then - begin - if (TcxButtonEdit(Controls[i]).BeepOnEnter=True) or (TcxButtonEdit(Controls[i]).ParentShowHint=True) then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TcxButtonEdit(Controls[i]).Text); - if TcxButtonEdit(Controls[i]).ParentShowHint=False then - begin - MCode:=Copy(Trim(Controls[i].Name),1,Length(Trim(Controls[i].Name))-4); - ADOQueryCmd.FieldByName(MCode).Value:=Trim(TcxButtonEdit(Controls[i]).Hint); - end; - end; - end; - end; - end; -end; -procedure SSetsaveSqlNew(ADOQueryCmd:TADOQuery;MyTable:string; - Myparent:TWinControl;MyTag:integer); -var - i:Integer; - MCode:String; -begin - with Myparent do - begin - for i:=0 to ControlCount-1 do - begin - if Controls[i].Tag=MyTag then - begin - if Controls[i] is TEdit then - begin - if Trim(TEdit(Controls[i]).Text)<>'' then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TEdit(Controls[i]).Text) - else - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Null; - end else - if Controls[i] is TRichEdit then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TRichEdit(Controls[i]).Text; - end else - if Controls[i] is TCheckBox then - begin - if TCheckBox(Controls[i]).Checked=True then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=1 - else - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=0; - end else - if Controls[i] is TcxRichEdit then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TcxRichEdit(Controls[i]).Text; - end else - if Controls[i] is TMemo then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TMemo(Controls[i]).Text; - end else - if Controls[i] is TFTComboBox then - begin - if (TFTComboBox(Controls[i]).Text)<>'' then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TFTComboBox(Controls[i]).Item2); - end else - if Controls[i] is TComboBox then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TComboBox(Controls[i]).Text); - end else - if Controls[i] is TDateTimePicker then - begin - if TDateTimePicker(Controls[i]).ShowCheckbox then - begin - if TDateTimePicker(Controls[i]).Checked then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime - else - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=null; - end else - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime; - end else - if Controls[i] is TBtnEditA then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditA(Controls[i]).Text); - if (TBtnEditA(Controls[i]).Hint<>'') then - ADOQueryCmd.FieldByName(Trim(TBtnEditA(Controls[i]).Hint)).Value:=Trim(TBtnEditA(Controls[i]).TxtCode); - end else - if Controls[i] is TBtnEditC then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditC(Controls[i]).Text); - if (TBtnEditC(Controls[i]).Hint<>'') then - begin - if Pos('/',TBtnEditC(Controls[i]).Hint)>0 then - begin - - end else - ADOQueryCmd.FieldByName(Trim(TBtnEditC(Controls[i]).Hint)).Value:=Trim(TBtnEditC(Controls[i]).TxtCode); - end; - end else - if Controls[i] is TcxTimeEdit then - begin - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TcxTimeEdit(Controls[i]).Text); - end else - if Controls[i] is TcxButtonEdit then - begin - if (TcxButtonEdit(Controls[i]).BeepOnEnter=True) or (TcxButtonEdit(Controls[i]).ParentShowHint=True) then - ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TcxButtonEdit(Controls[i]).Text); - if TcxButtonEdit(Controls[i]).ParentShowHint=False then - begin - MCode:=Copy(Trim(Controls[i].Name),1,Length(Trim(Controls[i].Name))-4); - ADOQueryCmd.FieldByName(MCode).Value:=Trim(TcxButtonEdit(Controls[i]).Hint); - end; - end; - end; - end; - end; -end; -procedure SSetsavedata10(ADOQueryCmd:TADOQuery;MyTable:string; - Myparent:TWinControl;MyTag:integer); -var - i:Integer; - FFName:string; -begin - with Myparent do - begin - for i:=0 to ControlCount-1 do - begin - FFName:=Trim(Copy(Controls[i].Name,1,(Length(Controls[i].Name)-1))); - if Controls[i].Tag=MyTag then - begin - if Controls[i] is TEdit then - begin - if Trim(TEdit(Controls[i]).Text)<>'' then - ADOQueryCmd.FieldByName(FFName).Value:=Trim(TEdit(Controls[i]).Text); - end else - if Controls[i] is TRichEdit then - begin - ADOQueryCmd.FieldByName(FFName).Value:=TRichEdit(Controls[i]).Text; - end else - if Controls[i] is TMemo then - begin - ADOQueryCmd.FieldByName(FFName).Value:=TMemo(Controls[i]).Text; - end; - if Controls[i] is TFTComboBox then - begin - if (TFTComboBox(Controls[i]).Text)<>'' then - ADOQueryCmd.FieldByName(FFName).Value:=Trim(TFTComboBox(Controls[i]).Item2); - end else - if Controls[i] is TComboBox then - begin - ADOQueryCmd.FieldByName(FFName).Value:=Trim(TComboBox(Controls[i]).Text); - end else - if Controls[i] is TDateTimePicker then - begin - if TDateTimePicker(Controls[i]).ShowCheckbox then - begin - if TDateTimePicker(Controls[i]).Checked then - ADOQueryCmd.FieldByName(FFName).Value:=TDateTimePicker(Controls[i]).DateTime; - end else - ADOQueryCmd.FieldByName(FFName).Value:=TDateTimePicker(Controls[i]).DateTime; - end else - if Controls[i] is TBtnEditA then - begin - ADOQueryCmd.FieldByName(FFName).Value:=Trim(TBtnEditA(Controls[i]).TxtCode); - end else - if Controls[i] is TBtnEditC then - begin - ADOQueryCmd.FieldByName(FFName).Value:=Trim(TBtnEditC(Controls[i]).TxtCode); - end; - end; - end; - end; -end; -///////////////////////////////////////////////////// - //函数功能:初始化窗口数据 -///////////////////////////////////////////////////// -procedure SSetWinData(ADOQueryTmp:TADOQuery;mParent:TWinControl); -var - i,idx:integer; - mfield:string; - ma:TA; -begin - with ADOQueryTmp do - begin - if isEmpty then exit; - with mParent do - begin - for i:=0 to ControlCount-1 do - begin - if Controls[i] is TLabel then continue; - if Controls[i].Tag >=999 then continue; - mfield:=Controls[i].Name; - - /////////////////////////// - //EDIT - if Controls[i] is TEdit then - begin - { if Trim(Controls[i].Hint)='数值' then - continue - else } - if Trim(fieldByName(mfield).AsString)<>'' then - TEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); - end else - if Controls[i] is TRichEdit then - begin - { if Trim(Controls[i].Hint)='数值' then - continue - else } - if Trim(fieldByName(mfield).AsString)<>'' then - TRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); - end - //ftcombobox - else if Controls[i] is TFTComboBox then - begin - if Controls[i].Tag =99 then - begin - idx:=TftComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); - TComboBox(Controls[i]).ItemIndex:=idx; - end - else - begin - idx:=TftComboBox(Controls[i]).IndexOfItem2(trim(fieldByName(mfield).AsString)); - TComboBox(Controls[i]).ItemIndex:=idx; - end; - end - //combobox - else if Controls[i] is TComboBox then - begin - if TComboBox(Controls[i]).Items.Count>0 then - begin - //idx:=getCombIdx(TComboBox(Controls[i]),i,trim(fieldByName(mfield).AsString)); - idx:=TComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); - end - else - idx:=-1; - TComboBox(Controls[i]).ItemIndex:=idx; - end - else if Controls[i] is TBtnEditA then - begin - if TBtnEditA(Controls[i]).Tag=1 then - begin - TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); - TBtnEditA(Controls[i]).text:= trim(fieldByName(mfield+'Name').AsString); - end - else - begin - TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); - TBtnEditA(Controls[i]).text:= trim(fieldByName(mfield).AsString); - end; - end - else if Controls[i] is TBtnEditC then - begin - TBtnEditC(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); - TBtnEditC(Controls[i]).text:= trim(fieldByName(mfield+'Name').AsString); - end - else if Controls[i] is TDateTimePicker then - begin - if IsEmpty or fieldByName(mfield).IsNull then - begin - if TDateTimePicker(Controls[i]).Checked then - TDateTimePicker(Controls[i]).Date:=strToDate('1990-01-01'); - end - else - TDateTimePicker(Controls[i]).Date:=fieldByName(mfield).AsDateTime; - end - else if Controls[i] is Tmemo then - begin - Tmemo(Controls[i]).Text :=trim(fieldByName(mfield).AsString); - end - else if Controls[i] is TcxRichEdit then - begin - TcxRichEdit(Controls[i]).Text :=trim(fieldByName(mfield).AsString); - end - else if Controls[i] is TcxDateEdit then - begin - if not IsEmpty and not fieldByName(mfield).IsNull then - TcxDateEdit(Controls[i]).text :=fieldByName(mfield).AsString; - end - else if Controls[i] is TcxTimeEdit then - begin - if not IsEmpty and ( fieldByName(mfield).AsString<>'') then - TcxTimeEdit(Controls[i]).text :=fieldByName(mfield).AsString; - end - else if Controls[i] is TcxCurrencyEdit then - begin - TcxCurrencyEdit(Controls[i]).Text:=fieldByName(mfield).AsString; - end - else if Controls[i] is TcheckBox then - begin - TcheckBox(Controls[i]).Checked:=fieldByName(mfield).asBoolean; - end; - end; // end for - end; // end with - end; //end for with - -end; -procedure SInitComBoxByTvColumns(cb:TComboBox; - Tv1:TcxGridDBTableView; - ColumnTag:Integer; - TowFlag:Boolean; - emptyFlag:Boolean); -var - A:TA; - i:Integer; -begin - cb.Items.Clear ; - for i:=0 to Tv1.ColumnCount-1 do - begin - if Tv1.Columns[i].Tag=ColumnTag then - begin - if TowFlag=False then - begin - cb.Items.Add(trim(Tv1.Columns[i].Caption)); - end else - begin - A:=TA.Create(Nil); - A.s:=Trim(Tv1.Columns[i].DataBinding.FieldName); - cb.Items.AddObject(Trim(Tv1.Columns[i].Caption),TObject(A)); - end; - end; - end; - if emptyFlag=False then cb.Items.Add(''); - if cb.Items.Count >0 then cb.ItemIndex :=0; -end; -procedure SSetWinData30(ADOQueryTmp:TADOQuery;mParent:TWinControl;FTag:Integer); -var - i,idx:integer; - mfield:string; - ma:TA; -begin - with ADOQueryTmp do - begin - if isEmpty then exit; - with mParent do - begin - for i:=0 to ControlCount-1 do - begin - if Controls[i] is TLabel then continue; - if Controls[i].Tag<>FTag then continue; - mfield:=Controls[i].Name; - - /////////////////////////// - //EDIT - if Controls[i] is TEdit then - begin - if Trim(fieldByName(mfield).AsString)<>'' then - TEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); - end - //ftcombobox - else if Controls[i] is TFTComboBox then - begin - idx:=TftComboBox(Controls[i]).IndexOfItem2(trim(fieldByName(mfield).AsString)); - TComboBox(Controls[i]).ItemIndex:=idx; - end - else if Controls[i] is TRichEdit then - begin - if Trim(fieldByName(mfield).AsString)<>'' then - TRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); - end - else if Controls[i] is TcxRichEdit then - begin - if Trim(fieldByName(mfield).AsString)<>'' then - TcxRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); - end - //combobox - else if Controls[i] is TComboBox then - begin - if TComboBox(Controls[i]).Items.Count>0 then - begin - idx:=TComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); - end - else - idx:=-1; - TComboBox(Controls[i]).ItemIndex:=idx; - end - else if Controls[i] is TBtnEditA then - begin - TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); - if Trim(TBtnEditA(Controls[i]).Hint)<>'' then - TBtnEditA(Controls[i]).text:= trim(fieldByName(Trim(TBtnEditA(Controls[i]).Hint)).AsString); - end else if Controls[i] is TBtnEditC then - begin - TBtnEditC(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); - if Trim(TBtnEditC(Controls[i]).Hint)<>'' then - TBtnEditC(Controls[i]).text:= trim(fieldByName(Trim(TBtnEditC(Controls[i]).Hint)).AsString); - end - else if Controls[i] is TDateTimePicker then - begin - if IsEmpty or fieldByName(mfield).IsNull then - begin - if TDateTimePicker(Controls[i]).Checked then - TDateTimePicker(Controls[i]).Date:=strToDate('1990-01-01'); - end - else - TDateTimePicker(Controls[i]).DateTime:=fieldByName(mfield).AsDateTime; - end - else if Controls[i] is Tmemo then - begin - Tmemo(Controls[i]).Text :=trim(fieldByName(mfield).AsString); - end - else if Controls[i] is TcxDateEdit then - begin - if not IsEmpty and not fieldByName(mfield).IsNull then - TcxDateEdit(Controls[i]).text :=fieldByName(mfield).AsString; - end - else if Controls[i] is TcxTimeEdit then - begin - if not IsEmpty and ( fieldByName(mfield).AsString<>'') then - TcxTimeEdit(Controls[i]).text :=fieldByName(mfield).AsString; - end - else if Controls[i] is TcxCurrencyEdit then - begin - TcxCurrencyEdit(Controls[i]).Text:=fieldByName(mfield).AsString; - end - else if Controls[i] is TcheckBox then - begin - TcheckBox(Controls[i]).Checked:=fieldByName(mfield).asBoolean; - end else if Controls[i] is TRichEdit then - begin - TRichEdit(Controls[i]).Text:=fieldbyname(mfield).AsString; - end; - end; // end for - end; // end with - end; //end for with - -end; -procedure SClearData(mParent:TWinControl;FTag:Integer); -var - i,idx:integer; -begin - with mParent do - begin - for i:=0 to ControlCount-1 do - begin - if Controls[i] is TLabel then continue; - if Controls[i].Tag<>FTag then continue; - if Controls[i] is TEdit then - begin - TEdit(Controls[i]).Text:=''; - end - else if Controls[i] is TRichEdit then - begin - TRichEdit(Controls[i]).Text:=''; - end - else if Controls[i] is TcxRichEdit then - begin - TcxRichEdit(Controls[i]).Text:=''; - end - else if Controls[i] is TBtnEditC then - begin - TBtnEditC(Controls[i]).Text:=''; - TBtnEditC(Controls[i]).TxtCode:=''; - end - else if Controls[i] is TBtnEditA then - begin - TBtnEditA(Controls[i]).Text:=''; - TBtnEditA(Controls[i]).TxtCode:=''; - end - else if Controls[i] is TComboBox then - begin - idx:=-1; - TComboBox(Controls[i]).ItemIndex:=idx; - end - end; - end; -end; -procedure SCSHData(ADOQueryTmp:TADOQuery;mParent:TWinControl;FTag:Integer); -var - i,idx:integer; - mfield,mfieldCode:string; - ma:TA; -begin - with ADOQueryTmp do - begin - if isEmpty then exit; - with mParent do - begin - for i:=0 to ControlCount-1 do - begin - if Controls[i] is TLabel then continue; - if Controls[i].Tag<>FTag then continue; - mfield:=Controls[i].Name; - - /////////////////////////// - //EDIT - if Controls[i] is TEdit then - begin - if Trim(fieldByName(mfield).AsString)<>'' then - TEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); - end - //ftcombobox - else if Controls[i] is TFTComboBox then - begin - idx:=TftComboBox(Controls[i]).IndexOfItem2(trim(fieldByName(mfield).AsString)); - TComboBox(Controls[i]).ItemIndex:=idx; - end - else if Controls[i] is TRichEdit then - begin - if Trim(fieldByName(mfield).AsString)<>'' then - TRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); - end - else if Controls[i] is TcxRichEdit then - begin - if Trim(fieldByName(mfield).AsString)<>'' then - TcxRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); - end - //combobox - else if Controls[i] is TComboBox then - begin - if TComboBox(Controls[i]).Items.Count>0 then - begin - idx:=TComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); - end - else - idx:=-1; - TComboBox(Controls[i]).ItemIndex:=idx; - end - else if Controls[i] is TBtnEditA then - begin - TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); - if Trim(TBtnEditA(Controls[i]).Hint)<>'' then - TBtnEditA(Controls[i]).text:= trim(fieldByName(Trim(TBtnEditA(Controls[i]).Hint)).AsString); - end else if Controls[i] is TBtnEditC then - begin - TBtnEditC(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); - if Trim(TBtnEditC(Controls[i]).Hint)<>'' then - TBtnEditC(Controls[i]).text:= trim(fieldByName(Trim(TBtnEditC(Controls[i]).Hint)).AsString); - end - else if Controls[i] is TDateTimePicker then - begin - if Trim(fieldByName(mfield).AsString)='' then - begin - TDateTimePicker(Controls[i]).Checked:=False; - end - else - TDateTimePicker(Controls[i]).DateTime:=fieldByName(mfield).AsDateTime; - end - else if Controls[i] is Tmemo then - begin - Tmemo(Controls[i]).Text :=trim(fieldByName(mfield).AsString); - end - else if Controls[i] is TcxDateEdit then - begin - if not IsEmpty and not fieldByName(mfield).IsNull then - TcxDateEdit(Controls[i]).text :=fieldByName(mfield).AsString; - end - else if Controls[i] is TcxTimeEdit then - begin - if not IsEmpty and ( fieldByName(mfield).AsString<>'') then - TcxTimeEdit(Controls[i]).text :=fieldByName(mfield).AsString; - end - else if Controls[i] is TcxCurrencyEdit then - begin - TcxCurrencyEdit(Controls[i]).Text:=fieldByName(mfield).AsString; - end - else if Controls[i] is TcheckBox then - begin - TcheckBox(Controls[i]).Checked:=fieldByName(mfield).asBoolean; - end - else if Controls[i] is TcxButtonEdit then - begin - TcxButtonEdit(Controls[i]).Text:=Trim(fieldbyname(mfield).AsString); - if TcxButtonEdit(Controls[i]).ParentShowHint=False then - begin - mfieldCode:=Trim(Copy(mfield,1,Length(mfield)-4)); - TcxButtonEdit(Controls[i]).Hint:=Trim(fieldbyname(mfieldCode).AsString); - end; - - end; - end; // end for - end; // end with - end; //end for with - -end; -procedure SCSHDataNew(ADOQueryTmp:TADOQuery;mParent:TWinControl;FTag:Integer); -var - i,idx:integer; - mfield,mfieldCode:string; - ma:TA; -begin - with ADOQueryTmp do - begin - if isEmpty then exit; - with mParent do - begin - for i:=0 to ControlCount-1 do - begin - if Controls[i] is TLabel then continue; - if Controls[i].Tag<>FTag then continue; - mfield:=Controls[i].Name; - - /////////////////////////// - //EDIT - if Controls[i] is TEdit then - begin - if Trim(fieldByName(mfield).AsString)<>'' then - TEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString) - else - TEdit(Controls[i]).Text:=''; - end - //ftcombobox - else if Controls[i] is TFTComboBox then - begin - idx:=TftComboBox(Controls[i]).IndexOfItem2(trim(fieldByName(mfield).AsString)); - TComboBox(Controls[i]).ItemIndex:=idx; - end - else if Controls[i] is TRichEdit then - begin - if Trim(fieldByName(mfield).AsString)<>'' then - TRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); - end - else if Controls[i] is TcxRichEdit then - begin - if Trim(fieldByName(mfield).AsString)<>'' then - TcxRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); - end - //combobox - else if Controls[i] is TComboBox then - begin - if TComboBox(Controls[i]).Items.Count>0 then - begin - idx:=TComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); - end - else - idx:=-1; - TComboBox(Controls[i]).ItemIndex:=idx; - end - else if Controls[i] is TBtnEditA then - begin - TBtnEditA(Controls[i]).Text := trim(fieldByName(mfield).AsString); - if Trim(TBtnEditA(Controls[i]).Hint)<>'' then - TBtnEditA(Controls[i]).TxtCode:= trim(fieldByName(Trim(TBtnEditA(Controls[i]).Hint)).AsString); - end else if Controls[i] is TBtnEditC then - begin - TBtnEditC(Controls[i]).Text := trim(fieldByName(mfield).AsString); - if Trim(TBtnEditC(Controls[i]).Hint)<>'' then - begin - if Pos('/',TBtnEditC(Controls[i]).Hint)>0 then - begin - - end else - TBtnEditC(Controls[i]).TxtCode:= trim(fieldByName(Trim(TBtnEditC(Controls[i]).Hint)).AsString); - end; - end - else if Controls[i] is TDateTimePicker then - begin - if Trim(fieldByName(mfield).AsString)='' then - begin - TDateTimePicker(Controls[i]).Checked:=False; - end - else - TDateTimePicker(Controls[i]).DateTime:=fieldByName(mfield).AsDateTime; - end - else if Controls[i] is Tmemo then - begin - Tmemo(Controls[i]).Text :=trim(fieldByName(mfield).AsString); - end - else if Controls[i] is TcxDateEdit then - begin - if not IsEmpty and not fieldByName(mfield).IsNull then - TcxDateEdit(Controls[i]).text :=fieldByName(mfield).AsString; - end - else if Controls[i] is TcxTimeEdit then - begin - if not IsEmpty and ( fieldByName(mfield).AsString<>'') then - TcxTimeEdit(Controls[i]).text :=fieldByName(mfield).AsString; - end - else if Controls[i] is TcxCurrencyEdit then - begin - TcxCurrencyEdit(Controls[i]).Text:=fieldByName(mfield).AsString; - end - else if Controls[i] is TcheckBox then - begin - if FieldByName(mfield).Value=null then - TcheckBox(Controls[i]).Checked:=False - else - TcheckBox(Controls[i]).Checked:=fieldByName(mfield).asBoolean; - end else if Controls[i] is TcxButtonEdit then - begin - TcxButtonEdit(Controls[i]).Text:=Trim(fieldbyname(mfield).AsString); - if TcxButtonEdit(Controls[i]).ParentShowHint=False then - begin - mfieldCode:=Trim(Copy(mfield,1,Length(mfield)-4)); - TcxButtonEdit(Controls[i]).Hint:=Trim(fieldbyname(mfieldCode).AsString); - end; - - end; - end; // end for - end; // end with - end; //end for with - -end; -procedure SCSHDataCDS(CDS_Main:TClientDataSet;mParent:TWinControl;FTag:Integer); -var - i,idx:integer; - mfield,mfieldCode:string; - ma:TA; -begin - with CDS_Main do - begin - if isEmpty then exit; - with mParent do - begin - for i:=0 to ControlCount-1 do - begin - if Controls[i] is TLabel then continue; - if Controls[i].Tag<>FTag then continue; - mfield:=Controls[i].Name; - - /////////////////////////// - //EDIT - if Controls[i] is TEdit then - begin - if Trim(fieldByName(mfield).AsString)<>'' then - TEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); - end - //ftcombobox - else if Controls[i] is TFTComboBox then - begin - idx:=TftComboBox(Controls[i]).IndexOfItem2(trim(fieldByName(mfield).AsString)); - TComboBox(Controls[i]).ItemIndex:=idx; - end - else if Controls[i] is TRichEdit then - begin - if Trim(fieldByName(mfield).AsString)<>'' then - TRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); - end - else if Controls[i] is TcxRichEdit then - begin - if Trim(fieldByName(mfield).AsString)<>'' then - TcxRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); - end - //combobox - else if Controls[i] is TComboBox then - begin - if TComboBox(Controls[i]).Items.Count>0 then - begin - idx:=TComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); - end - else - idx:=-1; - TComboBox(Controls[i]).ItemIndex:=idx; - end - else if Controls[i] is TBtnEditA then - begin - TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); - if Trim(TBtnEditA(Controls[i]).Hint)<>'' then - TBtnEditA(Controls[i]).text:= trim(fieldByName(Trim(TBtnEditA(Controls[i]).Hint)).AsString); - end else if Controls[i] is TBtnEditC then - begin - TBtnEditC(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); - if Trim(TBtnEditC(Controls[i]).Hint)<>'' then - TBtnEditC(Controls[i]).text:= trim(fieldByName(Trim(TBtnEditC(Controls[i]).Hint)).AsString); - end - else if Controls[i] is TDateTimePicker then - begin - if Trim(fieldByName(mfield).AsString)='' then - begin - TDateTimePicker(Controls[i]).Checked:=False; - end - else - TDateTimePicker(Controls[i]).DateTime:=fieldByName(mfield).AsDateTime; - end - else if Controls[i] is Tmemo then - begin - Tmemo(Controls[i]).Text :=trim(fieldByName(mfield).AsString); - end - else if Controls[i] is TcxDateEdit then - begin - if not IsEmpty and not fieldByName(mfield).IsNull then - TcxDateEdit(Controls[i]).text :=fieldByName(mfield).AsString; - end - else if Controls[i] is TcxTimeEdit then - begin - if not IsEmpty and ( fieldByName(mfield).AsString<>'') then - TcxTimeEdit(Controls[i]).text :=fieldByName(mfield).AsString; - end - else if Controls[i] is TcxCurrencyEdit then - begin - TcxCurrencyEdit(Controls[i]).Text:=fieldByName(mfield).AsString; - end - else if Controls[i] is TcheckBox then - begin - TcheckBox(Controls[i]).Checked:=fieldByName(mfield).asBoolean; - end else if Controls[i] is TcxButtonEdit then - begin - TcxButtonEdit(Controls[i]).Text:=Trim(fieldbyname(mfield).AsString); - if TcxButtonEdit(Controls[i]).ParentShowHint=False then - begin - mfieldCode:=Trim(Copy(mfield,1,Length(mfield)-4)); - TcxButtonEdit(Controls[i]).Hint:=Trim(fieldbyname(mfieldCode).AsString); - end; - - end; - end; // end for - end; // end with - end; //end for with - -end; -procedure SCSHDataWTag(ADOQueryTmp:TADOQuery;mParent:TWinControl); -var - i,idx:integer; - mfield,mfieldCode:string; - ma:TA; -begin - with ADOQueryTmp do - begin - if isEmpty then exit; - with mParent do - begin - for i:=0 to ControlCount-1 do - begin - if Controls[i] is TLabel then continue; - //if Controls[i].Tag<>FTag then continue; - mfield:=Controls[i].Name; - - /////////////////////////// - //EDIT - if Controls[i] is TEdit then - begin - if Trim(fieldByName(mfield).AsString)<>'' then - TEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); - end - //ftcombobox - else if Controls[i] is TFTComboBox then - begin - idx:=TftComboBox(Controls[i]).IndexOfItem2(trim(fieldByName(mfield).AsString)); - TComboBox(Controls[i]).ItemIndex:=idx; - end - else if Controls[i] is TRichEdit then - begin - if Trim(fieldByName(mfield).AsString)<>'' then - TRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); - end - else if Controls[i] is TcxRichEdit then - begin - if Trim(fieldByName(mfield).AsString)<>'' then - TcxRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); - end - //combobox - else if Controls[i] is TComboBox then - begin - if TComboBox(Controls[i]).Items.Count>0 then - begin - idx:=TComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); - end - else - idx:=-1; - TComboBox(Controls[i]).ItemIndex:=idx; - end - else if Controls[i] is TBtnEditA then - begin - TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); - if Trim(TBtnEditA(Controls[i]).Hint)<>'' then - TBtnEditA(Controls[i]).text:= trim(fieldByName(Trim(TBtnEditA(Controls[i]).Hint)).AsString); - end else if Controls[i] is TBtnEditC then - begin - TBtnEditC(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); - if Trim(TBtnEditC(Controls[i]).Hint)<>'' then - TBtnEditC(Controls[i]).text:= trim(fieldByName(Trim(TBtnEditC(Controls[i]).Hint)).AsString); - end - else if Controls[i] is TDateTimePicker then - begin - if Trim(fieldByName(mfield).AsString)='' then - begin - TDateTimePicker(Controls[i]).Checked:=False; - end - else - TDateTimePicker(Controls[i]).DateTime:=fieldByName(mfield).AsDateTime; - end - else if Controls[i] is Tmemo then - begin - Tmemo(Controls[i]).Text :=trim(fieldByName(mfield).AsString); - end - else if Controls[i] is TcxDateEdit then - begin - if not IsEmpty and not fieldByName(mfield).IsNull then - TcxDateEdit(Controls[i]).text :=fieldByName(mfield).AsString; - end - else if Controls[i] is TcxTimeEdit then - begin - if not IsEmpty and ( fieldByName(mfield).AsString<>'') then - TcxTimeEdit(Controls[i]).text :=fieldByName(mfield).AsString; - end - else if Controls[i] is TcxCurrencyEdit then - begin - TcxCurrencyEdit(Controls[i]).Text:=fieldByName(mfield).AsString; - end - else if Controls[i] is TcheckBox then - begin - TcheckBox(Controls[i]).Checked:=fieldByName(mfield).asBoolean; - end else if Controls[i] is TcxButtonEdit then - begin - TcxButtonEdit(Controls[i]).Text:=Trim(fieldbyname(mfield).AsString); - if TcxButtonEdit(Controls[i]).ParentShowHint=False then - begin - mfieldCode:=Trim(Copy(mfield,1,Length(mfield)-4)); - TcxButtonEdit(Controls[i]).Hint:=Trim(fieldbyname(mfieldCode).AsString); - end; - - end; - end; // end for - end; // end with - end; //end for with - -end; - -procedure SSetWinData10(ADOQueryTmp:TADOQuery;mParent:TWinControl); -var - i,idx:integer; - mfield:string; - ma:TA; -begin - with ADOQueryTmp do - begin - if isEmpty then exit; - with mParent do - begin - for i:=0 to ControlCount-1 do - begin - if Controls[i] is TLabel then continue; - if Controls[i].Tag >=999 then continue; - //mfield:=Copy(Trim(Controls[i].Name),1,(Length(Trim(Controls[i].Name))-1)); - mfield:=Trim(Controls[i].Name); - if Controls[i] is TEdit then - begin - if Trim(fieldByName(mfield).AsString)<>'' then - TEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); - end - //ftcombobox - else if Controls[i] is TFTComboBox then - begin - if Controls[i].Tag =99 then - begin - idx:=TftComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); - TComboBox(Controls[i]).ItemIndex:=idx; - end - else - begin - idx:=TftComboBox(Controls[i]).IndexOfItem2(trim(fieldByName(mfield).AsString)); - TComboBox(Controls[i]).ItemIndex:=idx; - end; - end - //combobox - else if Controls[i] is TComboBox then - begin - if TComboBox(Controls[i]).Items.Count>0 then - begin - idx:=TComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); - end - else - idx:=-1; - TComboBox(Controls[i]).ItemIndex:=idx; - end - else if Controls[i] is TBtnEditA then - begin - if TBtnEditA(Controls[i]).Tag=1 then - begin - TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); - TBtnEditA(Controls[i]).text:= trim(fieldByName(mfield+'Name').AsString); - end - else - begin - TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); - TBtnEditA(Controls[i]).text:= trim(fieldByName(mfield).AsString); - end; - end - else if Controls[i] is TBtnEditC then - begin - TBtnEditC(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); - TBtnEditC(Controls[i]).text:= trim(fieldByName(mfield+'Name').AsString); - end - else if Controls[i] is TDateTimePicker then - begin - if IsEmpty or fieldByName(mfield).IsNull then - begin - if TDateTimePicker(Controls[i]).Checked then - TDateTimePicker(Controls[i]).Date:=strToDate('1990-01-01'); - end - else - TDateTimePicker(Controls[i]).Date:=fieldByName(mfield).AsDateTime; - end - else if Controls[i] is Tmemo then - begin - Tmemo(Controls[i]).Text :=trim(fieldByName(mfield).AsString); - end - else if Controls[i] is TcxDateEdit then - begin - if not IsEmpty and not fieldByName(mfield).IsNull then - TcxDateEdit(Controls[i]).text :=fieldByName(mfield).AsString; - end - else if Controls[i] is TcxTimeEdit then - begin - if not IsEmpty and ( fieldByName(mfield).AsString<>'') then - TcxTimeEdit(Controls[i]).text :=fieldByName(mfield).AsString; - end - else if Controls[i] is TcxCurrencyEdit then - begin - TcxCurrencyEdit(Controls[i]).Text:=fieldByName(mfield).AsString; - end - else if Controls[i] is TcheckBox then - begin - TcheckBox(Controls[i]).Checked:=fieldByName(mfield).asBoolean; - end - {else if Controls[i] is TcxLookupComboBox then - begin - TcxLookupComboBox(Controls[i]).EditValue:=fieldByName(mfield).AsString; - TcxLookupComboBox(Controls[i]).EditingText:=fieldByName(mfield+'name').AsString; - end}; - end; // end for - end; // end with - end; //end for with - -end; -procedure SSetWinData20(ADOQueryTmp:TADOQuery;mParent:TWinControl); -var - i,idx:integer; - mfield:string; - ma:TA; -begin - with ADOQueryTmp do - begin - if isEmpty then exit; - with mParent do - begin - for i:=0 to ControlCount-1 do - begin - if Controls[i] is TLabel then continue; - if Controls[i].Tag >=999 then continue; - mfield:=Copy(Trim(Controls[i].Name),1,(Length(Trim(Controls[i].Name))-1)); - //mfield:=Trim(Controls[i].Name); - if Controls[i] is TEdit then - begin - if Trim(fieldByName(mfield).AsString)<>'' then - TEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); - end - //ftcombobox - else if Controls[i] is TFTComboBox then - begin - if Controls[i].Tag =99 then - begin - idx:=TftComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); - TComboBox(Controls[i]).ItemIndex:=idx; - end - else - begin - idx:=TftComboBox(Controls[i]).IndexOfItem2(trim(fieldByName(mfield).AsString)); - TComboBox(Controls[i]).ItemIndex:=idx; - end; - end - //combobox - else if Controls[i] is TComboBox then - begin - if TComboBox(Controls[i]).Items.Count>0 then - begin - idx:=TComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); - end - else - idx:=-1; - TComboBox(Controls[i]).ItemIndex:=idx; - end - else if Controls[i] is TBtnEditA then - begin - if TBtnEditA(Controls[i]).Tag=1 then - begin - TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); - TBtnEditA(Controls[i]).text:= trim(fieldByName(mfield+'Name').AsString); - end - else - begin - TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); - TBtnEditA(Controls[i]).text:= trim(fieldByName(mfield).AsString); - end; - end - else if Controls[i] is TBtnEditC then - begin - TBtnEditC(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); - TBtnEditC(Controls[i]).text:= trim(fieldByName(mfield+'Name').AsString); - end - else if Controls[i] is TDateTimePicker then - begin - if IsEmpty or fieldByName(mfield).IsNull then - begin - if TDateTimePicker(Controls[i]).Checked then - TDateTimePicker(Controls[i]).Date:=strToDate('1990-01-01'); - end - else - TDateTimePicker(Controls[i]).Date:=fieldByName(mfield).AsDateTime; - end - else if Controls[i] is Tmemo then - begin - Tmemo(Controls[i]).Text :=trim(fieldByName(mfield).AsString); - end - else if Controls[i] is TcxDateEdit then - begin - if not IsEmpty and not fieldByName(mfield).IsNull then - TcxDateEdit(Controls[i]).text :=fieldByName(mfield).AsString; - end - else if Controls[i] is TcxTimeEdit then - begin - if not IsEmpty and ( fieldByName(mfield).AsString<>'') then - TcxTimeEdit(Controls[i]).text :=fieldByName(mfield).AsString; - end - else if Controls[i] is TcxCurrencyEdit then - begin - TcxCurrencyEdit(Controls[i]).Text:=fieldByName(mfield).AsString; - end - else if Controls[i] is TcheckBox then - begin - TcheckBox(Controls[i]).Checked:=fieldByName(mfield).asBoolean; - end - {else if Controls[i] is TcxLookupComboBox then - begin - TcxLookupComboBox(Controls[i]).EditValue:=fieldByName(mfield).AsString; - TcxLookupComboBox(Controls[i]).EditingText:=fieldByName(mfield+'name').AsString; - end}; - end; // end for - end; // end with - end; //end for with - -end; - -////////////////////////////////////////////// -//////函数功能:根据SQL语句删除数据 -////////////////////////////////////////////// -function SDelData(ADOQueryCmd:TADOQuery;mDelStr:String):Boolean; -begin - try - result:=False; - with ADOQueryCmd do - begin - Close; - SQL.Clear; - SQL.Add(mDelStr); - ExecSQL; - end; - result:=True; - except - result:=False; - Application.MessageBox('数据删除失败!','提示',0); - end; -end; - - //////////////////////////////////////////// - ////************获取过滤条件***********///// -//////////////////////////////////////////// -function SGetFilters(TMPanel:TPanel;EquTag,LikeTag:Integer):string; -var - i,j,k:Integer; - fsj,fsj1:String; -begin - Result:=''; - with TMPanel do - begin - for i:=0 to ControlCount-1 do - begin - if Controls[i] is TLabel then Continue; - if Controls[i] is TEdit then - begin - if Trim(TEdit(Controls[i]).Text)<>'' then - begin - if Controls[i].Tag=EquTag then - Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TEdit(Controls[i]).Text)) - else if Controls[i].Tag=LikeTag then - begin - j:=Pos(' ',Trim(TEdit(Controls[i]).Text)); - if j>0 then - begin - Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Copy(Trim(TEdit(Controls[i]).Text),1,j-1 )+'%'); - fsj1:=Copy(Trim(TEdit(Controls[i]).Text),j+1,Length(Trim(TEdit(Controls[i]).Text))); - while Trim(fsj1)<>'' do - begin - j:=Pos(' ',Trim(fsj1)); - if j>0 then - begin - Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Copy(Trim(fsj1),1,j-1 )+'%'); - fsj1:=Copy(Trim(fsj1),j+1,Length(Trim(fsj1))); - end else - begin - Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Trim(fsj1)+'%'); - fsj1:=''; - end; - end; - end else - Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Trim(TEdit(Controls[i]).Text)+'%'); - end; - end; - end else - if Controls[i] is TBtnEditA then - begin - if Trim(TBtnEditA(Controls[i]).Text)<>'' then - begin - if Controls[i].Tag=EquTag then - Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TBtnEditA(Controls[i]).TxtCode)) - else if Controls[i].Tag=LikeTag then - Result:=Result+'and '+Controls[i].Name+'Name'+' like '+QuotedStr('%'+Trim(TBtnEditA(Controls[i]).Text)+'%') - else if Controls[i].Tag=99 then - Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr(Trim(TBtnEditA(Controls[i]).TxtCode)+'%') - else if Controls[i].Tag=88 then - Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr(Trim(TBtnEditA(Controls[i]).Text)+'%'); - end; - end else - if Controls[i] is TBtnEditC then - begin - if Trim(TBtnEditC(Controls[i]).TxtCode)<>'' then - begin - if Controls[i].Tag=EquTag then - Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TBtnEditC(Controls[i]).TxtCode)) - else if Controls[i].Tag=LikeTag then - Result:=Result+'and '+Controls[i].Name+'Name'+' like '+QuotedStr('%'+Trim(TBtnEditC(Controls[i]).Text)+'%'); - end; - end else - if Controls[i] is TFTComboBox then - begin - if Trim(TFTComboBox(Controls[i]).Text)<>'' then - if Controls[i].Tag=EquTag then - Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TFTComboBox(Controls[i]).Item2)) - else if Controls[i].Tag=LikeTag then - Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Trim(TFTComboBox(Controls[i]).Item2)+'%'); - end else - if Controls[i] is TComboBox then - begin - if Trim(TComboBox(Controls[i]).Text)<>'' then - if Controls[i].Tag=EquTag then - Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TComboBox(Controls[i]).Text)) - else if Controls[i].Tag=LikeTag then - Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Trim(TComboBox(Controls[i]).Text)+'%'); - end; - end; - end; - if Trim(Result)<>'' then - Result:=Trim(RightBStr(Result,Length(Result)-4)); -end; - -function SGetFiltersHint(TMPanel:TPanel;EquTag,LikeTag:Integer):string; -var - i,j,k:Integer; - fsj,fsj1:String; -begin - Result:=''; - with TMPanel do - begin - for i:=0 to ControlCount-1 do - begin - if Controls[i] is TLabel then Continue; - if Controls[i] is TEdit then - begin - if Trim(TEdit(Controls[i]).Text)<>'' then - begin - if Controls[i].Tag=EquTag then - Result:=Result+'and '+Controls[i].Hint+'='+QuotedStr(Trim(TEdit(Controls[i]).Text)) - else if Controls[i].Tag=LikeTag then - begin - j:=Pos(' ',Trim(TEdit(Controls[i]).Text)); - if j>0 then - begin - Result:=Result+'and '+Controls[i].Hint+' like '+QuotedStr('%'+Copy(Trim(TEdit(Controls[i]).Text),1,j-1 )+'%'); - fsj1:=Copy(Trim(TEdit(Controls[i]).Text),j+1,Length(Trim(TEdit(Controls[i]).Text))); - while Trim(fsj1)<>'' do - begin - j:=Pos(' ',Trim(fsj1)); - if j>0 then - begin - Result:=Result+'and '+Controls[i].Hint+' like '+QuotedStr('%'+Copy(Trim(fsj1),1,j-1 )+'%'); - fsj1:=Copy(Trim(fsj1),j+1,Length(Trim(fsj1))); - end else - begin - Result:=Result+'and '+Controls[i].Hint+' like '+QuotedStr('%'+Trim(fsj1)+'%'); - fsj1:=''; - end; - end; - end else - Result:=Result+'and '+Controls[i].Hint+' like '+QuotedStr('%'+Trim(TEdit(Controls[i]).Text)+'%'); - end; - end; - end; - end; - end; - if Trim(Result)<>'' then - Result:=Trim(RightBStr(Result,Length(Result)-4)); -end; - -function SGetFinds(TMPanel:TPanel;EquTag,LikeTag:Integer):string; -var - i:Integer; -begin - Result:=''; - with TMPanel do - begin - for i:=0 to ControlCount-1 do - begin - if Controls[i] is TLabel then Continue; - if Controls[i] is TEdit then - begin - if Trim(TEdit(Controls[i]).Text)<>'' then - begin - if Controls[i].Tag=EquTag then - Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TEdit(Controls[i]).Text)) - else if Controls[i].Tag=LikeTag then - Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Trim(TEdit(Controls[i]).Text)+'%'); - end; - end else - if Controls[i] is TBtnEditA then - begin - if Trim(TBtnEditA(Controls[i]).Text)<>'' then - begin - if Controls[i].Tag=EquTag then - Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TBtnEditA(Controls[i]).TxtCode)) - else if Controls[i].Tag=LikeTag then - Result:=Result+'and '+Controls[i].Name+'Name'+' like '+QuotedStr('%'+Trim(TBtnEditA(Controls[i]).Text)+'%'); - end; - end else - if Controls[i] is TBtnEditC then - begin - if Trim(TBtnEditC(Controls[i]).TxtCode)<>'' then - begin - if Controls[i].Tag=EquTag then - Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TBtnEditC(Controls[i]).TxtCode)) - else if Controls[i].Tag=LikeTag then - Result:=Result+'and '+Controls[i].Name+'Name'+' like '+QuotedStr('%'+Trim(TBtnEditC(Controls[i]).Text)+'%'); - end; - end else - if Controls[i] is TFTComboBox then - begin - if Trim(TFTComboBox(Controls[i]).Text)<>'' then - if Controls[i].Tag=EquTag then - Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TFTComboBox(Controls[i]).Item2)) - else if Controls[i].Tag=LikeTag then - Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Trim(TFTComboBox(Controls[i]).Item2)+'%'); - end else - if Controls[i] is TComboBox then - begin - if Trim(TComboBox(Controls[i]).Text)<>'' then - if Controls[i].Tag=EquTag then - Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TComboBox(Controls[i]).Text)) - else if Controls[i].Tag=LikeTag then - Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Trim(TComboBox(Controls[i]).Text)+'%'); - end; - end; - end; -end; - -//////////////////////////////////////////////////////////// - //公用过滤函数 -//////////////////////////////////////////////////////////// -procedure SDofilter(ADOQry:TADOQuery;FilterStr:string); -begin - try - ADOQry.DisableControls; - with ADOQry do - begin - if Trim(FilterStr)='' then - begin - Filtered:=False; - end else - begin - Filtered:=False; - Filter:=FilterStr; - Filtered:=True; - end; - end; - finally - ADOQry.EnableControls; - end; -end; -procedure SDofilter10(cds_Main:TClientDataSet;FilterStr:string); -begin - try - cds_Main.DisableControls; - with cds_Main do - begin - if Trim(FilterStr)='' then - begin - Filtered:=False; - end else - begin - Filtered:=False; - Filter:=FilterStr; - Filtered:=True; - end; - end; - finally - cds_Main.EnableControls; - end; -end; -function SGetMaxNo(MyAdoQuery:TADOQuery;MyTable:string;MyField:string;MyFlag:string):String; -var - fsj:string; - i:Integer; -begin - try - result:=''; - fsj:=Trim(Formatdatetime('yyyyMMdd',Now)); - i:=Length(Trim(MyFlag)); - with MyAdoQuery do - begin - Close; - SQL.Clear; - sql.Add('select Max('+MyField+') MaxNo from '+MyTable); - SQL.Add('where '+MyField+' like '+QuotedStr('%'+fsj+'%')); - Open; - end; - with MyAdoQuery do - begin - if Trim(fieldbyname('MaxNo').AsString)='' then - begin - Result:=Trim(MyFlag)+Trim(Formatdatetime('yyyyMMdd',Now))+'1001'; - Exit; - end; - end; - {fsj:=Trim(MyAdoQuery.fieldbyname('MaxNo').AsString); - - - with MyAdoQuery1 do - begin - Close; - SQL.Clear; - SQL.Add('select Max('+MyField+') MaxNo from '+MyTable); - SQL.Add('where '+MyField+' like '+QuotedStr('%'+copy(fsj,3,8)+'%')); - Open; - ShowMessage(copy(fsj,3,8)); - if Trim(fieldbyname('MaxNo').AsString)='' then - begin - Result:=Trim(MyFlag)+Trim(Formatdatetime('yyyyMMdd',Now))+'1001'; - Exit; - end; - end;} - fsj:=Trim(MyAdoQuery.fieldbyname('MaxNo').AsString); - result:=Trim(MyFlag)+Trim(Formatdatetime('yyyyMMdd',Now))+IntToStr(StrtoInt(Copy(fsj,i+9,Length(fsj)-i-8))+1); - - except - Result:=''; - Application.MessageBox(PChar('字段取值MaxNo有误,查看表<'+Trim(MyTable)+'>及表字段<'+MyField+'>'),'提示',0); - end; -end; -procedure SCreateCDS20(SADOQry:TADOQuery; mClientDataset:TclientDataSet ); -var - i:integer; - mfieldName:string; - mSize:integer; -begin - mfieldName:=''; - mClientDataset.FieldDefs.Clear; - with SADOQry do - begin - for i:=0 to fieldCount-1 do // - begin - if (Fields[i].DataType=ftString) and (Fields[i].Size=0) then - begin - msize:=1; - end - else - msize:=Fields[i].Size; - mfieldName:=trim(fields[i].FieldName); - mClientDataset.FieldDefs.Add(mfieldName, - Fields[i].DataType,msize); - - end; - end; - mClientDataset.FieldDefs.Add('Sflag',ftString,1); - mClientDataset.FieldDefs.Add('Sindex',ftInteger,0); - mClientDataset.FieldDefs.Add('Ssel',ftBoolean,0); - mClientDataset.FieldDefs.Add('SDefNote',ftString,10); - mClientDataset.Close; - mClientDataset.CreateDataSet; -end; -procedure SCreateCDSYS(SADOQry:TADOQuery; mClientDataset:TclientDataSet ); -var - i:integer; - mfieldName:string; - mSize:integer; -begin - mfieldName:=''; - mClientDataset.FieldDefs.Clear; - with SADOQry do - begin - for i:=0 to fieldCount-1 do // - begin - if (Fields[i].DataType=ftString) and (Fields[i].Size=0) then - begin - msize:=1; - end - else - msize:=Fields[i].Size; - mfieldName:=trim(fields[i].FieldName); - mClientDataset.FieldDefs.Add(mfieldName, - Fields[i].DataType,msize); - - end; - end; - mClientDataset.Close; - mClientDataset.CreateDataSet; -end; -procedure SCreateCDSOnly(SADOQry:TADOQuery; mClientDataset:TclientDataSet ); -var - i:integer; - mfieldName:string; - mSize:integer; -begin - mfieldName:=''; - mClientDataset.FieldDefs.Clear; - with SADOQry do - begin - for i:=0 to fieldCount-1 do // - begin - if (Fields[i].DataType=ftString) and (Fields[i].Size=0) then - begin - msize:=1; - end - else - msize:=Fields[i].Size; - mfieldName:=trim(fields[i].FieldName); - mClientDataset.FieldDefs.Add(mfieldName, - Fields[i].DataType,msize); - - end; - end; - mClientDataset.Close; - mClientDataset.CreateDataSet; -end; -procedure SInitCDSData20(fromADO:TADOQuery;toCDS:TclientDataSet); -var - i:integer; - k:integer; -begin - if fromADO.IsEmpty then exit; - fromADO.first; - K:=1; - try - toCDS.DisableControls; - toCDS.Filtered:=false; - while not fromADO.Eof do - begin - with toCDS do - begin - Append; - for i:=0 to fromADO.FieldCount-1 do - begin - fields[i].value:=fromADO.Fields[i].Value; - end; - fieldByName('Sflag').AsString :='1'; - fieldByName('Sindex').value :=k; - fieldByName('Ssel').value :=false; - fieldByName('SDefNote').value :=''; - inc(k); - Post; - end; - fromADO.Next; - end; - if not toCDS.IsEmpty then - begin - toCDS.First ; - end; - finally - toCDS.EnableControls; - end; -end; -procedure SInitCDSDataYS(fromADO:TADOQuery;toCDS:TclientDataSet); -var - i:integer; - k:integer; -begin - if fromADO.IsEmpty then exit; - fromADO.first; - K:=1; - try - toCDS.DisableControls; - toCDS.Filtered:=false; - - while not fromADO.Eof do - begin - with toCDS do - begin - Append; - for i:=0 to fromADO.FieldCount-1 do - begin - fields[i].value:=fromADO.Fields[i].Value ; - end; - inc(k); - Post; - end; - fromADO.Next; - end; - if not toCDS.IsEmpty then - begin - toCDS.First ; - end; - finally - toCDS.EnableControls; - end; -end; -procedure SInitCDSDataOnly(fromADO:TADOQuery;toCDS:TclientDataSet); -var - i:integer; - k:integer; -begin - if fromADO.IsEmpty then exit; - fromADO.first; - K:=1; - try - toCDS.DisableControls; - toCDS.Filtered:=false; - - while not fromADO.Eof do - begin - with toCDS do - begin - Append; - for i:=0 to fromADO.FieldCount-1 do - begin - fields[i].value:=fromADO.Fields[i].Value ; - end; - inc(k); - Post; - end; - fromADO.Next; - end; - if not toCDS.IsEmpty then - begin - toCDS.First ; - end; - finally - toCDS.EnableControls; - end; -end; -procedure SInitFtComBoxBySql(ADOQueryTmp:TADOQuery; - cb: TFtComboBox;FlagType:string; - Boxtype:integer; - showMsg:string; - emptyFlag:Boolean; - mSql:string - ); -begin - with ADOQueryTmp do - begin - close; - sql.clear; - sql.Add(mSql); - Open; - if isEmpty then - begin - application.MessageBox(pChar(showMsg),'',0); - exit; - end; - cb.Clear; - while not EOF do - begin - if Boxtype=0 then - begin - cb.Items.Add(trim(fieldByName('Name').AsString)); - end - else - begin - cb.AddItem2(trim(fieldByName('Name').AsString),nil,trim(fieldByName('code').AsString)); - end; - next; - end; - - if not emptyFlag then - cb.Items.Add(''); - - if emptyFlag and (cb.Items.Count >0) then - cb.ItemIndex :=0; - end; -end; -procedure SInitComBoxBySql(ADOQueryTmp:TADOQuery; - cb: TComboBox; - emptyFlag:Boolean; - mSql:string - ); -begin - cb.Clear; - with ADOQueryTmp do - begin - close; - sql.clear; - sql.Add(mSql); - Open; - if isEmpty then - begin - exit; - end; - while not EOF do - begin - cb.Items.Add(trim(fieldByName('Name').AsString)); - next; - end; - - if not emptyFlag then - cb.Items.Add(''); - - if emptyFlag and (cb.Items.Count >0) then - cb.ItemIndex :=0; - end; -end; -////////////////////////////////////////////// - //函数:初试化combox中的数据 - //从XC_CustCode表中取定义数据 - //Boxtype:0; 带编号:1; -////////////////////////////////////////////// -procedure SInitComBoxByCustCode(ADOQueryTmp:TADOQuery; - cb: TComboBox;FlagType:string; - Boxtype:integer; - showMsg:string; - emptyFlag:Boolean - ); -var - A:TA; -begin - cb.Items.Clear ; - with ADOQueryTmp do - begin - close; - sql.clear; - sql.Add('exec P_Get_XC_Custcode'); - sql.Add(quotedStr(trim(flagType))); - Open; - if isEmpty then - begin - application.MessageBox(pChar('客户基础信息维护模块中未找到:'+showMsg),'',0); - exit; - end; - - while not EOF do - begin - if Boxtype=0 then - begin - cb.Items.Add(trim(fieldByName('name').AsString)); - end - else - begin - A := TA.Create(Nil); - A.s:= trim(fieldByName('code').AsString); - cb.Items.AddObject(trim(fieldByName('name').AsString),TObject(a)); - end; - next; - end; - - if not emptyFlag then - cb.Items.Add(''); - - if emptyFlag and (cb.Items.Count >0) then - cb.ItemIndex :=0; - end; -end; -procedure SInitCxGridComboBoxByCustCode(ADOQueryTmp:TADOQuery;c3:TcxGriddbColumn; - FlagType:string;PState:Integer;IsNull:Boolean;Shmeg:string); -var - A:TA; -begin - - (c3.Properties as TcxComboBoxProperties).Items.Clear ; - with ADOQueryTmp do - begin - close; - sql.clear; - sql.Add(' select * from XC_CustCode '+ - ' where Flag='''+trim(FlagType)+''' '+ - ' order by orderno '); - Open; - if isEmpty then - begin - Application.MessageBox(PChar('客户基础信息维护模块中未找到:'+shmeg),'',0); - exit; - end; - while not EOF do - begin - A := TA.Create(Nil); - A.s:= trim(fieldByName('Code').AsString); - if PState=1 then - (c3.Properties as TcxComboBoxProperties).Items.AddObject(trim(fieldByName('name').AsString),TObject(A)) - else if PState=0 then - begin - (c3.Properties as TcxComboBoxProperties).Items.Add(trim(fieldByName('name').AsString)); - end; - next; - end; - if not IsNull then - (c3.Properties as TcxComboBoxProperties).Items.Add(''); - end; - -end; - -procedure SInitCxGridComboBoxBySql(ADOQueryTmp:TADOQuery;c3:TcxGriddbColumn;FSql:string; - PState:Integer;IsNull:Boolean;Shmeg:string); -var - A:TA; -begin - - (c3.Properties as TcxComboBoxProperties).Items.Clear ; - with ADOQueryTmp do - begin - close; - sql.clear; - sql.Add(FSql); - Open; - if isEmpty then - begin - //Application.MessageBox(PChar('未找到:'+shmeg),'',0); - exit; - end; - while not EOF do - begin - A := TA.Create(Nil); - A.s:= trim(fieldByName('Code').AsString); - if PState=1 then - (c3.Properties as TcxComboBoxProperties).Items.AddObject(trim(fieldByName('name').AsString),TObject(A)) - else if PState=0 then - begin - (c3.Properties as TcxComboBoxProperties).Items.Add(trim(fieldByName('name').AsString)); - end; - next; - end; - if not IsNull then - begin - (c3.Properties as TcxComboBoxProperties).Items.Add(''); - end; - end; - -end; -procedure SInitCxBandGridComboBoxBySql(ADOQueryTmp:TADOQuery;c3:TcxGridDBBandedColumn;FSql:string; - PState:Integer;IsNull:Boolean;Shmeg:string); -var - A:TA; -begin - - (c3.Properties as TcxComboBoxProperties).Items.Clear ; - with ADOQueryTmp do - begin - close; - sql.clear; - sql.Add(FSql); - Open; - if isEmpty then - begin - Application.MessageBox(PChar('未找到:'+shmeg),'',0); - exit; - end; - while not EOF do - begin - A := TA.Create(Nil); - A.s:= trim(fieldByName('Code').AsString); - if PState=1 then - (c3.Properties as TcxComboBoxProperties).Items.AddObject(trim(fieldByName('name').AsString),TObject(A)) - else if PState=0 then - begin - (c3.Properties as TcxComboBoxProperties).Items.Add(trim(fieldByName('name').AsString)); - end; - next; - end; - if not IsNull then - begin - (c3.Properties as TcxComboBoxProperties).Items.Add(''); - end; - end; - -end; - - -/////////////////////////////////////////////////// -//*****四舍五入 ***** // -///////////////////////////////////////////////// -function SSWR(s: real): real; -var - r1, r2: real; - s1, s2: string; -begin - r1:= int(s); - r2:= frac(s); - s1:= copy(floattostr(r1), 1, length(floattostr(r1))); - if length(floattostr(r2)) >= 5 then - begin - if strtoint(copy((floattostr(r2)), 5, 1)) >= 5 then - if strtoint(copy((floattostr(r2)), 4, 1)) = 9 then - if strtoint(copy((floattostr(r2)), 3, 1)) = 9 then - begin - s1:= inttostr(strtoint(s1) + 1); - s2:= ''; - end - else - S2:= inttostr(strtoint(copy((floattostr(r2)), 3, 1)) + 1) - else - if copy((floattostr(r2)), 3, 1) = '0' then - S2:= '0' + inttostr(strtoint(copy(floattostr(r2), 3, 2)) + 1) - else - s2:= inttostr(strtoint(copy(floattostr(r2), 3, 2)) + 1) - else - s2:= copy(floattostr(r2), 3, 2); - end - else - s2:= copy(floattostr(r2), 3, 2); - result := strtofloat(s1 + '.' + s2); -end; - -procedure SInitCDSDataSel(fromADO:TADOQuery;toCDS:TclientDataSet); -var - i:integer; - k:integer; -begin - if fromADO.IsEmpty then exit; - fromADO.first; - K:=1; - try - toCDS.DisableControls; - toCDS.Filtered:=false; - - while not fromADO.Eof do - begin - with toCDS do - begin - Append; - for i:=0 to fromADO.FieldCount-1 do - begin - fields[i].value:=fromADO.Fields[i].Value ; - end; - //fieldByName('Sflag').AsString :='1'; - //fieldByName('Sindex').value :=k; - fieldByName('Ssel').value :=false; - inc(k); - Post; - end; - fromADO.Next; - end; - if not toCDS.IsEmpty then - begin - toCDS.First ; - end; - finally - toCDS.EnableControls; - end; -end; - -procedure SCreateCDSSel(SADOQry:TADOQuery; mClientDataset:TclientDataSet ); -var - i:integer; - mfieldName:string; - mSize:integer; -begin - mfieldName:=''; - mClientDataset.FieldDefs.Clear; - with SADOQry do - begin - for i:=0 to fieldCount-1 do // - begin - if (Fields[i].DataType=ftString) and (Fields[i].Size=0) then - begin - msize:=1; - end - else - msize:=Fields[i].Size; - mfieldName:=trim(fields[i].FieldName); - mClientDataset.FieldDefs.Add(mfieldName, - Fields[i].DataType,msize); - - end; - end; - mClientDataset.FieldDefs.Add('Sflag',ftString,1); - mClientDataset.FieldDefs.Add('Sindex',ftInteger,0); - mClientDataset.FieldDefs.Add('Ssel',ftBoolean,0); - mClientDataset.FieldDefs.Add('SDefNote',ftString,10); - mClientDataset.Close; - mClientDataset.CreateDataSet; -end; -//复制增行 -procedure CopyAddRow(Tv1:TcxGridDBTableView;CDS_Sub:TClientDataSet); -var - AA:array[0..50] of string; - i,j:Integer; -begin - if CDS_Sub.IsEmpty then - begin - CDS_Sub.Append; - CDS_Sub.Post; - Exit; - end; - for i:=0 to Tv1.ColumnCount-1 do - begin - AA[i]:=Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).AsString); - end; - with CDS_Sub do - begin - Append; - for i:=0 to Tv1.ColumnCount-1 do - begin - if AA[i]<>'' then - begin - CDS_Sub.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:=AA[i]; - end; - end; - Post; - end; -end; -procedure CopyAddRowBand(Tv1:TcxGridDBBandedTableView;CDS_Sub:TClientDataSet); -var - AA:array[0..50] of string; - i,j:Integer; -begin - if CDS_Sub.IsEmpty then - begin - CDS_Sub.Append; - CDS_Sub.Post; - Exit; - end; - for i:=0 to Tv1.ColumnCount-1 do - begin - AA[i]:=Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).AsString); - end; - with CDS_Sub do - begin - Append; - for i:=0 to Tv1.ColumnCount-1 do - begin - if AA[i]<>'' then - begin - CDS_Sub.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:=AA[i]; - end; - end; - Post; - end; -end; -//复制增行 -procedure CopyAddRowCDS(CDS_Sub:TClientDataSet); -var - AA:array[0..1000] of string; - i,j:Integer; -begin - - if CDS_Sub.IsEmpty then Exit; - for i:=0 to CDS_Sub.FieldCount-1 do - begin - AA[i]:=Trim(CDS_Sub.fieldbyname(CDS_Sub.Fields[i].FieldName).AsString); - end; - with CDS_Sub do - begin - Append; - for i:=0 to CDS_Sub.FieldCount-1 do - begin - if AA[i]<>'' then - begin - CDS_Sub.FieldByName(CDS_Sub.Fields[i].FieldName).Value:=AA[i]; - end; - end; - Post; - end; -end; - -procedure OneKeyPost(Tv1:TcxGridDBTableView;CDS_Sub:TClientDataSet); -var - FValue,FFValue,FColumn,FFColumn:String; -begin - //FColumn:=tv1.Columns[Tv1.Controller.FocusedColumnIndex].DataBinding.FieldName; - //FFColumn:=Tv1.Columns[Tv1.Controller.FocusedColumnIndex].Summary.GroupFormat; - FColumn:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; - FFColumn:=Tv1.Controller.FocusedColumn.Summary.GroupFormat; - FValue:=Trim(CDS_Sub.fieldbyname(FColumn).AsString); - if Trim(FFColumn)<>'' then - begin - FFValue:=Trim(CDS_Sub.fieldbyname(FFColumn).AsString); - end; - with CDS_Sub do - begin - DisableControls; - First; - while not Eof do - begin - Edit; - if FValue='' then - begin - CDS_Sub.FieldByName(FColumn).Value:=null; - end else - begin - CDS_Sub.FieldByName(FColumn).Value:=FValue; - end; - if Trim(FFColumn)<>'' then - begin - if FFValue='' then - begin - CDS_Sub.FieldByName(FFColumn).Value:=null; - end else - begin - CDS_Sub.FieldByName(FFColumn).Value:=FFValue; - end; - end; - - Post; - Next; - end; - EnableControls; - end; -end; - - -/////////////////////////////////////////////////// -//函数功能:取流水号 -//mFlag:前缀;mTable:表名 -//mlen:流水号长度; mtype:是否带日期 1:带 0 不带 -/////////////////////////////////////////////////// -function GetLSNo(ADOQueryTmp:TADOQuery; - var mMaxNo:string; - mFlag:string; - mTable:string; - mlen:integer; - mtype:integer=0):Boolean; -begin - try - with ADOQueryTmp do - begin - Close; - sql.Clear ; - sql.Add('exec Get_SY_MaxBH '); - sql.Add(' '+quotedStr(mFlag)); - sql.Add(','+quotedStr(mTable)); - sql.Add(','+intTostr(mlen)); - sql.Add(','+intTostr(mtype)); - //ShowMessage(SQL.Text); - Open; - - if RecordCount>0 then - begin - mMaxNo:=trim(fieldByName('MaxBH').AsString) ; - if mMaxNo<>'' then - result:=true - else - Result:=false; - end - else - begin - result:=false; - end; - - end; - if not Result then - application.MessageBox(Pchar('无法生成流水号('+mflag+')'),'提示信息',MB_ICONINFORMATION); - - Except - result:=false; - application.MessageBox(Pchar('无法生成流水号('+mflag+')'),'提示信息',MB_ICONINFORMATION); - - end; -end; -/////////////////////////////////////////////////// -//函数功能:取流水号 -//mFlag:前缀;mTable:表名 -//mlen:流水号长度; -//mtype:是否带日期 1:带 0 不带 -//HZype 0 按年月日取序号,1按年月取序号,2按年取序号,3按年月日取月序号,4按年月日取年序号 -/////////////////////////////////////////////////// -function GetLSNoHZ(ADOQueryTmp: TADOQuery; var mMaxNo: string; mFlag: string; mTable: string; mlen: integer; mtype: integer = 0; HZype: integer = 0): Boolean; -begin - try - with ADOQueryTmp do - begin - Close; - sql.Clear; - sql.Add('exec Get_SY_MaxBH_HZ '); - sql.Add(' ' + quotedStr(mFlag)); - sql.Add(',' + quotedStr(mTable)); - sql.Add(',' + intTostr(mlen)); - sql.Add(',' + intTostr(mtype)); - sql.Add(',' + intTostr(HZype)); - // ShowMessage(SQL.Text); - Open; - - if RecordCount > 0 then - begin - mMaxNo := trim(fieldByName('MaxBH').AsString); - if mMaxNo <> '' then - result := true - else - Result := false; - end - else - begin - result := false; - end; - - end; - if not Result then - application.MessageBox(Pchar('无法生成汇总流水号(' + mFlag + ')'), '提示信息', MB_ICONINFORMATION); - - except - result := false; - application.MessageBox(Pchar('无法生成汇总流水号(' + mFlag + ')'), '提示信息', MB_ICONINFORMATION); - - end; -end; - -procedure ReadCxGrid(fileName:string;cxgrid:TcxGridDBTableView;filePack:string='公用'); -var - mFileName:string; -begin - mFileName := ExtractFilePath(Application.ExeName)+'Layout\' +filePack+'\'+trim(fileName)+ '.dbg'; - //从布局文件中恢复 - if FileExists(mFileName) then - cxgrid.RestoreFromIniFile(mFileName); - CreateGroupSummarry(cxgrid); -end; -/////////////////////////////////////////////////////////////// - //函数功能:从文件中读取cxGridCol设置 - //fileName 推荐为窗口的caption名字caption名字 -/////////////////////////////////////////////////////////////// -procedure ReadCxBandedGrid(fileName:string;cxgrid:TcxGridDBBandedTableView;filePack:string='公用'); -var - mFileName:string; -begin - mFileName := ExtractFilePath(Application.ExeName)+'Layout\' +filePack+'\'+trim(fileName)+ '.dbg'; - //从布局文件中恢复 - if FileExists(mFileName) then - cxgrid.RestoreFromIniFile(mFileName); -end; -/////////////////////////////////////////////////////////////// - //函数功能:写cxGridCol设置到.dbg文件中 - //默认推荐为窗口的caption名字 -/////////////////////////////////////////////////////////////// -procedure WriteCxGrid(fileName:string;cxgrid:TcxGridDBTableView;filePack:string='公用'); -var - mFileName:string; -begin - mFileName := ExtractFilePath(Application.ExeName)+'Layout\' +filePack+'\'+trim(fileName)+ '.dbg'; - if not DirectoryExists(ExtractFileDir(mFileName)) then - CreateDir(ExtractFileDir(mFileName)); - //保存为布局文件 - cxgrid.StoreToIniFile(mFileName); - -end; -/////////////////////////////////////////////////////////////// - //函数功能:写cxGridCol设置到.dbg文件中 - //默认推荐为窗口的caption名字 -/////////////////////////////////////////////////////////////// -procedure WriteCxBandedGrid(fileName:string;cxgrid:TcxGridDBBandedTableView;filePack:string='公用'); -var - mFileName:string; -begin - mFileName := ExtractFilePath(Application.ExeName)+'Layout\' +filePack+'\'+trim(fileName)+ '.dbg'; - if not DirectoryExists(ExtractFileDir(mFileName)) then - CreateDir(ExtractFileDir(mFileName)); - //保存为布局文件 - cxgrid.StoreToIniFile(mFileName); -end; - -procedure CreateGroupSummarry(tv1:TcxGridDBTableView); -var - csg : TcxDataSummaryGroup; - csglink : TcxDataSummaryGroupItemLink; - csgItem : TcxDataSummaryItem; - i:integer; - mFieldName:string; -begin - ///创建汇总列 - with tv1.DataController.Summary do - begin - try - csg := DataController.Summary.SummaryGroups.Add; //创建汇总项 - - csg.Links.Clear; - for i:= 0 to tv1.ColumnCount -1 do - begin - if not tv1.Columns[i].Visible then continue; - mFieldName:=tv1.Columns[i].DataBinding.FieldName; - - if tv1.Columns[i].Summary.FooterKind=skSum then - begin - // (tv1.DataController.DataSet.Fields[i] as TNumericField).DisplayFormat := '#,0.00;-#,0.00;#'; - //tv1.Columns[i].Summary.FooterFormat:='0.0'; - //tv1.Columns[i].Summary.FooterKind := skSum; - - //这个与Group Row上的汇总同时使用时好象只能有一个有效 - //创建行分组行上的汇总项 - - csgitem := csg.SummaryItems.Add; - csgitem.ItemLink := tv1.Columns[i]; //汇总字段1 - csgitem.Position :=spGroup; - csgitem.Kind := skSum; - csgItem.Format := trim(tv1.Columns[i].Caption) +'小计=#,0.0'; - - tv1.Columns[i].Summary.GroupFooterKind := skSum; - tv1.Columns[i].Summary.GroupFooterFormat := '#,0.00'; - - end - else if tv1.Columns[i].Summary.FooterKind=skCount then - begin - // (tv1.DataController.DataSet.Fields[i] as TNumericField).DisplayFormat := '#,0.00;-#,0.00;#'; - //tv1.Columns[i].Summary.FooterFormat:='0.0'; - tv1.Columns[i].Summary.FooterKind := skCount; - - tv1.Columns[i].Summary.GroupFooterKind := skCount; - - //tv1.Columns[i].Summary.GroupFooterFormat := '#,0.00'; - //这个与Group Row上的汇总同时使用时好象只能有一个有效 - //创建行分组行上的汇总项 - csgitem := csg.SummaryItems.Add; - csgitem.ItemLink := tv1.Columns[i]; //汇总字段1 - csgitem.Kind := skCount; - //csgItem.Format := '小计=#,0.0'; - - end - else - begin - csglink := csg.Links.Add; - csglink.ItemLink := tv1.Columns[i]; //分类字段 - //所有不参与汇总的列都有可能用来分组,必须将这些列加入到 - //SummaryGroupItemLink中,没有加入该连接的列用来分组时 - //汇总值不会显示 - end; - - end; - finally - end; - end; - -end; - -procedure TcxGridToExcel(mfileName:string;gridName:TcxGrid); -var - saveDialog:TSaveDialog; -begin - try - saveDialog:=TSaveDialog.Create(nil); - saveDialog.Filter:='xls(*.xls)|*.xls|全部(*.*)|*.*'; - saveDialog.Options:=[ofOverwritePrompt]; - saveDialog.FileName:=mfileName; - if saveDialog.Execute then - if Assigned(gridName) then - begin - try - - ExportGridToExcel(saveDialog.FileName,gridName); - except - application.MessageBox('创建失败,源文件可能处于编辑状态!','提示信息',0); - exit; - end; - application.MessageBox('成功导出!','提示信息',0); - end - else - application.MessageBox('导出失败!','提示信息',0); - finally - saveDialog.Free; - end; -end; -procedure TcxGridToExcelEng(mfileName:string;gridName:TcxGrid); -var - saveDialog:TSaveDialog; -begin - try - saveDialog:=TSaveDialog.Create(nil); - saveDialog.Filter:='xls(*.xls)|*.xls|ALL(*.*)|*.*'; - saveDialog.Options:=[ofOverwritePrompt]; - saveDialog.FileName:=mfileName; - if saveDialog.Execute then - if Assigned(gridName) then - begin - try - - ExportGridToExcel(saveDialog.FileName,gridName); - except - application.MessageBox('The source file may be in edit mode!','Prompt message',0); - exit; - end; - application.MessageBox('Export success!','Prompt message',0); - end - else - application.MessageBox('Export failure!','Prompt message',0); - finally - saveDialog.Free; - end; -end; - - -function ReadINIFileStr(ininame,TypeName:string;ValueName,ValueMR:String):string; -var - programIni:Tinifile; //配置文件名 - FileName,ValueZS:string; -begin - FileName:=ExtractFilePath(Paramstr(0))+ininame; - programIni:=Tinifile.create(FileName); - ValueZS:=programIni.ReadString(TypeName,ValueName,ValueMR); - Result:=ValueZS; - programIni.Free; -end; - -procedure SelExportData(FTv:TcxGridDBTableView;FAdoQry:TADOQuery;FTile:string); -var - i,j:Integer; - fsj:string; -begin - if FAdoQry.IsEmpty then Exit; - try - frmSelExportField:=TfrmSelExportField.Create(Application); - with frmSelExportField do - begin - with frmSelExportField.ExpGrid do - begin - // ExpGrid.Columns.Clear; - ExpGrid.ClearItems; - frmSelExportField.IniName:=FTile; - {if FTv.OptionsView.Footer=true then - begin - ExpGrid.OptionsView.Footer:=True; - end else - begin - ExpGrid.OptionsView.Footer:=False; - end; } - ExpGrid.OptionsView.Footer:=FTv.OptionsView.Footer; - for i:=0 to FTv.ColumnCount-1 do - begin - //if FTv.Columns[i].Visible=True then - begin - ExpGrid.CreateColumn; - j:=ExpGrid.ColumnCount-1; - ExpGrid.Columns[j].Caption:=FTv.Columns[i].Caption; - ExpGrid.Columns[i].Visible:=FTv.Columns[i].Visible; - ExpGrid.Columns[j].DataBinding.FieldName:=FTv.Columns[i].DataBinding.FieldName; - ExpGrid.Columns[j].Width:=FTv.Columns[i].Width; - ExpGrid.Columns[i].Summary.FooterKind:=FTv.Columns[i].Summary.FooterKind; - - end; - end; - end; - ExportDataSource.DataSet:=FAdoQry; - FAdoQry.Open; - if ShowModal=1 then - begin - - end; - end; - frmSelExportField.Free; - except - - end; -end; -procedure SelExportDataBand(FTv:TcxGridDBBandedTableView;FAdoQry:TADOQuery;FTile:string); -var - i,j:Integer; - fsj:string; -begin - if FAdoQry.IsEmpty then Exit; - try - frmSelExportField:=TfrmSelExportField.Create(Application); - with frmSelExportField do - begin - with frmSelExportField.ExpGrid do - begin - // ExpGrid.Columns.Clear; - ExpGrid.ClearItems; - frmSelExportField.IniName:=FTile; - {if FTv.OptionsView.Footer=true then - begin - ExpGrid.OptionsView.Footer:=True; - end else - begin - ExpGrid.OptionsView.Footer:=False; - end; } - ExpGrid.OptionsView.Footer:=FTv.OptionsView.Footer; - for i:=0 to FTv.ColumnCount-1 do - begin - if FTv.Columns[i].Visible=True then - begin - ExpGrid.CreateColumn; - j:=ExpGrid.ColumnCount-1; - ExpGrid.Columns[j].Caption:=FTv.Columns[i].Caption; - ExpGrid.Columns[j].DataBinding.FieldName:=FTv.Columns[i].DataBinding.FieldName; - ExpGrid.Columns[j].Width:=FTv.Columns[i].Width; - ExpGrid.Columns[i].Summary.FooterKind:=FTv.Columns[i].Summary.FooterKind; - - end; - end; - end; - ExportDataSource.DataSet:=FAdoQry; - FAdoQry.Open; - if ShowModal=1 then - begin - - end; - end; - frmSelExportField.Free; - except - - end; -end; -procedure ColumnView(AdoQueryTemp:TADOQuery;Tv1:TcxGridDBTableView;MKName10:string); -begin - with ADOQueryTemp do - begin - Close; - sql.Clear; - sql.Add('select * from Table_Column where CxTabName='''+Trim(MKName10)+''' and Owner='''+Trim(DCode)+''''); - sql.Add(' and TCNotVisble=1 '); - open; - end; - if ADOQueryTemp.IsEmpty=False then - begin - with ADOQueryTemp do - begin - First; - while not eof do - begin - - TV1.GetColumnByFieldName(ADOQueryTemp.fieldbyname('ColName').AsString).Visible:=False; - TV1.GetColumnByFieldName(ADOQueryTemp.fieldbyname('ColName').AsString).Hidden:=True; - Next; - end; - end; - end; -end; -procedure ColumnBandView(AdoQueryTemp:TADOQuery;Tv1:TcxGridDBBandedTableView;MKName10:string); -var - fsj:string; -begin - with ADOQueryTemp do - begin - Close; - sql.Clear; - sql.Add('select * from Table_Column where CxTabName='''+Trim(MKName10)+''' and Owner='''+Trim(DCode)+''''); - sql.Add(' and TCNotVisble=1 '); - open; - end; - if ADOQueryTemp.IsEmpty=False then - begin - with ADOQueryTemp do - begin - First; - while not eof do - begin - fsj:=Trim(ADOQueryTemp.fieldbyname('ColName').AsString); - // Tv1.Controller.ge - Tv1.GetColumnByFieldName(fsj).Visible:=False; - Tv1.GetColumnByFieldName(fsj).Hidden:=True; - Next; - end; - end; - end; -end; -procedure ColumnSet(TV10:TcxGridDBTableView;MKName10:String); -var - i:Integer; -begin - try - frmColumnSet:=TfrmColumnSet.Create(Application); - with frmColumnSet do - begin - ADOQuery2.DisableControls; - with ADOQuery2 do - begin - Close; - sql.Clear; - sql.Add('select * from Table_Column where 1<>1'); - Open; - end; - SCreateCDS20(ADOQuery2,ClientDataSet2); - SInitCDSData20(ADOQuery2,ClientDataSet2); - ADOQuery2.EnableControls; - MKName:=MKName10; - for i:=0 to TV10.ColumnCount-1 do - begin - with ClientDataSet2 do - begin - Append; - FieldByName('CxTabName').Value:=MKName; - FieldByName('CxColName').Value:=Trim(TV10.Columns[i].Caption); - FieldByName('ColName').Value:=Trim(TV10.Columns[i].DataBinding.FieldName); - Post; - end; - end; - if ShowModal=1 then - begin - - end; - end; - finally - frmColumnSet.Free; - end; -end; -procedure ColumnBandSet(TV10:TcxGridDBBandedTableView;MKName10:String); -var - i:Integer; -begin - try - frmColumnBandSet:=TfrmColumnBandSet.Create(Application); - with frmColumnBandSet do - begin - ADOQuery2.DisableControls; - with ADOQuery2 do - begin - Close; - sql.Clear; - sql.Add('select * from Table_Column where 1<>1'); - Open; - end; - SCreateCDS20(ADOQuery2,ClientDataSet2); - SInitCDSData20(ADOQuery2,ClientDataSet2); - ADOQuery2.EnableControls; - MKName:=MKName10; - for i:=0 to TV10.ColumnCount-1 do - begin - with ClientDataSet2 do - begin - Append; - FieldByName('CxTabName').Value:=Trim(TV10.Bands[TV10.Columns[i].Position.BandIndex].Caption); - FieldByName('CxColName').Value:=Trim(TV10.Columns[i].Caption); - FieldByName('ColName').Value:=Trim(TV10.Columns[i].DataBinding.FieldName); - FieldByName('OrderNo').Value:=i; - Post; - end; - end; - ADOQuery5.DisableControls; - with ADOQuery5 do - begin - Close; - sql.Clear; - sql.Add('select * from Table_Name where 1<>1'); - Open; - end; - SCreateCDS20(ADOQuery5,CDSName); - SInitCDSData20(ADOQuery5,CDSName); - ADOQuery2.EnableControls; - MKName:=MKName10; - for i:=0 to TV10.Bands.Count-1 do - begin - with CDSName do - begin - Append; - FieldByName('CxTabName').Value:=Trim(TV10.Bands[i].Caption); - FieldByName('OrderNo').Value:=i; - Post; - end; - end; - if ShowModal=1 then - begin - - end; - end; - finally - frmColumnBandSet.Free; - end; -end; - -procedure GetSWLDZ(IPStr:string); -var - myip:ulong; - mymac:array[0..5] of byte; - mymaclength:ulong; - r:integer; -begin - {myip:=inet_addr(PChar(Trim(IPStr))); - mymaclength:=length(mymac); - r:=sendarp(myip,0,@mymac,@mymaclength); - IpCall:=r; - IpWLDZStr:=format('%2.2x:%2.2x:%2.2x:%2.2x:%2.2x:%2.2x',[mymac[0],mymac[1],mymac[2],mymac[3],mymac[4],mymac[5]]);} -end; -procedure SelOKNo(CDS_MainSel:TClientDataSet;FSel:Boolean); -begin - if CDS_MainSel.IsEmpty then Exit; - CDS_MainSel.DisableControls; - with CDS_MainSel do - begin - First; - while not Eof do - begin - if FieldByName('SSel').AsBoolean=not FSel then - begin - Edit; - FieldByName('SSel').Value:=FSel; - Post; - end; - Next; - end; - end; - CDS_MainSel.EnableControls; -end; - -procedure SelOKNoAdo(CDS_MainSel:TADOQuery;FSel:Boolean); -begin - if CDS_MainSel.IsEmpty then Exit; - CDS_MainSel.DisableControls; - with CDS_MainSel do - begin - First; - while not Eof do - begin - if FieldByName('SSel').AsBoolean=not FSel then - begin - Edit; - FieldByName('SSel').Value:=FSel; - Post; - end; - Next; - end; - end; - CDS_MainSel.EnableControls; -end; -function num2ceng(strArabic:string):string;//不带小数点数字转换英文 -const - sw:array[2..9]of string=('twenty','thirty','forty','fifty','sixty','seventy','eighty','ninety'); - gw:array[1..19] of string=('one','two','three','four','five','six','seven','eight','nine','ten','eleven','twelve','thirteen','fourteen','fifteen','sixteen','seventeen','eighteen','nineteen'); - exp:array[1..4] of string=('','thousand','million','billion'); -var - t,j,glb,t1 :integer; - ts:string; - function readu1000(ss:string):string; - var - t,code:integer; - begin - result := ''; - while ss[1]='0' do - begin - delete(ss,1,1); - if length(ss)=0 then exit;//控制全是0情况 - end; - if length(ss)=3 then - begin - appendstr(result,gw[ord(ss[1])-ord('0')]); - //appendstr(result,' hundred '); - appendstr(result,' hundred '); - delete(ss,1,1); - end; - while ss[1]='0' do - begin - delete(ss,1,1); - if length(ss)=0 then exit; - end; - if length(ss)<>0 then - if result <> '' then appendstr(result,'and '); - if (glb = 1) and (t1<>1) then //超过百位时候处理最后3位 - if result='' then appendstr(result,'and '); - begin - val(ss,t,code); - if t<20 then result :=result+gw[t] - else if t mod 10=0 then result:=result+sw[t div 10] - else - //result := result+sw[trunc(t/10)]+'-'+gw[t mod 10]; - result := result+sw[trunc(t/10)]+' '+gw[t mod 10]; - end; - end; -begin - result :=''; - t := pos('.',strArabic); - if t=0 then t:=length(strArabic)+1; - while (t mod 3<>1)do - begin - t:=t+1; - strArabic:='0'+ strArabic; - end; - t1:=(t-1) div 3; - for glb:=t1 downto 1 do - begin - ts:=''; - for j:=1 to 3 do - begin - ts:=ts+ strArabic[1]; - delete(strArabic,1,1); - end; - result := result + readu1000(ts); - if ts<>'000' then result := result+' '+exp[glb]+' '; - end; - if length(strArabic)<>0 then - begin - delete(strArabic,1,1); - appendstr(result,'and '); - result :=result + readu1000(strArabic); - end; -end; -function num2cengnum(strArabic:string):string; -const - gw:array[1..10] of string =('0','one','two','three','four','five','six','seven','eight','nine'); -var - p,i,j,x:integer; - s:string; -begin - result := ''; - s := strarabic; - p := pos('.',strarabic); - if p = 0 then - begin - result := num2ceng(strarabic)+'Only'; - exit; - end - else - begin - i := length(s)-p;//计算小数点后面有几位 - delete(strarabic,p,i+1);//删除小数点后面数字 - result := num2ceng(strarabic)+'Point'; - end; - for x:=1 to i do //转换小数点后面数字 - begin - j:= strtoint(copy(s,p+x,1)); - case j of - 0: result := result +' '+gw[1]; - 1: result := result +' '+gw[2]; - 2: result := result +' '+gw[3]; - 3: result := result +' '+gw[4]; - 4: result := result +' '+gw[5]; - 5: result := result +' '+gw[6]; - 6: result := result +' '+gw[7]; - 7: result := result +' '+gw[8]; - 8: result := result +' '+gw[9]; - 9: result := result +' '+gw[10]; - end; - end; -end; -procedure DelCDS(ClientDataSet1:TClientDataSet;ADOCmd:TADOQuery;DelSql:string); -begin - if ClientDataSet1.IsEmpty then Exit; - if Trim(ClientDataSet1.fieldbyname('ZSID').AsString)<>'' then - begin - if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit; - with ADOCmd do - begin - Close; - SQL.Clear; - sql.Add(DelSql); - ExecSQL; - end; - end; - ClientDataSet1.Delete; -end; - -end. - +end; + +///////////////////取表中Int型字段最大值/////////////////////////////////////// +function SGetMaxId(AdoQueryTemp:TADOQuery;MyTable:string;MyField:string;Var MaxId:Integer):Boolean; +begin + try + with AdoQueryTemp do + begin + Close; + SQL.Clear; + SQL.Add('select Max('+MyField+')+1 MaxId from '+MyTable); + Open; + end; + with AdoQueryTemp do + begin + if (Trim(FieldByName('MaxId').AsString)='') or + (Trim(FieldByName('MaxId').AsString)=NULL) then + MaxId:=1 + else + MaxId:=(fieldbyname('MaxId').AsInteger); + Close; + SQL.Clear; + end; + Result:=True; + except + Result:=False; + Application.MessageBox('取最大值失败!','提示',0); + end; +end; +procedure InitBCGangNo(OrdSubId:string;Combox:TComboBox;FAdoQry:TADOQuery); +var + fsj:string; +begin + fsj:='select distinct(AOrdDefStr1) Code from JYOrder_Sub_AnPai '+ + ' where Subid='''+Trim(OrdSubId)+''''; + with FAdoQry do + begin + Close; + sql.Clear; + sql.Add(fsj); + Open; + end; + Combox.Clear; + with FAdoQry do + begin + First; + while not Eof do + begin + Combox.Items.Add(Trim(FAdoQry.fieldbyname('Code').AsString)); + Next; + end; + end; + Combox.Items.Add(''); +end; +procedure InitRCGangNo(OrdSubId:string;Combox:TComboBox;FAdoQry:TADOQuery); +var + fsj:string; +begin + fsj:='select distinct(gangno) Code from JYOrder_Sub_AnPai '+ + ' where Subid='''+Trim(OrdSubId)+''''; + with FAdoQry do + begin + Close; + sql.Clear; + sql.Add(fsj); + Open; + end; + Combox.Clear; + with FAdoQry do + begin + First; + while not Eof do + begin + Combox.Items.Add(Trim(FAdoQry.fieldbyname('Code').AsString)); + Next; + end; + end; + Combox.Items.Add(''); +end; +procedure InitOrderColor(OrdMainId:string;Combox:TComboBox;FAdoQry:TADOQuery); +var + fsj:string; +begin + fsj:='select distinct(PRTColor) Code from JYOrder_Sub '+ + ' where Mainid='''+Trim(OrdMainId)+''''; + with FAdoQry do + begin + Close; + sql.Clear; + sql.Add(fsj); + Open; + end; + Combox.Clear; + with FAdoQry do + begin + First; + while not Eof do + begin + Combox.Items.Add(Trim(FAdoQry.fieldbyname('Code').AsString)); + Next; + end; + end; + Combox.Items.Add(''); +end; +////自定义打印 +procedure SelPrintData(FTv:TcxGridDBTableView;FAdoQry:TADOQuery;FTitle:string + ;FLTitle:string;FRTile:string); +var + i,j,k,KK:Integer; + fsj:string; + FOrder,fcolumnName:string; +begin + {if FAdoQry.IsEmpty then Exit; + try + frmSelPrintFieldNew:=TfrmSelPrintFieldNew.Create(Application); + with frmSelPrintFieldNew do + begin + with frmSelPrintFieldNew.PrnGrid do + begin + PrnGrid.Columns.Clear; + frmSelPrintFieldNew.IniName:=FTitle; + for i:=0 to FTv.ColumnCount-1 do + begin + if FTv.Columns[i].Visible=True then + begin + PrnGrid.Columns.Add; + j:=PrnGrid.Columns.Count-1; + PrnGrid.Columns[j].Title.Caption:=FTv.Columns[i].Caption; + PrnGrid.Columns[j].FieldName:=FTv.Columns[i].DataBinding.FieldName; + PrnGrid.Columns[j].Width:=FTv.Columns[i].Width; + if FTv.Columns[i].SortOrder=soAscending then + begin + FOrder:=' '+FTv.Columns[i].DataBinding.FieldName+' '; + end else + if FTv.Columns[i].SortOrder=soDescending then + begin + FOrder:=' '+FTv.Columns[i].DataBinding.FieldName+' DESC'; + end; + end; + end; + end; + FAdoQry.Sort:=FOrder; + frmSelPrintFieldNew.RMPrintDBGrid1.PageCaptionMsg.TitleMemo.Add(FTitle); + frmSelPrintFieldNew.RMPrintDBGrid1.PageCaptionMsg.CaptionMsg.LeftMemo.Add(FLTitle); + frmSelPrintFieldNew.RMPrintDBGrid1.PageCaptionMsg.CaptionMsg.RightMemo.Add(FRTile); + SCreatecds20(FAdoQry,frmSelPrintFieldNew.ClientDataSet1); + SInitCDSData20(FAdoQry,frmSelPrintFieldNew.ClientDataSet1); + if FTv.OptionsView.Footer=True then + begin + if FTv.DataController.Summary.FooterSummaryItems.Count>0 then + begin + frmSelPrintFieldNew.ClientDataSet1.Append; + //frmSelPrintFieldNew.ClientDataSet1.FieldByName('Sindex').Value:=frmSelPrintFieldNew.ClientDataSet1.RecNo+1; + frmSelPrintFieldNew.ClientDataSet1.Post; + KK:=0; + for i:=0 to FTv.ColumnCount-1 do + begin + if FTv.Columns[i].Visible=False then Continue; + + fcolumnName:=FTv.Columns[i].Name; + if FTv.Columns[i].Summary.FooterKind<>sknone then + begin + for k:=0 to FTv.DataController.Summary.FooterSummaryItems.Count-1 do + begin + if TcxGridDBTableSummaryItem(FTv.DataController.Summary.FooterSummaryItems.Items[k]).Column.Name=fcolumnName then + begin + frmSelPrintFieldNew.ClientDataSet1.edit; + frmSelPrintFieldNew.ClientDataSet1.FieldByName(FTv.Columns[i].DataBinding.FieldName).Value:= + FTv.DataController.Summary.FooterSummaryValues[k]; + frmSelPrintFieldNew.ClientDataSet1.Post; + end; + end; + end; + end; + end; + end; + if ShowModal=1 then + begin + + end; + end; + + finally + frmSelPrintFieldNew.Free; + end; } +end; +////自定义打印 +procedure SelPrintDataMore(FTv:TcxGridDBTableView;FAdoQry:TADOQuery;FTitle:string + ;FLTitle:string;FRTile:string;FKK:Integer;FiniName:string); +var + i,j,k,KK:Integer; + fsj:string; + FOrder,fcolumnName:string; +begin + {if FAdoQry.IsEmpty then Exit; + try + frmSelPrintFieldNew:=TfrmSelPrintFieldNew.Create(Application); + with frmSelPrintFieldNew do + begin + with frmSelPrintFieldNew.PrnGrid do + begin + PrnGrid.Columns.Clear; + frmSelPrintFieldNew.IniName:=FiniName; + for i:=0 to FTv.ColumnCount-1 do + begin + if FTv.Columns[i].Visible=True then + begin + PrnGrid.Columns.Add; + j:=PrnGrid.Columns.Count-1; + PrnGrid.Columns[j].Title.Caption:=FTv.Columns[i].Caption; + PrnGrid.Columns[j].FieldName:=FTv.Columns[i].DataBinding.FieldName; + PrnGrid.Columns[j].Width:=FTv.Columns[i].Width; + if FTv.Columns[i].SortOrder=soAscending then + begin + FOrder:=' '+FTv.Columns[i].DataBinding.FieldName+' '; + end else + if FTv.Columns[i].SortOrder=soDescending then + begin + FOrder:=' '+FTv.Columns[i].DataBinding.FieldName+' DESC'; + end; + end; + end; + end; + FAdoQry.Sort:=FOrder; + frmSelPrintFieldNew.RMPrintDBGrid1.PageCaptionMsg.TitleMemo.Add(FTitle); + frmSelPrintFieldNew.RMPrintDBGrid1.PageCaptionMsg.CaptionMsg.LeftMemo.Add(FLTitle); + frmSelPrintFieldNew.RMPrintDBGrid1.PageCaptionMsg.CaptionMsg.RightMemo.Add(FRTile); + + SCreatecds20(FAdoQry,frmSelPrintFieldNew.ClientDataSet1); + SInitCDSData20(FAdoQry,frmSelPrintFieldNew.ClientDataSet1); + if FTv.OptionsView.Footer=True then + begin + if FTv.DataController.Summary.FooterSummaryItems.Count>0 then + begin + frmSelPrintFieldNew.ClientDataSet1.Append; + + frmSelPrintFieldNew.ClientDataSet1.Post; + KK:=0; + for i:=0 to FTv.ColumnCount-1 do + begin + + + fcolumnName:=FTv.Columns[i].Name; + if FTv.Columns[i].Summary.FooterKind<>sknone then + begin + if KK=0 then + begin + frmSelPrintFieldNew.ClientDataSet1.edit; + frmSelPrintFieldNew.ClientDataSet1.FieldByName(FTv.Columns[i-FKK].DataBinding.FilterFieldName).Value:='Total'; + frmSelPrintFieldNew.ClientDataSet1.Post; + KK:=99; + end; + for k:=0 to FTv.DataController.Summary.FooterSummaryItems.Count-1 do + begin + if TcxGridDBTableSummaryItem(FTv.DataController.Summary.FooterSummaryItems.Items[k]).Column.Name=fcolumnName then + begin + frmSelPrintFieldNew.ClientDataSet1.edit; + frmSelPrintFieldNew.ClientDataSet1.FieldByName(FTv.Columns[i].DataBinding.FieldName).Value:= + FTv.DataController.Summary.FooterSummaryValues[k]; + frmSelPrintFieldNew.ClientDataSet1.Post; + end; + end; + end; + end; + end; + end; + if ShowModal=1 then + begin + + end; + end; + + finally + frmSelPrintFieldNew.Free; + end;} +end; +///////////////////////判断表中数据是否重复/////////////////////////////////// +function SIsRepeated(AdoQueryTemp:TADOQuery;MyTable:string;MyField:string;MyCode:String):Boolean; +begin + try + Result:=False; + with AdoQueryTemp do + begin + Close; + SQL.Clear; + SQL.Add('select * from '+MyTable+' where '+MyField+'='''+Trim(MyCode)+''''); + Open; + if IsEmpty then Result:=True; + Close; + SQL.Clear; + end; + except + Result:=False; + Application.MessageBox('表名或字段名错误!','提示',0); + end; +end; +////////////////////设置ClientDataSet的保存信息///////////////////////////// +function SSetSaveDataCDS(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBTableView; + CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; +var + i:Integer; +begin + try + Result:=False; + for i:=0 to Tv1.ColumnCount-1 do + begin + if Tv1.Columns[i].Tag=MyTag then + begin + if Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).AsString)<>'' then + begin + AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:= + CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).Value; + end; + + end; + end; + Result:=True; + except + Result:=False; + Application.MessageBox('设置Cds保存信息失败!','提示',0); + end; +end; +////////////////////设置ClientDataSet的保存信息///////////////////////////// +function SSetSaveDataCDSNew(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBTableView; + CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; +var + i:Integer; +begin + try + Result:=False; + for i:=0 to Tv1.ColumnCount-1 do + begin + if Tv1.Columns[i].Tag=MyTag then + begin + if Tv1.Columns[i].Visible=True then + begin + if Trim(Tv1.Columns[i].Summary.GroupFooterFormat)<>'1' then + begin + if Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).AsString)<>'' then + begin + AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:= + CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).Value; + end{ else + begin + AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:=null; + end}; + end; + if Trim(Tv1.Columns[i].Summary.GroupFormat)<>'' then + begin + if Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].Summary.GroupFormat).AsString)<>'' then + begin + AdoQueryCmd.FieldByName(Tv1.Columns[i].Summary.GroupFormat).Value:= + CDS_Sub.fieldbyname(Tv1.Columns[i].Summary.GroupFormat).Value; + end;{ else + begin + AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:=null; + end; } + end; + end; + + + + end; + end; + Result:=True; + except + Result:=False; + Application.MessageBox('设置Cds保存信息失败!','提示',0); + end; +end; +function RTSetSaveDataCDS(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBTableView; + CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; +var + i:Integer; +begin + try + Result:=False; + for i:=0 to Tv1.ColumnCount-1 do + begin + if Tv1.Columns[i].Tag=MyTag then + begin + if Trim(Tv1.Columns[i].DataBinding.FilterFieldName)='' then Continue; + begin + if Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).AsString)<>'' then + begin + AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:= + CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).Value; + end else + begin + if Trim(Tv1.Columns[i].Summary.GroupFooterFormat)='0' then + begin + AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:=0; + end else + begin + AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:=null; + end; + end; + + end; + + end; + end; + Result:=True; + except + Result:=False; + Application.MessageBox('设置Cds保存信息失败!','提示',0); + end; +end; +function RTSetSaveDataCDSBand(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBBandedTableView; + CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; +var + i:Integer; +begin + try + Result:=False; + for i:=0 to Tv1.ColumnCount-1 do + begin + if Tv1.Columns[i].Tag=MyTag then + begin + + begin + if Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).AsString)<>'' then + begin + AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:= + CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).Value; + end else + begin + if Trim(Tv1.Columns[i].Summary.GroupFooterFormat)<>'' then + AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:=0 + else + AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:=Trim(Tv1.Columns[i].Summary.GroupFooterFormat); + end; + + end; + + end; + end; + Result:=True; + except + Result:=False; + Application.MessageBox('设置Cds保存信息失败!','提示',0); + end; +end; + +function SSetSaveDataCDSBandNew(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBBandedTableView; + CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; +var + i:Integer; +begin + try + Result:=False; + for i:=0 to Tv1.ColumnCount-1 do + begin + if Tv1.Columns[i].Tag=MyTag then + begin + if Trim(Tv1.Columns[i].Summary.GroupFooterFormat)<>'1' then + begin + if Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).AsString)<>'' then + begin + AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:= + CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).Value; + end; + end; + if Trim(Tv1.Columns[i].Summary.GroupFormat)<>'' then + begin + if Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].Summary.GroupFormat).AsString)<>'' then + begin + AdoQueryCmd.FieldByName(Tv1.Columns[i].Summary.GroupFormat).Value:= + CDS_Sub.fieldbyname(Tv1.Columns[i].Summary.GroupFormat).Value; + end; + end; + + + end; + end; + Result:=True; + except + Result:=False; + Application.MessageBox('设置Cds保存信息失败!','提示',0); + end; +end; +////////////////////设置ClientDataSet的保存信息///////////////////////////// +function SSetSaveDataCDS10(AdoQueryCmd:TADOQuery;Tv1:TcxGridDBBandedTableView; + CDS_Sub:TClientDataSet;MyTable:string;MyTag:Integer):Boolean; +var + i:Integer; +begin + try + Result:=False; + for i:=0 to Tv1.ColumnCount-1 do + begin + if Tv1.Columns[i].Tag=MyTag then + begin + if Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).AsString)<>'' then + AdoQueryCmd.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:= + CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).Value; + end; + end; + Result:=True; + except + Result:=False; + Application.MessageBox('设置Cds保存信息失败!','提示',0); + end; +end; + ///////////////////////////服务器日期////////////////////////////////////// +function SGetServerDate(ADOQueryTmp:TADOQuery):TdateTime; +begin + try + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.Add('select getDate()as dt'); + open; + result:=StrToDate(formatdatetime('yyyy-MM-dd',fieldByName('dt').AsDatetime)); + close; + SQL.Clear; + end; + except + application.MessageBox('获取当前日期发生错误!','提示信息',0); + end; + +end; +function SGetServerDateTime(ADOQueryTmp:TADOQuery):TdateTime; +begin + try + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.Add('select getDate()as dt'); + open; + result:=fieldByName('dt').AsDatetime; + close; + SQL.Clear; + end; + except + application.MessageBox('获取当前日期发生错误!','提示信息',0); + end; + +end; +function SGetServerDate10(ADOQueryTmp:TADOQuery):TdateTime; +begin + try + with ADOQueryTmp do + begin + close; + sql.Clear; + sql.Add('select getDate()as dt'); + open; + result:=StrToDate(formatdatetime('yyyy-MM-dd',fieldByName('dt').AsDatetime)); + close; + SQL.Clear; + end; + except + application.MessageBox('获取当前日期发生错误!','提示信息',0); + end; + +end; + +///////////////////////////////////////////////////// +//保存数据时字段赋值 +///////////////////////////////////////////////////// +procedure SSetsavedata(ADOQueryCmd:TADOQuery;MyTable:string; + Myparent:TWinControl;MyTag:integer); +var + i:Integer; +begin + with Myparent do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i].Tag=MyTag then + begin + if Controls[i] is TEdit then + begin + if Trim(TEdit(Controls[i]).Text)<>'' then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TEdit(Controls[i]).Text); + end else + if Controls[i] is TRichEdit then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TRichEdit(Controls[i]).Text; + end else + if Controls[i] is TcxRichEdit then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TcxRichEdit(Controls[i]).Text; + end else + if Controls[i] is TMemo then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TMemo(Controls[i]).Text; + end; + if Controls[i] is TFTComboBox then + begin + if (TFTComboBox(Controls[i]).Text)<>'' then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TFTComboBox(Controls[i]).Item2); + end else + if Controls[i] is TComboBox then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TComboBox(Controls[i]).Text); + end else + if Controls[i] is TCheckBox then + begin + if TCheckBox(Controls[i]).Checked=True then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=1 + else + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=0; + end else + if Controls[i] is TDateTimePicker then + begin + if TDateTimePicker(Controls[i]).ShowCheckbox then + begin + if TDateTimePicker(Controls[i]).Checked then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime; + end else + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime; + end else + if Controls[i] is TBtnEditA then + begin + if TBtnEditA(Controls[i]).Hint='名称' then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditA(Controls[i]).Text) + else + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditA(Controls[i]).TxtCode); + end else + if Controls[i] is TBtnEditC then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditC(Controls[i]).TxtCode); + end else + if Controls[i] is TcxTimeEdit then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TcxTimeEdit(Controls[i]).Text); + end; + end; + end; + end; +end; +procedure SSetsavedataNew(ADOQueryCmd:TADOQuery;MyTable:string; + Myparent:TWinControl;MyTag:integer); +var + i:Integer; +begin + with Myparent do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i].Tag=MyTag then + begin + if Controls[i] is TEdit then + begin + if Trim(TEdit(Controls[i]).Text)<>'' then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TEdit(Controls[i]).Text); + end else + if Controls[i] is TRichEdit then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TRichEdit(Controls[i]).Text; + end else + if Controls[i] is TMemo then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TMemo(Controls[i]).Text; + end; + if Controls[i] is TFTComboBox then + begin + if (TFTComboBox(Controls[i]).Text)<>'' then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TFTComboBox(Controls[i]).Item2); + end else + if Controls[i] is TComboBox then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TComboBox(Controls[i]).Text); + end else + if Controls[i] is TDateTimePicker then + begin + if TDateTimePicker(Controls[i]).ShowCheckbox then + begin + if TDateTimePicker(Controls[i]).Checked then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime; + end else + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime; + end else + if Controls[i] is TBtnEditA then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditA(Controls[i]).TxtCode); + if (TBtnEditA(Controls[i]).Hint<>'') and (TBtnEditA(Controls[i]).ParentCtl3D=True) then + ADOQueryCmd.FieldByName(Trim(TBtnEditA(Controls[i]).Hint)).Value:=Trim(TBtnEditA(Controls[i]).Text); + end else + if Controls[i] is TBtnEditC then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditC(Controls[i]).TxtCode); + //if (TBtnEditC(Controls[i]).Hint<>'') and (TBtnEditC(Controls[i]).ParentCtl3D=True)then + //ADOQueryCmd.FieldByName(Trim(TBtnEditC(Controls[i]).Hint)).Value:=Trim(TBtnEditC(Controls[i]).Text); + end else + if Controls[i] is TcxTimeEdit then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TcxTimeEdit(Controls[i]).Text); + end; + end; + end; + end; +end; +procedure RTSetsavedata(ADOQueryCmd:TADOQuery;MyTable:string; + Myparent:TWinControl;MyTag:integer); +var + i:Integer; +begin + with Myparent do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i].Tag=MyTag then + begin + if Controls[i] is TEdit then + begin + if Trim(TEdit(Controls[i]).Text)<>'' then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TEdit(Controls[i]).Text); + end else + if Controls[i] is TRichEdit then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TRichEdit(Controls[i]).Text; + end else + if Controls[i] is TMemo then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TMemo(Controls[i]).Text; + end; + if Controls[i] is TFTComboBox then + begin + if (TFTComboBox(Controls[i]).Text)<>'' then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TFTComboBox(Controls[i]).Item2); + end else + if Controls[i] is TComboBox then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TComboBox(Controls[i]).Text); + end else + if Controls[i] is TDateTimePicker then + begin + if TDateTimePicker(Controls[i]).ShowCheckbox then + begin + if TDateTimePicker(Controls[i]).Checked then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime; + end else + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime; + end else + if Controls[i] is TBtnEditA then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditA(Controls[i]).Text); + if (TBtnEditA(Controls[i]).Hint<>'') then + ADOQueryCmd.FieldByName(Trim(TBtnEditA(Controls[i]).Hint)).Value:=Trim(TBtnEditA(Controls[i]).TxtCode); + end else + if Controls[i] is TBtnEditC then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditC(Controls[i]).Text); + if (TBtnEditC(Controls[i]).Hint<>'') then + ADOQueryCmd.FieldByName(Trim(TBtnEditC(Controls[i]).Hint)).Value:=Trim(TBtnEditC(Controls[i]).TxtCode); + end else + if Controls[i] is TcxTimeEdit then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TcxTimeEdit(Controls[i]).Text); + end; + end; + end; + end; +end; +procedure SSetsaveSql(ADOQueryCmd:TADOQuery;MyTable:string; + Myparent:TWinControl;MyTag:integer); +var + i:Integer; + MCode:String; +begin + with Myparent do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i].Tag=MyTag then + begin + if Controls[i] is TEdit then + begin + if Trim(TEdit(Controls[i]).Text)<>'' then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TEdit(Controls[i]).Text) + else + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Null; + end else + if Controls[i] is TRichEdit then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TRichEdit(Controls[i]).Text; + end else + if Controls[i] is TcxRichEdit then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TcxRichEdit(Controls[i]).Text; + end else + if Controls[i] is TMemo then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TMemo(Controls[i]).Text; + end else + if Controls[i] is TFTComboBox then + begin + if (TFTComboBox(Controls[i]).Text)<>'' then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TFTComboBox(Controls[i]).Item2); + end else + if Controls[i] is TComboBox then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TComboBox(Controls[i]).Text); + end else + if Controls[i] is TDateTimePicker then + begin + if TDateTimePicker(Controls[i]).ShowCheckbox then + begin + if TDateTimePicker(Controls[i]).Checked then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime; + end else + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime; + end else + if Controls[i] is TBtnEditA then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditA(Controls[i]).TxtCode); + if (TBtnEditA(Controls[i]).Hint<>'') and (TBtnEditA(Controls[i]).ParentCtl3D=True) then + ADOQueryCmd.FieldByName(Trim(TBtnEditA(Controls[i]).Hint)).Value:=Trim(TBtnEditA(Controls[i]).Text); + end else + if Controls[i] is TBtnEditC then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditC(Controls[i]).TxtCode); + //if (TBtnEditC(Controls[i]).Hint<>'') and (TBtnEditC(Controls[i]).ParentCtl3D=True)then + //ADOQueryCmd.FieldByName(Trim(TBtnEditC(Controls[i]).Hint)).Value:=Trim(TBtnEditC(Controls[i]).Text); + end else + if Controls[i] is TcxTimeEdit then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TcxTimeEdit(Controls[i]).Text); + end else + if Controls[i] is TcxButtonEdit then + begin + if (TcxButtonEdit(Controls[i]).BeepOnEnter=True) or (TcxButtonEdit(Controls[i]).ParentShowHint=True) then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TcxButtonEdit(Controls[i]).Text); + if TcxButtonEdit(Controls[i]).ParentShowHint=False then + begin + MCode:=Copy(Trim(Controls[i].Name),1,Length(Trim(Controls[i].Name))-4); + ADOQueryCmd.FieldByName(MCode).Value:=Trim(TcxButtonEdit(Controls[i]).Hint); + end; + end; + end; + end; + end; +end; +procedure SSetsaveSqlNew(ADOQueryCmd:TADOQuery;MyTable:string; + Myparent:TWinControl;MyTag:integer); +var + i:Integer; + MCode:String; +begin + with Myparent do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i].Tag=MyTag then + begin + if Controls[i] is TEdit then + begin + if Trim(TEdit(Controls[i]).Text)<>'' then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TEdit(Controls[i]).Text) + else + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Null; + end else + if Controls[i] is TRichEdit then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TRichEdit(Controls[i]).Text; + end else + if Controls[i] is TCheckBox then + begin + if TCheckBox(Controls[i]).Checked=True then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=1 + else + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=0; + end else + if Controls[i] is TcxRichEdit then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TcxRichEdit(Controls[i]).Text; + end else + if Controls[i] is TMemo then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TMemo(Controls[i]).Text; + end else + if Controls[i] is TFTComboBox then + begin + if (TFTComboBox(Controls[i]).Text)<>'' then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TFTComboBox(Controls[i]).Item2); + end else + if Controls[i] is TComboBox then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TComboBox(Controls[i]).Text); + end else + if Controls[i] is TDateTimePicker then + begin + if TDateTimePicker(Controls[i]).ShowCheckbox then + begin + if TDateTimePicker(Controls[i]).Checked then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime + else + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=null; + end else + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=TDateTimePicker(Controls[i]).DateTime; + end else + if Controls[i] is TBtnEditA then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditA(Controls[i]).Text); + if (TBtnEditA(Controls[i]).Hint<>'') then + ADOQueryCmd.FieldByName(Trim(TBtnEditA(Controls[i]).Hint)).Value:=Trim(TBtnEditA(Controls[i]).TxtCode); + end else + if Controls[i] is TBtnEditC then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TBtnEditC(Controls[i]).Text); + if (TBtnEditC(Controls[i]).Hint<>'') then + begin + if Pos('/',TBtnEditC(Controls[i]).Hint)>0 then + begin + + end else + ADOQueryCmd.FieldByName(Trim(TBtnEditC(Controls[i]).Hint)).Value:=Trim(TBtnEditC(Controls[i]).TxtCode); + end; + end else + if Controls[i] is TcxTimeEdit then + begin + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TcxTimeEdit(Controls[i]).Text); + end else + if Controls[i] is TcxButtonEdit then + begin + if (TcxButtonEdit(Controls[i]).BeepOnEnter=True) or (TcxButtonEdit(Controls[i]).ParentShowHint=True) then + ADOQueryCmd.FieldByName(Controls[i].Name).Value:=Trim(TcxButtonEdit(Controls[i]).Text); + if TcxButtonEdit(Controls[i]).ParentShowHint=False then + begin + MCode:=Copy(Trim(Controls[i].Name),1,Length(Trim(Controls[i].Name))-4); + ADOQueryCmd.FieldByName(MCode).Value:=Trim(TcxButtonEdit(Controls[i]).Hint); + end; + end; + end; + end; + end; +end; +procedure SSetsavedata10(ADOQueryCmd:TADOQuery;MyTable:string; + Myparent:TWinControl;MyTag:integer); +var + i:Integer; + FFName:string; +begin + with Myparent do + begin + for i:=0 to ControlCount-1 do + begin + FFName:=Trim(Copy(Controls[i].Name,1,(Length(Controls[i].Name)-1))); + if Controls[i].Tag=MyTag then + begin + if Controls[i] is TEdit then + begin + if Trim(TEdit(Controls[i]).Text)<>'' then + ADOQueryCmd.FieldByName(FFName).Value:=Trim(TEdit(Controls[i]).Text); + end else + if Controls[i] is TRichEdit then + begin + ADOQueryCmd.FieldByName(FFName).Value:=TRichEdit(Controls[i]).Text; + end else + if Controls[i] is TMemo then + begin + ADOQueryCmd.FieldByName(FFName).Value:=TMemo(Controls[i]).Text; + end; + if Controls[i] is TFTComboBox then + begin + if (TFTComboBox(Controls[i]).Text)<>'' then + ADOQueryCmd.FieldByName(FFName).Value:=Trim(TFTComboBox(Controls[i]).Item2); + end else + if Controls[i] is TComboBox then + begin + ADOQueryCmd.FieldByName(FFName).Value:=Trim(TComboBox(Controls[i]).Text); + end else + if Controls[i] is TDateTimePicker then + begin + if TDateTimePicker(Controls[i]).ShowCheckbox then + begin + if TDateTimePicker(Controls[i]).Checked then + ADOQueryCmd.FieldByName(FFName).Value:=TDateTimePicker(Controls[i]).DateTime; + end else + ADOQueryCmd.FieldByName(FFName).Value:=TDateTimePicker(Controls[i]).DateTime; + end else + if Controls[i] is TBtnEditA then + begin + ADOQueryCmd.FieldByName(FFName).Value:=Trim(TBtnEditA(Controls[i]).TxtCode); + end else + if Controls[i] is TBtnEditC then + begin + ADOQueryCmd.FieldByName(FFName).Value:=Trim(TBtnEditC(Controls[i]).TxtCode); + end; + end; + end; + end; +end; +///////////////////////////////////////////////////// + //函数功能:初始化窗口数据 +///////////////////////////////////////////////////// +procedure SSetWinData(ADOQueryTmp:TADOQuery;mParent:TWinControl); +var + i,idx:integer; + mfield:string; + ma:TA; +begin + with ADOQueryTmp do + begin + if isEmpty then exit; + with mParent do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TLabel then continue; + if Controls[i].Tag >=999 then continue; + mfield:=Controls[i].Name; + + /////////////////////////// + //EDIT + if Controls[i] is TEdit then + begin + { if Trim(Controls[i].Hint)='数值' then + continue + else } + if Trim(fieldByName(mfield).AsString)<>'' then + TEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); + end else + if Controls[i] is TRichEdit then + begin + { if Trim(Controls[i].Hint)='数值' then + continue + else } + if Trim(fieldByName(mfield).AsString)<>'' then + TRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); + end + //ftcombobox + else if Controls[i] is TFTComboBox then + begin + if Controls[i].Tag =99 then + begin + idx:=TftComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); + TComboBox(Controls[i]).ItemIndex:=idx; + end + else + begin + idx:=TftComboBox(Controls[i]).IndexOfItem2(trim(fieldByName(mfield).AsString)); + TComboBox(Controls[i]).ItemIndex:=idx; + end; + end + //combobox + else if Controls[i] is TComboBox then + begin + if TComboBox(Controls[i]).Items.Count>0 then + begin + //idx:=getCombIdx(TComboBox(Controls[i]),i,trim(fieldByName(mfield).AsString)); + idx:=TComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); + end + else + idx:=-1; + TComboBox(Controls[i]).ItemIndex:=idx; + end + else if Controls[i] is TBtnEditA then + begin + if TBtnEditA(Controls[i]).Tag=1 then + begin + TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); + TBtnEditA(Controls[i]).text:= trim(fieldByName(mfield+'Name').AsString); + end + else + begin + TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); + TBtnEditA(Controls[i]).text:= trim(fieldByName(mfield).AsString); + end; + end + else if Controls[i] is TBtnEditC then + begin + TBtnEditC(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); + TBtnEditC(Controls[i]).text:= trim(fieldByName(mfield+'Name').AsString); + end + else if Controls[i] is TDateTimePicker then + begin + if IsEmpty or fieldByName(mfield).IsNull then + begin + if TDateTimePicker(Controls[i]).Checked then + TDateTimePicker(Controls[i]).Date:=strToDate('1990-01-01'); + end + else + TDateTimePicker(Controls[i]).Date:=fieldByName(mfield).AsDateTime; + end + else if Controls[i] is Tmemo then + begin + Tmemo(Controls[i]).Text :=trim(fieldByName(mfield).AsString); + end + else if Controls[i] is TcxRichEdit then + begin + TcxRichEdit(Controls[i]).Text :=trim(fieldByName(mfield).AsString); + end + else if Controls[i] is TcxDateEdit then + begin + if not IsEmpty and not fieldByName(mfield).IsNull then + TcxDateEdit(Controls[i]).text :=fieldByName(mfield).AsString; + end + else if Controls[i] is TcxTimeEdit then + begin + if not IsEmpty and ( fieldByName(mfield).AsString<>'') then + TcxTimeEdit(Controls[i]).text :=fieldByName(mfield).AsString; + end + else if Controls[i] is TcxCurrencyEdit then + begin + TcxCurrencyEdit(Controls[i]).Text:=fieldByName(mfield).AsString; + end + else if Controls[i] is TcheckBox then + begin + TcheckBox(Controls[i]).Checked:=fieldByName(mfield).asBoolean; + end; + end; // end for + end; // end with + end; //end for with + +end; +procedure SInitComBoxByTvColumns(cb:TComboBox; + Tv1:TcxGridDBTableView; + ColumnTag:Integer; + TowFlag:Boolean; + emptyFlag:Boolean); +var + A:TA; + i:Integer; +begin + cb.Items.Clear ; + for i:=0 to Tv1.ColumnCount-1 do + begin + if Tv1.Columns[i].Tag=ColumnTag then + begin + if TowFlag=False then + begin + cb.Items.Add(trim(Tv1.Columns[i].Caption)); + end else + begin + A:=TA.Create(Nil); + A.s:=Trim(Tv1.Columns[i].DataBinding.FieldName); + cb.Items.AddObject(Trim(Tv1.Columns[i].Caption),TObject(A)); + end; + end; + end; + if emptyFlag=False then cb.Items.Add(''); + if cb.Items.Count >0 then cb.ItemIndex :=0; +end; +procedure SSetWinData30(ADOQueryTmp:TADOQuery;mParent:TWinControl;FTag:Integer); +var + i,idx:integer; + mfield:string; + ma:TA; +begin + with ADOQueryTmp do + begin + if isEmpty then exit; + with mParent do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TLabel then continue; + if Controls[i].Tag<>FTag then continue; + mfield:=Controls[i].Name; + + /////////////////////////// + //EDIT + if Controls[i] is TEdit then + begin + if Trim(fieldByName(mfield).AsString)<>'' then + TEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); + end + //ftcombobox + else if Controls[i] is TFTComboBox then + begin + idx:=TftComboBox(Controls[i]).IndexOfItem2(trim(fieldByName(mfield).AsString)); + TComboBox(Controls[i]).ItemIndex:=idx; + end + else if Controls[i] is TRichEdit then + begin + if Trim(fieldByName(mfield).AsString)<>'' then + TRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); + end + else if Controls[i] is TcxRichEdit then + begin + if Trim(fieldByName(mfield).AsString)<>'' then + TcxRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); + end + //combobox + else if Controls[i] is TComboBox then + begin + if TComboBox(Controls[i]).Items.Count>0 then + begin + idx:=TComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); + end + else + idx:=-1; + TComboBox(Controls[i]).ItemIndex:=idx; + end + else if Controls[i] is TBtnEditA then + begin + TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); + if Trim(TBtnEditA(Controls[i]).Hint)<>'' then + TBtnEditA(Controls[i]).text:= trim(fieldByName(Trim(TBtnEditA(Controls[i]).Hint)).AsString); + end else if Controls[i] is TBtnEditC then + begin + TBtnEditC(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); + if Trim(TBtnEditC(Controls[i]).Hint)<>'' then + TBtnEditC(Controls[i]).text:= trim(fieldByName(Trim(TBtnEditC(Controls[i]).Hint)).AsString); + end + else if Controls[i] is TDateTimePicker then + begin + if IsEmpty or fieldByName(mfield).IsNull then + begin + if TDateTimePicker(Controls[i]).Checked then + TDateTimePicker(Controls[i]).Date:=strToDate('1990-01-01'); + end + else + TDateTimePicker(Controls[i]).DateTime:=fieldByName(mfield).AsDateTime; + end + else if Controls[i] is Tmemo then + begin + Tmemo(Controls[i]).Text :=trim(fieldByName(mfield).AsString); + end + else if Controls[i] is TcxDateEdit then + begin + if not IsEmpty and not fieldByName(mfield).IsNull then + TcxDateEdit(Controls[i]).text :=fieldByName(mfield).AsString; + end + else if Controls[i] is TcxTimeEdit then + begin + if not IsEmpty and ( fieldByName(mfield).AsString<>'') then + TcxTimeEdit(Controls[i]).text :=fieldByName(mfield).AsString; + end + else if Controls[i] is TcxCurrencyEdit then + begin + TcxCurrencyEdit(Controls[i]).Text:=fieldByName(mfield).AsString; + end + else if Controls[i] is TcheckBox then + begin + TcheckBox(Controls[i]).Checked:=fieldByName(mfield).asBoolean; + end else if Controls[i] is TRichEdit then + begin + TRichEdit(Controls[i]).Text:=fieldbyname(mfield).AsString; + end; + end; // end for + end; // end with + end; //end for with + +end; +procedure SClearData(mParent:TWinControl;FTag:Integer); +var + i,idx:integer; +begin + with mParent do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TLabel then continue; + if Controls[i].Tag<>FTag then continue; + if Controls[i] is TEdit then + begin + TEdit(Controls[i]).Text:=''; + end + else if Controls[i] is TRichEdit then + begin + TRichEdit(Controls[i]).Text:=''; + end + else if Controls[i] is TcxRichEdit then + begin + TcxRichEdit(Controls[i]).Text:=''; + end + else if Controls[i] is TBtnEditC then + begin + TBtnEditC(Controls[i]).Text:=''; + TBtnEditC(Controls[i]).TxtCode:=''; + end + else if Controls[i] is TBtnEditA then + begin + TBtnEditA(Controls[i]).Text:=''; + TBtnEditA(Controls[i]).TxtCode:=''; + end + else if Controls[i] is TComboBox then + begin + idx:=-1; + TComboBox(Controls[i]).ItemIndex:=idx; + end + end; + end; +end; +procedure SCSHData(ADOQueryTmp:TADOQuery;mParent:TWinControl;FTag:Integer); +var + i,idx:integer; + mfield,mfieldCode:string; + ma:TA; +begin + with ADOQueryTmp do + begin + if isEmpty then exit; + with mParent do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TLabel then continue; + if Controls[i].Tag<>FTag then continue; + mfield:=Controls[i].Name; + + /////////////////////////// + //EDIT + if Controls[i] is TEdit then + begin + if Trim(fieldByName(mfield).AsString)<>'' then + TEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); + end + //ftcombobox + else if Controls[i] is TFTComboBox then + begin + idx:=TftComboBox(Controls[i]).IndexOfItem2(trim(fieldByName(mfield).AsString)); + TComboBox(Controls[i]).ItemIndex:=idx; + end + else if Controls[i] is TRichEdit then + begin + if Trim(fieldByName(mfield).AsString)<>'' then + TRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); + end + else if Controls[i] is TcxRichEdit then + begin + if Trim(fieldByName(mfield).AsString)<>'' then + TcxRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); + end + //combobox + else if Controls[i] is TComboBox then + begin + if TComboBox(Controls[i]).Items.Count>0 then + begin + idx:=TComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); + end + else + idx:=-1; + TComboBox(Controls[i]).ItemIndex:=idx; + end + else if Controls[i] is TBtnEditA then + begin + TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); + if Trim(TBtnEditA(Controls[i]).Hint)<>'' then + TBtnEditA(Controls[i]).text:= trim(fieldByName(Trim(TBtnEditA(Controls[i]).Hint)).AsString); + end else if Controls[i] is TBtnEditC then + begin + TBtnEditC(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); + if Trim(TBtnEditC(Controls[i]).Hint)<>'' then + TBtnEditC(Controls[i]).text:= trim(fieldByName(Trim(TBtnEditC(Controls[i]).Hint)).AsString); + end + else if Controls[i] is TDateTimePicker then + begin + if Trim(fieldByName(mfield).AsString)='' then + begin + TDateTimePicker(Controls[i]).Checked:=False; + end + else + TDateTimePicker(Controls[i]).DateTime:=fieldByName(mfield).AsDateTime; + end + else if Controls[i] is Tmemo then + begin + Tmemo(Controls[i]).Text :=trim(fieldByName(mfield).AsString); + end + else if Controls[i] is TcxDateEdit then + begin + if not IsEmpty and not fieldByName(mfield).IsNull then + TcxDateEdit(Controls[i]).text :=fieldByName(mfield).AsString; + end + else if Controls[i] is TcxTimeEdit then + begin + if not IsEmpty and ( fieldByName(mfield).AsString<>'') then + TcxTimeEdit(Controls[i]).text :=fieldByName(mfield).AsString; + end + else if Controls[i] is TcxCurrencyEdit then + begin + TcxCurrencyEdit(Controls[i]).Text:=fieldByName(mfield).AsString; + end + else if Controls[i] is TcheckBox then + begin + TcheckBox(Controls[i]).Checked:=fieldByName(mfield).asBoolean; + end + else if Controls[i] is TcxButtonEdit then + begin + TcxButtonEdit(Controls[i]).Text:=Trim(fieldbyname(mfield).AsString); + if TcxButtonEdit(Controls[i]).ParentShowHint=False then + begin + mfieldCode:=Trim(Copy(mfield,1,Length(mfield)-4)); + TcxButtonEdit(Controls[i]).Hint:=Trim(fieldbyname(mfieldCode).AsString); + end; + + end; + end; // end for + end; // end with + end; //end for with + +end; +procedure SCSHDataNew(ADOQueryTmp:TADOQuery;mParent:TWinControl;FTag:Integer); +var + i,idx:integer; + mfield,mfieldCode:string; + ma:TA; +begin + with ADOQueryTmp do + begin + if isEmpty then exit; + with mParent do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TLabel then continue; + if Controls[i].Tag<>FTag then continue; + mfield:=Controls[i].Name; + + /////////////////////////// + //EDIT + if Controls[i] is TEdit then + begin + if Trim(fieldByName(mfield).AsString)<>'' then + TEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString) + else + TEdit(Controls[i]).Text:=''; + end + //ftcombobox + else if Controls[i] is TFTComboBox then + begin + idx:=TftComboBox(Controls[i]).IndexOfItem2(trim(fieldByName(mfield).AsString)); + TComboBox(Controls[i]).ItemIndex:=idx; + end + else if Controls[i] is TRichEdit then + begin + if Trim(fieldByName(mfield).AsString)<>'' then + TRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); + end + else if Controls[i] is TcxRichEdit then + begin + if Trim(fieldByName(mfield).AsString)<>'' then + TcxRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); + end + //combobox + else if Controls[i] is TComboBox then + begin + if TComboBox(Controls[i]).Items.Count>0 then + begin + idx:=TComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); + end + else + idx:=-1; + TComboBox(Controls[i]).ItemIndex:=idx; + end + else if Controls[i] is TBtnEditA then + begin + TBtnEditA(Controls[i]).Text := trim(fieldByName(mfield).AsString); + if Trim(TBtnEditA(Controls[i]).Hint)<>'' then + TBtnEditA(Controls[i]).TxtCode:= trim(fieldByName(Trim(TBtnEditA(Controls[i]).Hint)).AsString); + end else if Controls[i] is TBtnEditC then + begin + TBtnEditC(Controls[i]).Text := trim(fieldByName(mfield).AsString); + if Trim(TBtnEditC(Controls[i]).Hint)<>'' then + begin + if Pos('/',TBtnEditC(Controls[i]).Hint)>0 then + begin + + end else + TBtnEditC(Controls[i]).TxtCode:= trim(fieldByName(Trim(TBtnEditC(Controls[i]).Hint)).AsString); + end; + end + else if Controls[i] is TDateTimePicker then + begin + if Trim(fieldByName(mfield).AsString)='' then + begin + TDateTimePicker(Controls[i]).Checked:=False; + end + else + TDateTimePicker(Controls[i]).DateTime:=fieldByName(mfield).AsDateTime; + end + else if Controls[i] is Tmemo then + begin + Tmemo(Controls[i]).Text :=trim(fieldByName(mfield).AsString); + end + else if Controls[i] is TcxDateEdit then + begin + if not IsEmpty and not fieldByName(mfield).IsNull then + TcxDateEdit(Controls[i]).text :=fieldByName(mfield).AsString; + end + else if Controls[i] is TcxTimeEdit then + begin + if not IsEmpty and ( fieldByName(mfield).AsString<>'') then + TcxTimeEdit(Controls[i]).text :=fieldByName(mfield).AsString; + end + else if Controls[i] is TcxCurrencyEdit then + begin + TcxCurrencyEdit(Controls[i]).Text:=fieldByName(mfield).AsString; + end + else if Controls[i] is TcheckBox then + begin + if FieldByName(mfield).Value=null then + TcheckBox(Controls[i]).Checked:=False + else + TcheckBox(Controls[i]).Checked:=fieldByName(mfield).asBoolean; + end else if Controls[i] is TcxButtonEdit then + begin + TcxButtonEdit(Controls[i]).Text:=Trim(fieldbyname(mfield).AsString); + if TcxButtonEdit(Controls[i]).ParentShowHint=False then + begin + mfieldCode:=Trim(Copy(mfield,1,Length(mfield)-4)); + TcxButtonEdit(Controls[i]).Hint:=Trim(fieldbyname(mfieldCode).AsString); + end; + + end; + end; // end for + end; // end with + end; //end for with + +end; +procedure SCSHDataCDS(CDS_Main:TClientDataSet;mParent:TWinControl;FTag:Integer); +var + i,idx:integer; + mfield,mfieldCode:string; + ma:TA; +begin + with CDS_Main do + begin + if isEmpty then exit; + with mParent do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TLabel then continue; + if Controls[i].Tag<>FTag then continue; + mfield:=Controls[i].Name; + + /////////////////////////// + //EDIT + if Controls[i] is TEdit then + begin + if Trim(fieldByName(mfield).AsString)<>'' then + TEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); + end + //ftcombobox + else if Controls[i] is TFTComboBox then + begin + idx:=TftComboBox(Controls[i]).IndexOfItem2(trim(fieldByName(mfield).AsString)); + TComboBox(Controls[i]).ItemIndex:=idx; + end + else if Controls[i] is TRichEdit then + begin + if Trim(fieldByName(mfield).AsString)<>'' then + TRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); + end + else if Controls[i] is TcxRichEdit then + begin + if Trim(fieldByName(mfield).AsString)<>'' then + TcxRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); + end + //combobox + else if Controls[i] is TComboBox then + begin + if TComboBox(Controls[i]).Items.Count>0 then + begin + idx:=TComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); + end + else + idx:=-1; + TComboBox(Controls[i]).ItemIndex:=idx; + end + else if Controls[i] is TBtnEditA then + begin + TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); + if Trim(TBtnEditA(Controls[i]).Hint)<>'' then + TBtnEditA(Controls[i]).text:= trim(fieldByName(Trim(TBtnEditA(Controls[i]).Hint)).AsString); + end else if Controls[i] is TBtnEditC then + begin + TBtnEditC(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); + if Trim(TBtnEditC(Controls[i]).Hint)<>'' then + TBtnEditC(Controls[i]).text:= trim(fieldByName(Trim(TBtnEditC(Controls[i]).Hint)).AsString); + end + else if Controls[i] is TDateTimePicker then + begin + if Trim(fieldByName(mfield).AsString)='' then + begin + TDateTimePicker(Controls[i]).Checked:=False; + end + else + TDateTimePicker(Controls[i]).DateTime:=fieldByName(mfield).AsDateTime; + end + else if Controls[i] is Tmemo then + begin + Tmemo(Controls[i]).Text :=trim(fieldByName(mfield).AsString); + end + else if Controls[i] is TcxDateEdit then + begin + if not IsEmpty and not fieldByName(mfield).IsNull then + TcxDateEdit(Controls[i]).text :=fieldByName(mfield).AsString; + end + else if Controls[i] is TcxTimeEdit then + begin + if not IsEmpty and ( fieldByName(mfield).AsString<>'') then + TcxTimeEdit(Controls[i]).text :=fieldByName(mfield).AsString; + end + else if Controls[i] is TcxCurrencyEdit then + begin + TcxCurrencyEdit(Controls[i]).Text:=fieldByName(mfield).AsString; + end + else if Controls[i] is TcheckBox then + begin + TcheckBox(Controls[i]).Checked:=fieldByName(mfield).asBoolean; + end else if Controls[i] is TcxButtonEdit then + begin + TcxButtonEdit(Controls[i]).Text:=Trim(fieldbyname(mfield).AsString); + if TcxButtonEdit(Controls[i]).ParentShowHint=False then + begin + mfieldCode:=Trim(Copy(mfield,1,Length(mfield)-4)); + TcxButtonEdit(Controls[i]).Hint:=Trim(fieldbyname(mfieldCode).AsString); + end; + + end; + end; // end for + end; // end with + end; //end for with + +end; +procedure SCSHDataWTag(ADOQueryTmp:TADOQuery;mParent:TWinControl); +var + i,idx:integer; + mfield,mfieldCode:string; + ma:TA; +begin + with ADOQueryTmp do + begin + if isEmpty then exit; + with mParent do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TLabel then continue; + //if Controls[i].Tag<>FTag then continue; + mfield:=Controls[i].Name; + + /////////////////////////// + //EDIT + if Controls[i] is TEdit then + begin + if Trim(fieldByName(mfield).AsString)<>'' then + TEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); + end + //ftcombobox + else if Controls[i] is TFTComboBox then + begin + idx:=TftComboBox(Controls[i]).IndexOfItem2(trim(fieldByName(mfield).AsString)); + TComboBox(Controls[i]).ItemIndex:=idx; + end + else if Controls[i] is TRichEdit then + begin + if Trim(fieldByName(mfield).AsString)<>'' then + TRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); + end + else if Controls[i] is TcxRichEdit then + begin + if Trim(fieldByName(mfield).AsString)<>'' then + TcxRichEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); + end + //combobox + else if Controls[i] is TComboBox then + begin + if TComboBox(Controls[i]).Items.Count>0 then + begin + idx:=TComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); + end + else + idx:=-1; + TComboBox(Controls[i]).ItemIndex:=idx; + end + else if Controls[i] is TBtnEditA then + begin + TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); + if Trim(TBtnEditA(Controls[i]).Hint)<>'' then + TBtnEditA(Controls[i]).text:= trim(fieldByName(Trim(TBtnEditA(Controls[i]).Hint)).AsString); + end else if Controls[i] is TBtnEditC then + begin + TBtnEditC(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); + if Trim(TBtnEditC(Controls[i]).Hint)<>'' then + TBtnEditC(Controls[i]).text:= trim(fieldByName(Trim(TBtnEditC(Controls[i]).Hint)).AsString); + end + else if Controls[i] is TDateTimePicker then + begin + if Trim(fieldByName(mfield).AsString)='' then + begin + TDateTimePicker(Controls[i]).Checked:=False; + end + else + TDateTimePicker(Controls[i]).DateTime:=fieldByName(mfield).AsDateTime; + end + else if Controls[i] is Tmemo then + begin + Tmemo(Controls[i]).Text :=trim(fieldByName(mfield).AsString); + end + else if Controls[i] is TcxDateEdit then + begin + if not IsEmpty and not fieldByName(mfield).IsNull then + TcxDateEdit(Controls[i]).text :=fieldByName(mfield).AsString; + end + else if Controls[i] is TcxTimeEdit then + begin + if not IsEmpty and ( fieldByName(mfield).AsString<>'') then + TcxTimeEdit(Controls[i]).text :=fieldByName(mfield).AsString; + end + else if Controls[i] is TcxCurrencyEdit then + begin + TcxCurrencyEdit(Controls[i]).Text:=fieldByName(mfield).AsString; + end + else if Controls[i] is TcheckBox then + begin + TcheckBox(Controls[i]).Checked:=fieldByName(mfield).asBoolean; + end else if Controls[i] is TcxButtonEdit then + begin + TcxButtonEdit(Controls[i]).Text:=Trim(fieldbyname(mfield).AsString); + if TcxButtonEdit(Controls[i]).ParentShowHint=False then + begin + mfieldCode:=Trim(Copy(mfield,1,Length(mfield)-4)); + TcxButtonEdit(Controls[i]).Hint:=Trim(fieldbyname(mfieldCode).AsString); + end; + + end; + end; // end for + end; // end with + end; //end for with + +end; + +procedure SSetWinData10(ADOQueryTmp:TADOQuery;mParent:TWinControl); +var + i,idx:integer; + mfield:string; + ma:TA; +begin + with ADOQueryTmp do + begin + if isEmpty then exit; + with mParent do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TLabel then continue; + if Controls[i].Tag >=999 then continue; + //mfield:=Copy(Trim(Controls[i].Name),1,(Length(Trim(Controls[i].Name))-1)); + mfield:=Trim(Controls[i].Name); + if Controls[i] is TEdit then + begin + if Trim(fieldByName(mfield).AsString)<>'' then + TEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); + end + //ftcombobox + else if Controls[i] is TFTComboBox then + begin + if Controls[i].Tag =99 then + begin + idx:=TftComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); + TComboBox(Controls[i]).ItemIndex:=idx; + end + else + begin + idx:=TftComboBox(Controls[i]).IndexOfItem2(trim(fieldByName(mfield).AsString)); + TComboBox(Controls[i]).ItemIndex:=idx; + end; + end + //combobox + else if Controls[i] is TComboBox then + begin + if TComboBox(Controls[i]).Items.Count>0 then + begin + idx:=TComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); + end + else + idx:=-1; + TComboBox(Controls[i]).ItemIndex:=idx; + end + else if Controls[i] is TBtnEditA then + begin + if TBtnEditA(Controls[i]).Tag=1 then + begin + TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); + TBtnEditA(Controls[i]).text:= trim(fieldByName(mfield+'Name').AsString); + end + else + begin + TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); + TBtnEditA(Controls[i]).text:= trim(fieldByName(mfield).AsString); + end; + end + else if Controls[i] is TBtnEditC then + begin + TBtnEditC(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); + TBtnEditC(Controls[i]).text:= trim(fieldByName(mfield+'Name').AsString); + end + else if Controls[i] is TDateTimePicker then + begin + if IsEmpty or fieldByName(mfield).IsNull then + begin + if TDateTimePicker(Controls[i]).Checked then + TDateTimePicker(Controls[i]).Date:=strToDate('1990-01-01'); + end + else + TDateTimePicker(Controls[i]).Date:=fieldByName(mfield).AsDateTime; + end + else if Controls[i] is Tmemo then + begin + Tmemo(Controls[i]).Text :=trim(fieldByName(mfield).AsString); + end + else if Controls[i] is TcxDateEdit then + begin + if not IsEmpty and not fieldByName(mfield).IsNull then + TcxDateEdit(Controls[i]).text :=fieldByName(mfield).AsString; + end + else if Controls[i] is TcxTimeEdit then + begin + if not IsEmpty and ( fieldByName(mfield).AsString<>'') then + TcxTimeEdit(Controls[i]).text :=fieldByName(mfield).AsString; + end + else if Controls[i] is TcxCurrencyEdit then + begin + TcxCurrencyEdit(Controls[i]).Text:=fieldByName(mfield).AsString; + end + else if Controls[i] is TcheckBox then + begin + TcheckBox(Controls[i]).Checked:=fieldByName(mfield).asBoolean; + end + {else if Controls[i] is TcxLookupComboBox then + begin + TcxLookupComboBox(Controls[i]).EditValue:=fieldByName(mfield).AsString; + TcxLookupComboBox(Controls[i]).EditingText:=fieldByName(mfield+'name').AsString; + end}; + end; // end for + end; // end with + end; //end for with + +end; +procedure SSetWinData20(ADOQueryTmp:TADOQuery;mParent:TWinControl); +var + i,idx:integer; + mfield:string; + ma:TA; +begin + with ADOQueryTmp do + begin + if isEmpty then exit; + with mParent do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TLabel then continue; + if Controls[i].Tag >=999 then continue; + mfield:=Copy(Trim(Controls[i].Name),1,(Length(Trim(Controls[i].Name))-1)); + //mfield:=Trim(Controls[i].Name); + if Controls[i] is TEdit then + begin + if Trim(fieldByName(mfield).AsString)<>'' then + TEdit(Controls[i]).Text:=trim(fieldByName(mfield).AsString); + end + //ftcombobox + else if Controls[i] is TFTComboBox then + begin + if Controls[i].Tag =99 then + begin + idx:=TftComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); + TComboBox(Controls[i]).ItemIndex:=idx; + end + else + begin + idx:=TftComboBox(Controls[i]).IndexOfItem2(trim(fieldByName(mfield).AsString)); + TComboBox(Controls[i]).ItemIndex:=idx; + end; + end + //combobox + else if Controls[i] is TComboBox then + begin + if TComboBox(Controls[i]).Items.Count>0 then + begin + idx:=TComboBox(Controls[i]).Items.IndexOf(trim(fieldByName(mfield).AsString)); + end + else + idx:=-1; + TComboBox(Controls[i]).ItemIndex:=idx; + end + else if Controls[i] is TBtnEditA then + begin + if TBtnEditA(Controls[i]).Tag=1 then + begin + TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); + TBtnEditA(Controls[i]).text:= trim(fieldByName(mfield+'Name').AsString); + end + else + begin + TBtnEditA(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); + TBtnEditA(Controls[i]).text:= trim(fieldByName(mfield).AsString); + end; + end + else if Controls[i] is TBtnEditC then + begin + TBtnEditC(Controls[i]).TxtCode := trim(fieldByName(mfield).AsString); + TBtnEditC(Controls[i]).text:= trim(fieldByName(mfield+'Name').AsString); + end + else if Controls[i] is TDateTimePicker then + begin + if IsEmpty or fieldByName(mfield).IsNull then + begin + if TDateTimePicker(Controls[i]).Checked then + TDateTimePicker(Controls[i]).Date:=strToDate('1990-01-01'); + end + else + TDateTimePicker(Controls[i]).Date:=fieldByName(mfield).AsDateTime; + end + else if Controls[i] is Tmemo then + begin + Tmemo(Controls[i]).Text :=trim(fieldByName(mfield).AsString); + end + else if Controls[i] is TcxDateEdit then + begin + if not IsEmpty and not fieldByName(mfield).IsNull then + TcxDateEdit(Controls[i]).text :=fieldByName(mfield).AsString; + end + else if Controls[i] is TcxTimeEdit then + begin + if not IsEmpty and ( fieldByName(mfield).AsString<>'') then + TcxTimeEdit(Controls[i]).text :=fieldByName(mfield).AsString; + end + else if Controls[i] is TcxCurrencyEdit then + begin + TcxCurrencyEdit(Controls[i]).Text:=fieldByName(mfield).AsString; + end + else if Controls[i] is TcheckBox then + begin + TcheckBox(Controls[i]).Checked:=fieldByName(mfield).asBoolean; + end + {else if Controls[i] is TcxLookupComboBox then + begin + TcxLookupComboBox(Controls[i]).EditValue:=fieldByName(mfield).AsString; + TcxLookupComboBox(Controls[i]).EditingText:=fieldByName(mfield+'name').AsString; + end}; + end; // end for + end; // end with + end; //end for with + +end; + +////////////////////////////////////////////// +//////函数功能:根据SQL语句删除数据 +////////////////////////////////////////////// +function SDelData(ADOQueryCmd:TADOQuery;mDelStr:String):Boolean; +begin + try + result:=False; + with ADOQueryCmd do + begin + Close; + SQL.Clear; + SQL.Add(mDelStr); + ExecSQL; + end; + result:=True; + except + result:=False; + Application.MessageBox('数据删除失败!','提示',0); + end; +end; + + //////////////////////////////////////////// + ////************获取过滤条件***********///// +//////////////////////////////////////////// +function SGetFilters(TMPanel:TPanel;EquTag,LikeTag:Integer):string; +var + i,j,k:Integer; + fsj,fsj1:String; +begin + Result:=''; + with TMPanel do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TLabel then Continue; + if Controls[i] is TEdit then + begin + if Trim(TEdit(Controls[i]).Text)<>'' then + begin + if Controls[i].Tag=EquTag then + Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TEdit(Controls[i]).Text)) + else if Controls[i].Tag=LikeTag then + begin + j:=Pos(' ',Trim(TEdit(Controls[i]).Text)); + if j>0 then + begin + Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Copy(Trim(TEdit(Controls[i]).Text),1,j-1 )+'%'); + fsj1:=Copy(Trim(TEdit(Controls[i]).Text),j+1,Length(Trim(TEdit(Controls[i]).Text))); + while Trim(fsj1)<>'' do + begin + j:=Pos(' ',Trim(fsj1)); + if j>0 then + begin + Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Copy(Trim(fsj1),1,j-1 )+'%'); + fsj1:=Copy(Trim(fsj1),j+1,Length(Trim(fsj1))); + end else + begin + Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Trim(fsj1)+'%'); + fsj1:=''; + end; + end; + end else + Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Trim(TEdit(Controls[i]).Text)+'%'); + end; + end; + end else + if Controls[i] is TBtnEditA then + begin + if Trim(TBtnEditA(Controls[i]).Text)<>'' then + begin + if Controls[i].Tag=EquTag then + Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TBtnEditA(Controls[i]).TxtCode)) + else if Controls[i].Tag=LikeTag then + Result:=Result+'and '+Controls[i].Name+'Name'+' like '+QuotedStr('%'+Trim(TBtnEditA(Controls[i]).Text)+'%') + else if Controls[i].Tag=99 then + Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr(Trim(TBtnEditA(Controls[i]).TxtCode)+'%') + else if Controls[i].Tag=88 then + Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr(Trim(TBtnEditA(Controls[i]).Text)+'%'); + end; + end else + if Controls[i] is TBtnEditC then + begin + if Trim(TBtnEditC(Controls[i]).TxtCode)<>'' then + begin + if Controls[i].Tag=EquTag then + Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TBtnEditC(Controls[i]).TxtCode)) + else if Controls[i].Tag=LikeTag then + Result:=Result+'and '+Controls[i].Name+'Name'+' like '+QuotedStr('%'+Trim(TBtnEditC(Controls[i]).Text)+'%'); + end; + end else + if Controls[i] is TFTComboBox then + begin + if Trim(TFTComboBox(Controls[i]).Text)<>'' then + if Controls[i].Tag=EquTag then + Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TFTComboBox(Controls[i]).Item2)) + else if Controls[i].Tag=LikeTag then + Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Trim(TFTComboBox(Controls[i]).Item2)+'%'); + end else + if Controls[i] is TComboBox then + begin + if Trim(TComboBox(Controls[i]).Text)<>'' then + if Controls[i].Tag=EquTag then + Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TComboBox(Controls[i]).Text)) + else if Controls[i].Tag=LikeTag then + Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Trim(TComboBox(Controls[i]).Text)+'%'); + end; + end; + end; + if Trim(Result)<>'' then + Result:=Trim(RightBStr(Result,Length(Result)-4)); +end; + +function SGetFiltersHint(TMPanel:TPanel;EquTag,LikeTag:Integer):string; +var + i,j,k:Integer; + fsj,fsj1:String; +begin + Result:=''; + with TMPanel do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TLabel then Continue; + if Controls[i] is TEdit then + begin + if Trim(TEdit(Controls[i]).Text)<>'' then + begin + if Controls[i].Tag=EquTag then + Result:=Result+'and '+Controls[i].Hint+'='+QuotedStr(Trim(TEdit(Controls[i]).Text)) + else if Controls[i].Tag=LikeTag then + begin + j:=Pos(' ',Trim(TEdit(Controls[i]).Text)); + if j>0 then + begin + Result:=Result+'and '+Controls[i].Hint+' like '+QuotedStr('%'+Copy(Trim(TEdit(Controls[i]).Text),1,j-1 )+'%'); + fsj1:=Copy(Trim(TEdit(Controls[i]).Text),j+1,Length(Trim(TEdit(Controls[i]).Text))); + while Trim(fsj1)<>'' do + begin + j:=Pos(' ',Trim(fsj1)); + if j>0 then + begin + Result:=Result+'and '+Controls[i].Hint+' like '+QuotedStr('%'+Copy(Trim(fsj1),1,j-1 )+'%'); + fsj1:=Copy(Trim(fsj1),j+1,Length(Trim(fsj1))); + end else + begin + Result:=Result+'and '+Controls[i].Hint+' like '+QuotedStr('%'+Trim(fsj1)+'%'); + fsj1:=''; + end; + end; + end else + Result:=Result+'and '+Controls[i].Hint+' like '+QuotedStr('%'+Trim(TEdit(Controls[i]).Text)+'%'); + end; + end; + end; + end; + end; + if Trim(Result)<>'' then + Result:=Trim(RightBStr(Result,Length(Result)-4)); +end; + +function SGetFinds(TMPanel:TPanel;EquTag,LikeTag:Integer):string; +var + i:Integer; +begin + Result:=''; + with TMPanel do + begin + for i:=0 to ControlCount-1 do + begin + if Controls[i] is TLabel then Continue; + if Controls[i] is TEdit then + begin + if Trim(TEdit(Controls[i]).Text)<>'' then + begin + if Controls[i].Tag=EquTag then + Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TEdit(Controls[i]).Text)) + else if Controls[i].Tag=LikeTag then + Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Trim(TEdit(Controls[i]).Text)+'%'); + end; + end else + if Controls[i] is TBtnEditA then + begin + if Trim(TBtnEditA(Controls[i]).Text)<>'' then + begin + if Controls[i].Tag=EquTag then + Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TBtnEditA(Controls[i]).TxtCode)) + else if Controls[i].Tag=LikeTag then + Result:=Result+'and '+Controls[i].Name+'Name'+' like '+QuotedStr('%'+Trim(TBtnEditA(Controls[i]).Text)+'%'); + end; + end else + if Controls[i] is TBtnEditC then + begin + if Trim(TBtnEditC(Controls[i]).TxtCode)<>'' then + begin + if Controls[i].Tag=EquTag then + Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TBtnEditC(Controls[i]).TxtCode)) + else if Controls[i].Tag=LikeTag then + Result:=Result+'and '+Controls[i].Name+'Name'+' like '+QuotedStr('%'+Trim(TBtnEditC(Controls[i]).Text)+'%'); + end; + end else + if Controls[i] is TFTComboBox then + begin + if Trim(TFTComboBox(Controls[i]).Text)<>'' then + if Controls[i].Tag=EquTag then + Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TFTComboBox(Controls[i]).Item2)) + else if Controls[i].Tag=LikeTag then + Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Trim(TFTComboBox(Controls[i]).Item2)+'%'); + end else + if Controls[i] is TComboBox then + begin + if Trim(TComboBox(Controls[i]).Text)<>'' then + if Controls[i].Tag=EquTag then + Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TComboBox(Controls[i]).Text)) + else if Controls[i].Tag=LikeTag then + Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Trim(TComboBox(Controls[i]).Text)+'%'); + end; + end; + end; +end; + +//////////////////////////////////////////////////////////// + //公用过滤函数 +//////////////////////////////////////////////////////////// +procedure SDofilter(ADOQry:TADOQuery;FilterStr:string); +begin + try + ADOQry.DisableControls; + with ADOQry do + begin + if Trim(FilterStr)='' then + begin + Filtered:=False; + end else + begin + Filtered:=False; + Filter:=FilterStr; + Filtered:=True; + end; + end; + finally + ADOQry.EnableControls; + end; +end; +procedure SDofilter10(cds_Main:TClientDataSet;FilterStr:string); +begin + try + cds_Main.DisableControls; + with cds_Main do + begin + if Trim(FilterStr)='' then + begin + Filtered:=False; + end else + begin + Filtered:=False; + Filter:=FilterStr; + Filtered:=True; + end; + end; + finally + cds_Main.EnableControls; + end; +end; +function SGetMaxNo(MyAdoQuery:TADOQuery;MyTable:string;MyField:string;MyFlag:string):String; +var + fsj:string; + i:Integer; +begin + try + result:=''; + fsj:=Trim(Formatdatetime('yyyyMMdd',Now)); + i:=Length(Trim(MyFlag)); + with MyAdoQuery do + begin + Close; + SQL.Clear; + sql.Add('select Max('+MyField+') MaxNo from '+MyTable); + SQL.Add('where '+MyField+' like '+QuotedStr('%'+fsj+'%')); + Open; + end; + with MyAdoQuery do + begin + if Trim(fieldbyname('MaxNo').AsString)='' then + begin + Result:=Trim(MyFlag)+Trim(Formatdatetime('yyyyMMdd',Now))+'1001'; + Exit; + end; + end; + {fsj:=Trim(MyAdoQuery.fieldbyname('MaxNo').AsString); + + + with MyAdoQuery1 do + begin + Close; + SQL.Clear; + SQL.Add('select Max('+MyField+') MaxNo from '+MyTable); + SQL.Add('where '+MyField+' like '+QuotedStr('%'+copy(fsj,3,8)+'%')); + Open; + ShowMessage(copy(fsj,3,8)); + if Trim(fieldbyname('MaxNo').AsString)='' then + begin + Result:=Trim(MyFlag)+Trim(Formatdatetime('yyyyMMdd',Now))+'1001'; + Exit; + end; + end;} + fsj:=Trim(MyAdoQuery.fieldbyname('MaxNo').AsString); + result:=Trim(MyFlag)+Trim(Formatdatetime('yyyyMMdd',Now))+IntToStr(StrtoInt(Copy(fsj,i+9,Length(fsj)-i-8))+1); + + except + Result:=''; + Application.MessageBox(PChar('字段取值MaxNo有误,查看表<'+Trim(MyTable)+'>及表字段<'+MyField+'>'),'提示',0); + end; +end; +procedure SCreateCDS20(SADOQry:TADOQuery; mClientDataset:TclientDataSet ); +var + i:integer; + mfieldName:string; + mSize:integer; +begin + mfieldName:=''; + mClientDataset.FieldDefs.Clear; + with SADOQry do + begin + for i:=0 to fieldCount-1 do // + begin + if (Fields[i].DataType=ftString) and (Fields[i].Size=0) then + begin + msize:=1; + end + else + msize:=Fields[i].Size; + mfieldName:=trim(fields[i].FieldName); + mClientDataset.FieldDefs.Add(mfieldName, + Fields[i].DataType,msize); + + end; + end; + mClientDataset.FieldDefs.Add('Sflag',ftString,1); + mClientDataset.FieldDefs.Add('Sindex',ftInteger,0); + mClientDataset.FieldDefs.Add('Ssel',ftBoolean,0); + mClientDataset.FieldDefs.Add('SDefNote',ftString,10); + mClientDataset.Close; + mClientDataset.CreateDataSet; +end; +procedure SCreateCDSYS(SADOQry:TADOQuery; mClientDataset:TclientDataSet ); +var + i:integer; + mfieldName:string; + mSize:integer; +begin + mfieldName:=''; + mClientDataset.FieldDefs.Clear; + with SADOQry do + begin + for i:=0 to fieldCount-1 do // + begin + if (Fields[i].DataType=ftString) and (Fields[i].Size=0) then + begin + msize:=1; + end + else + msize:=Fields[i].Size; + mfieldName:=trim(fields[i].FieldName); + mClientDataset.FieldDefs.Add(mfieldName, + Fields[i].DataType,msize); + + end; + end; + mClientDataset.Close; + mClientDataset.CreateDataSet; +end; +procedure SCreateCDSOnly(SADOQry:TADOQuery; mClientDataset:TclientDataSet ); +var + i:integer; + mfieldName:string; + mSize:integer; +begin + mfieldName:=''; + mClientDataset.FieldDefs.Clear; + with SADOQry do + begin + for i:=0 to fieldCount-1 do // + begin + if (Fields[i].DataType=ftString) and (Fields[i].Size=0) then + begin + msize:=1; + end + else + msize:=Fields[i].Size; + mfieldName:=trim(fields[i].FieldName); + mClientDataset.FieldDefs.Add(mfieldName, + Fields[i].DataType,msize); + + end; + end; + mClientDataset.Close; + mClientDataset.CreateDataSet; +end; +procedure SInitCDSData20(fromADO:TADOQuery;toCDS:TclientDataSet); +var + i:integer; + k:integer; +begin + if fromADO.IsEmpty then exit; + fromADO.first; + K:=1; + try + toCDS.DisableControls; + toCDS.Filtered:=false; + while not fromADO.Eof do + begin + with toCDS do + begin + Append; + for i:=0 to fromADO.FieldCount-1 do + begin + fields[i].value:=fromADO.Fields[i].Value; + end; + fieldByName('Sflag').AsString :='1'; + fieldByName('Sindex').value :=k; + fieldByName('Ssel').value :=false; + fieldByName('SDefNote').value :=''; + inc(k); + Post; + end; + fromADO.Next; + end; + if not toCDS.IsEmpty then + begin + toCDS.First ; + end; + finally + toCDS.EnableControls; + end; +end; +procedure SInitCDSDataYS(fromADO:TADOQuery;toCDS:TclientDataSet); +var + i:integer; + k:integer; +begin + if fromADO.IsEmpty then exit; + fromADO.first; + K:=1; + try + toCDS.DisableControls; + toCDS.Filtered:=false; + + while not fromADO.Eof do + begin + with toCDS do + begin + Append; + for i:=0 to fromADO.FieldCount-1 do + begin + fields[i].value:=fromADO.Fields[i].Value ; + end; + inc(k); + Post; + end; + fromADO.Next; + end; + if not toCDS.IsEmpty then + begin + toCDS.First ; + end; + finally + toCDS.EnableControls; + end; +end; +procedure SInitCDSDataOnly(fromADO:TADOQuery;toCDS:TclientDataSet); +var + i:integer; + k:integer; +begin + if fromADO.IsEmpty then exit; + fromADO.first; + K:=1; + try + toCDS.DisableControls; + toCDS.Filtered:=false; + + while not fromADO.Eof do + begin + with toCDS do + begin + Append; + for i:=0 to fromADO.FieldCount-1 do + begin + fields[i].value:=fromADO.Fields[i].Value ; + end; + inc(k); + Post; + end; + fromADO.Next; + end; + if not toCDS.IsEmpty then + begin + toCDS.First ; + end; + finally + toCDS.EnableControls; + end; +end; +procedure SInitFtComBoxBySql(ADOQueryTmp:TADOQuery; + cb: TFtComboBox;FlagType:string; + Boxtype:integer; + showMsg:string; + emptyFlag:Boolean; + mSql:string + ); +begin + with ADOQueryTmp do + begin + close; + sql.clear; + sql.Add(mSql); + Open; + if isEmpty then + begin + application.MessageBox(pChar(showMsg),'',0); + exit; + end; + cb.Clear; + while not EOF do + begin + if Boxtype=0 then + begin + cb.Items.Add(trim(fieldByName('Name').AsString)); + end + else + begin + cb.AddItem2(trim(fieldByName('Name').AsString),nil,trim(fieldByName('code').AsString)); + end; + next; + end; + + if not emptyFlag then + cb.Items.Add(''); + + if emptyFlag and (cb.Items.Count >0) then + cb.ItemIndex :=0; + end; +end; +procedure SInitComBoxBySql(ADOQueryTmp:TADOQuery; + cb: TComboBox; + emptyFlag:Boolean; + mSql:string + ); +begin + cb.Clear; + with ADOQueryTmp do + begin + close; + sql.clear; + sql.Add(mSql); + Open; + if isEmpty then + begin + exit; + end; + while not EOF do + begin + cb.Items.Add(trim(fieldByName('Name').AsString)); + next; + end; + + if not emptyFlag then + cb.Items.Add(''); + + if emptyFlag and (cb.Items.Count >0) then + cb.ItemIndex :=0; + end; +end; +////////////////////////////////////////////// + //函数:初试化combox中的数据 + //从XC_CustCode表中取定义数据 + //Boxtype:0; 带编号:1; +////////////////////////////////////////////// +procedure SInitComBoxByCustCode(ADOQueryTmp:TADOQuery; + cb: TComboBox;FlagType:string; + Boxtype:integer; + showMsg:string; + emptyFlag:Boolean + ); +var + A:TA; +begin + cb.Items.Clear ; + with ADOQueryTmp do + begin + close; + sql.clear; + sql.Add('exec P_Get_XC_Custcode'); + sql.Add(quotedStr(trim(flagType))); + Open; + if isEmpty then + begin + application.MessageBox(pChar('客户基础信息维护模块中未找到:'+showMsg),'',0); + exit; + end; + + while not EOF do + begin + if Boxtype=0 then + begin + cb.Items.Add(trim(fieldByName('name').AsString)); + end + else + begin + A := TA.Create(Nil); + A.s:= trim(fieldByName('code').AsString); + cb.Items.AddObject(trim(fieldByName('name').AsString),TObject(a)); + end; + next; + end; + + if not emptyFlag then + cb.Items.Add(''); + + if emptyFlag and (cb.Items.Count >0) then + cb.ItemIndex :=0; + end; +end; +procedure SInitCxGridComboBoxByCustCode(ADOQueryTmp:TADOQuery;c3:TcxGriddbColumn; + FlagType:string;PState:Integer;IsNull:Boolean;Shmeg:string); +var + A:TA; +begin + + (c3.Properties as TcxComboBoxProperties).Items.Clear ; + with ADOQueryTmp do + begin + close; + sql.clear; + sql.Add(' select * from XC_CustCode '+ + ' where Flag='''+trim(FlagType)+''' '+ + ' order by orderno '); + Open; + if isEmpty then + begin + Application.MessageBox(PChar('客户基础信息维护模块中未找到:'+shmeg),'',0); + exit; + end; + while not EOF do + begin + A := TA.Create(Nil); + A.s:= trim(fieldByName('Code').AsString); + if PState=1 then + (c3.Properties as TcxComboBoxProperties).Items.AddObject(trim(fieldByName('name').AsString),TObject(A)) + else if PState=0 then + begin + (c3.Properties as TcxComboBoxProperties).Items.Add(trim(fieldByName('name').AsString)); + end; + next; + end; + if not IsNull then + (c3.Properties as TcxComboBoxProperties).Items.Add(''); + end; + +end; + +procedure SInitCxGridComboBoxBySql(ADOQueryTmp:TADOQuery;c3:TcxGriddbColumn;FSql:string; + PState:Integer;IsNull:Boolean;Shmeg:string); +var + A:TA; +begin + + (c3.Properties as TcxComboBoxProperties).Items.Clear ; + with ADOQueryTmp do + begin + close; + sql.clear; + sql.Add(FSql); + Open; + if isEmpty then + begin + //Application.MessageBox(PChar('未找到:'+shmeg),'',0); + exit; + end; + while not EOF do + begin + A := TA.Create(Nil); + A.s:= trim(fieldByName('Code').AsString); + if PState=1 then + (c3.Properties as TcxComboBoxProperties).Items.AddObject(trim(fieldByName('name').AsString),TObject(A)) + else if PState=0 then + begin + (c3.Properties as TcxComboBoxProperties).Items.Add(trim(fieldByName('name').AsString)); + end; + next; + end; + if not IsNull then + begin + (c3.Properties as TcxComboBoxProperties).Items.Add(''); + end; + end; + +end; +procedure SInitCxBandGridComboBoxBySql(ADOQueryTmp:TADOQuery;c3:TcxGridDBBandedColumn;FSql:string; + PState:Integer;IsNull:Boolean;Shmeg:string); +var + A:TA; +begin + + (c3.Properties as TcxComboBoxProperties).Items.Clear ; + with ADOQueryTmp do + begin + close; + sql.clear; + sql.Add(FSql); + Open; + if isEmpty then + begin + Application.MessageBox(PChar('未找到:'+shmeg),'',0); + exit; + end; + while not EOF do + begin + A := TA.Create(Nil); + A.s:= trim(fieldByName('Code').AsString); + if PState=1 then + (c3.Properties as TcxComboBoxProperties).Items.AddObject(trim(fieldByName('name').AsString),TObject(A)) + else if PState=0 then + begin + (c3.Properties as TcxComboBoxProperties).Items.Add(trim(fieldByName('name').AsString)); + end; + next; + end; + if not IsNull then + begin + (c3.Properties as TcxComboBoxProperties).Items.Add(''); + end; + end; + +end; + + +/////////////////////////////////////////////////// +//*****四舍五入 ***** // +///////////////////////////////////////////////// +function SSWR(s: real): real; +var + r1, r2: real; + s1, s2: string; +begin + r1:= int(s); + r2:= frac(s); + s1:= copy(floattostr(r1), 1, length(floattostr(r1))); + if length(floattostr(r2)) >= 5 then + begin + if strtoint(copy((floattostr(r2)), 5, 1)) >= 5 then + if strtoint(copy((floattostr(r2)), 4, 1)) = 9 then + if strtoint(copy((floattostr(r2)), 3, 1)) = 9 then + begin + s1:= inttostr(strtoint(s1) + 1); + s2:= ''; + end + else + S2:= inttostr(strtoint(copy((floattostr(r2)), 3, 1)) + 1) + else + if copy((floattostr(r2)), 3, 1) = '0' then + S2:= '0' + inttostr(strtoint(copy(floattostr(r2), 3, 2)) + 1) + else + s2:= inttostr(strtoint(copy(floattostr(r2), 3, 2)) + 1) + else + s2:= copy(floattostr(r2), 3, 2); + end + else + s2:= copy(floattostr(r2), 3, 2); + result := strtofloat(s1 + '.' + s2); +end; + +procedure SInitCDSDataSel(fromADO:TADOQuery;toCDS:TclientDataSet); +var + i:integer; + k:integer; +begin + if fromADO.IsEmpty then exit; + fromADO.first; + K:=1; + try + toCDS.DisableControls; + toCDS.Filtered:=false; + + while not fromADO.Eof do + begin + with toCDS do + begin + Append; + for i:=0 to fromADO.FieldCount-1 do + begin + fields[i].value:=fromADO.Fields[i].Value ; + end; + //fieldByName('Sflag').AsString :='1'; + //fieldByName('Sindex').value :=k; + fieldByName('Ssel').value :=false; + inc(k); + Post; + end; + fromADO.Next; + end; + if not toCDS.IsEmpty then + begin + toCDS.First ; + end; + finally + toCDS.EnableControls; + end; +end; + +procedure SCreateCDSSel(SADOQry:TADOQuery; mClientDataset:TclientDataSet ); +var + i:integer; + mfieldName:string; + mSize:integer; +begin + mfieldName:=''; + mClientDataset.FieldDefs.Clear; + with SADOQry do + begin + for i:=0 to fieldCount-1 do // + begin + if (Fields[i].DataType=ftString) and (Fields[i].Size=0) then + begin + msize:=1; + end + else + msize:=Fields[i].Size; + mfieldName:=trim(fields[i].FieldName); + mClientDataset.FieldDefs.Add(mfieldName, + Fields[i].DataType,msize); + + end; + end; + mClientDataset.FieldDefs.Add('Sflag',ftString,1); + mClientDataset.FieldDefs.Add('Sindex',ftInteger,0); + mClientDataset.FieldDefs.Add('Ssel',ftBoolean,0); + mClientDataset.FieldDefs.Add('SDefNote',ftString,10); + mClientDataset.Close; + mClientDataset.CreateDataSet; +end; +//复制增行 +procedure CopyAddRow(Tv1:TcxGridDBTableView;CDS_Sub:TClientDataSet); +var + AA:array[0..50] of string; + i,j:Integer; +begin + if CDS_Sub.IsEmpty then + begin + CDS_Sub.Append; + CDS_Sub.Post; + Exit; + end; + for i:=0 to Tv1.ColumnCount-1 do + begin + AA[i]:=Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).AsString); + end; + with CDS_Sub do + begin + Append; + for i:=0 to Tv1.ColumnCount-1 do + begin + if AA[i]<>'' then + begin + CDS_Sub.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:=AA[i]; + end; + end; + Post; + end; +end; +procedure CopyAddRowBand(Tv1:TcxGridDBBandedTableView;CDS_Sub:TClientDataSet); +var + AA:array[0..50] of string; + i,j:Integer; +begin + if CDS_Sub.IsEmpty then + begin + CDS_Sub.Append; + CDS_Sub.Post; + Exit; + end; + for i:=0 to Tv1.ColumnCount-1 do + begin + AA[i]:=Trim(CDS_Sub.fieldbyname(Tv1.Columns[i].DataBinding.FieldName).AsString); + end; + with CDS_Sub do + begin + Append; + for i:=0 to Tv1.ColumnCount-1 do + begin + if AA[i]<>'' then + begin + CDS_Sub.FieldByName(Tv1.Columns[i].DataBinding.FieldName).Value:=AA[i]; + end; + end; + Post; + end; +end; +//复制增行 +procedure CopyAddRowCDS(CDS_Sub:TClientDataSet); +var + AA:array[0..1000] of string; + i,j:Integer; +begin + + if CDS_Sub.IsEmpty then Exit; + for i:=0 to CDS_Sub.FieldCount-1 do + begin + AA[i]:=Trim(CDS_Sub.fieldbyname(CDS_Sub.Fields[i].FieldName).AsString); + end; + with CDS_Sub do + begin + Append; + for i:=0 to CDS_Sub.FieldCount-1 do + begin + if AA[i]<>'' then + begin + CDS_Sub.FieldByName(CDS_Sub.Fields[i].FieldName).Value:=AA[i]; + end; + end; + Post; + end; +end; + +procedure OneKeyPost(Tv1:TcxGridDBTableView;CDS_Sub:TClientDataSet); +var + FValue,FFValue,FColumn,FFColumn:String; +begin + //FColumn:=tv1.Columns[Tv1.Controller.FocusedColumnIndex].DataBinding.FieldName; + //FFColumn:=Tv1.Columns[Tv1.Controller.FocusedColumnIndex].Summary.GroupFormat; + FColumn:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + FFColumn:=Tv1.Controller.FocusedColumn.Summary.GroupFormat; + FValue:=Trim(CDS_Sub.fieldbyname(FColumn).AsString); + if Trim(FFColumn)<>'' then + begin + FFValue:=Trim(CDS_Sub.fieldbyname(FFColumn).AsString); + end; + with CDS_Sub do + begin + DisableControls; + First; + while not Eof do + begin + Edit; + if FValue='' then + begin + CDS_Sub.FieldByName(FColumn).Value:=null; + end else + begin + CDS_Sub.FieldByName(FColumn).Value:=FValue; + end; + if Trim(FFColumn)<>'' then + begin + if FFValue='' then + begin + CDS_Sub.FieldByName(FFColumn).Value:=null; + end else + begin + CDS_Sub.FieldByName(FFColumn).Value:=FFValue; + end; + end; + + Post; + Next; + end; + EnableControls; + end; +end; + + +/////////////////////////////////////////////////// +//函数功能:取流水号 +//mFlag:前缀;mTable:表名 +//mlen:流水号长度; mtype:是否带日期 1:带 0 不带 +/////////////////////////////////////////////////// +function GetLSNo(ADOQueryTmp:TADOQuery; + var mMaxNo:string; + mFlag:string; + mTable:string; + mlen:integer; + mtype:integer=0):Boolean; +begin + try + with ADOQueryTmp do + begin + Close; + sql.Clear ; + sql.Add('exec Get_SY_MaxBH '); + sql.Add(' '+quotedStr(mFlag)); + sql.Add(','+quotedStr(mTable)); + sql.Add(','+intTostr(mlen)); + sql.Add(','+intTostr(mtype)); + //ShowMessage(SQL.Text); + Open; + + if RecordCount>0 then + begin + mMaxNo:=trim(fieldByName('MaxBH').AsString) ; + if mMaxNo<>'' then + result:=true + else + Result:=false; + end + else + begin + result:=false; + end; + + end; + if not Result then + application.MessageBox(Pchar('无法生成流水号('+mflag+')'),'提示信息',MB_ICONINFORMATION); + + Except + result:=false; + application.MessageBox(Pchar('无法生成流水号('+mflag+')'),'提示信息',MB_ICONINFORMATION); + + end; +end; +/////////////////////////////////////////////////// +//函数功能:取流水号 +//mFlag:前缀;mTable:表名 +//mlen:流水号长度; +//mtype:是否带日期 1:带 0 不带 +//HZype 0 按年月日取序号,1按年月取序号,2按年取序号,3按年月日取月序号,4按年月日取年序号 +/////////////////////////////////////////////////// +function GetLSNoHZ(ADOQueryTmp: TADOQuery; var mMaxNo: string; mFlag: string; mTable: string; mlen: integer; mtype: integer = 0; HZype: integer = 0): Boolean; +begin + try + with ADOQueryTmp do + begin + Close; + sql.Clear; + sql.Add('exec Get_SY_MaxBH_HZ '); + sql.Add(' ' + quotedStr(mFlag)); + sql.Add(',' + quotedStr(mTable)); + sql.Add(',' + intTostr(mlen)); + sql.Add(',' + intTostr(mtype)); + sql.Add(',' + intTostr(HZype)); + // ShowMessage(SQL.Text); + Open; + + if RecordCount > 0 then + begin + mMaxNo := trim(fieldByName('MaxBH').AsString); + if mMaxNo <> '' then + result := true + else + Result := false; + end + else + begin + result := false; + end; + + end; + if not Result then + application.MessageBox(Pchar('无法生成汇总流水号(' + mFlag + ')'), '提示信息', MB_ICONINFORMATION); + + except + result := false; + application.MessageBox(Pchar('无法生成汇总流水号(' + mFlag + ')'), '提示信息', MB_ICONINFORMATION); + + end; +end; + +procedure ReadCxGrid(fileName:string;cxgrid:TcxGridDBTableView;filePack:string='公用'); +var + mFileName:string; +begin + mFileName := ExtractFilePath(Application.ExeName)+'Layout\' +filePack+'\'+trim(fileName)+ '.dbg'; + //从布局文件中恢复 + if FileExists(mFileName) then + cxgrid.RestoreFromIniFile(mFileName); + CreateGroupSummarry(cxgrid); +end; +/////////////////////////////////////////////////////////////// + //函数功能:从文件中读取cxGridCol设置 + //fileName 推荐为窗口的caption名字caption名字 +/////////////////////////////////////////////////////////////// +procedure ReadCxBandedGrid(fileName:string;cxgrid:TcxGridDBBandedTableView;filePack:string='公用'); +var + mFileName:string; +begin + mFileName := ExtractFilePath(Application.ExeName)+'Layout\' +filePack+'\'+trim(fileName)+ '.dbg'; + //从布局文件中恢复 + if FileExists(mFileName) then + cxgrid.RestoreFromIniFile(mFileName); +end; +/////////////////////////////////////////////////////////////// + //函数功能:写cxGridCol设置到.dbg文件中 + //默认推荐为窗口的caption名字 +/////////////////////////////////////////////////////////////// +procedure WriteCxGrid(fileName:string;cxgrid:TcxGridDBTableView;filePack:string='公用'); +var + mFileName:string; +begin + mFileName := ExtractFilePath(Application.ExeName)+'Layout\' +filePack+'\'+trim(fileName)+ '.dbg'; + if not DirectoryExists(ExtractFileDir(mFileName)) then + CreateDir(ExtractFileDir(mFileName)); + //保存为布局文件 + cxgrid.StoreToIniFile(mFileName); + +end; +/////////////////////////////////////////////////////////////// + //函数功能:写cxGridCol设置到.dbg文件中 + //默认推荐为窗口的caption名字 +/////////////////////////////////////////////////////////////// +procedure WriteCxBandedGrid(fileName:string;cxgrid:TcxGridDBBandedTableView;filePack:string='公用'); +var + mFileName:string; +begin + mFileName := ExtractFilePath(Application.ExeName)+'Layout\' +filePack+'\'+trim(fileName)+ '.dbg'; + if not DirectoryExists(ExtractFileDir(mFileName)) then + CreateDir(ExtractFileDir(mFileName)); + //保存为布局文件 + cxgrid.StoreToIniFile(mFileName); +end; + +procedure CreateGroupSummarry(tv1:TcxGridDBTableView); +var + csg : TcxDataSummaryGroup; + csglink : TcxDataSummaryGroupItemLink; + csgItem : TcxDataSummaryItem; + i:integer; + mFieldName:string; +begin + ///创建汇总列 + with tv1.DataController.Summary do + begin + try + csg := DataController.Summary.SummaryGroups.Add; //创建汇总项 + + csg.Links.Clear; + for i:= 0 to tv1.ColumnCount -1 do + begin + if not tv1.Columns[i].Visible then continue; + mFieldName:=tv1.Columns[i].DataBinding.FieldName; + + if tv1.Columns[i].Summary.FooterKind=skSum then + begin + // (tv1.DataController.DataSet.Fields[i] as TNumericField).DisplayFormat := '#,0.00;-#,0.00;#'; + //tv1.Columns[i].Summary.FooterFormat:='0.0'; + //tv1.Columns[i].Summary.FooterKind := skSum; + + //这个与Group Row上的汇总同时使用时好象只能有一个有效 + //创建行分组行上的汇总项 + + csgitem := csg.SummaryItems.Add; + csgitem.ItemLink := tv1.Columns[i]; //汇总字段1 + csgitem.Position :=spGroup; + csgitem.Kind := skSum; + csgItem.Format := trim(tv1.Columns[i].Caption) +'小计=#,0.0'; + + tv1.Columns[i].Summary.GroupFooterKind := skSum; + tv1.Columns[i].Summary.GroupFooterFormat := '#,0.00'; + + end + else if tv1.Columns[i].Summary.FooterKind=skCount then + begin + // (tv1.DataController.DataSet.Fields[i] as TNumericField).DisplayFormat := '#,0.00;-#,0.00;#'; + //tv1.Columns[i].Summary.FooterFormat:='0.0'; + tv1.Columns[i].Summary.FooterKind := skCount; + + tv1.Columns[i].Summary.GroupFooterKind := skCount; + + //tv1.Columns[i].Summary.GroupFooterFormat := '#,0.00'; + //这个与Group Row上的汇总同时使用时好象只能有一个有效 + //创建行分组行上的汇总项 + csgitem := csg.SummaryItems.Add; + csgitem.ItemLink := tv1.Columns[i]; //汇总字段1 + csgitem.Kind := skCount; + //csgItem.Format := '小计=#,0.0'; + + end + else + begin + csglink := csg.Links.Add; + csglink.ItemLink := tv1.Columns[i]; //分类字段 + //所有不参与汇总的列都有可能用来分组,必须将这些列加入到 + //SummaryGroupItemLink中,没有加入该连接的列用来分组时 + //汇总值不会显示 + end; + + end; + finally + end; + end; + +end; + +procedure TcxGridToExcel(mfileName:string;gridName:TcxGrid); +var + saveDialog:TSaveDialog; +begin + try + saveDialog:=TSaveDialog.Create(nil); + saveDialog.Filter:='xls(*.xls)|*.xls|全部(*.*)|*.*'; + saveDialog.Options:=[ofOverwritePrompt]; + saveDialog.FileName:=mfileName; + if saveDialog.Execute then + if Assigned(gridName) then + begin + try + + ExportGridToExcel(saveDialog.FileName,gridName); + except + application.MessageBox('创建失败,源文件可能处于编辑状态!','提示信息',0); + exit; + end; + application.MessageBox('成功导出!','提示信息',0); + end + else + application.MessageBox('导出失败!','提示信息',0); + finally + saveDialog.Free; + end; +end; +procedure TcxGridToExcelEng(mfileName:string;gridName:TcxGrid); +var + saveDialog:TSaveDialog; +begin + try + saveDialog:=TSaveDialog.Create(nil); + saveDialog.Filter:='xls(*.xls)|*.xls|ALL(*.*)|*.*'; + saveDialog.Options:=[ofOverwritePrompt]; + saveDialog.FileName:=mfileName; + if saveDialog.Execute then + if Assigned(gridName) then + begin + try + + ExportGridToExcel(saveDialog.FileName,gridName); + except + application.MessageBox('The source file may be in edit mode!','Prompt message',0); + exit; + end; + application.MessageBox('Export success!','Prompt message',0); + end + else + application.MessageBox('Export failure!','Prompt message',0); + finally + saveDialog.Free; + end; +end; + + +function ReadINIFileStr(ininame,TypeName:string;ValueName,ValueMR:String):string; +var + programIni:Tinifile; //配置文件名 + FileName,ValueZS:string; +begin + FileName:=ExtractFilePath(Paramstr(0))+ininame; + programIni:=Tinifile.create(FileName); + ValueZS:=programIni.ReadString(TypeName,ValueName,ValueMR); + Result:=ValueZS; + programIni.Free; +end; + +procedure SelExportData(FTv:TcxGridDBTableView;FAdoQry:TADOQuery;FTile:string); +var + i,j:Integer; + fsj:string; +begin + if FAdoQry.IsEmpty then Exit; + try + frmSelExportField:=TfrmSelExportField.Create(Application); + with frmSelExportField do + begin + with frmSelExportField.ExpGrid do + begin + // ExpGrid.Columns.Clear; + ExpGrid.ClearItems; + frmSelExportField.IniName:=FTile; + {if FTv.OptionsView.Footer=true then + begin + ExpGrid.OptionsView.Footer:=True; + end else + begin + ExpGrid.OptionsView.Footer:=False; + end; } + ExpGrid.OptionsView.Footer:=FTv.OptionsView.Footer; + for i:=0 to FTv.ColumnCount-1 do + begin + //if FTv.Columns[i].Visible=True then + begin + ExpGrid.CreateColumn; + j:=ExpGrid.ColumnCount-1; + ExpGrid.Columns[j].Caption:=FTv.Columns[i].Caption; + ExpGrid.Columns[i].Visible:=FTv.Columns[i].Visible; + ExpGrid.Columns[j].DataBinding.FieldName:=FTv.Columns[i].DataBinding.FieldName; + ExpGrid.Columns[j].Width:=FTv.Columns[i].Width; + ExpGrid.Columns[i].Summary.FooterKind:=FTv.Columns[i].Summary.FooterKind; + + end; + end; + end; + ExportDataSource.DataSet:=FAdoQry; + FAdoQry.Open; + if ShowModal=1 then + begin + + end; + end; + frmSelExportField.Free; + except + + end; +end; +procedure SelExportDataBand(FTv:TcxGridDBBandedTableView;FAdoQry:TADOQuery;FTile:string); +var + i,j:Integer; + fsj:string; +begin + if FAdoQry.IsEmpty then Exit; + try + frmSelExportField:=TfrmSelExportField.Create(Application); + with frmSelExportField do + begin + with frmSelExportField.ExpGrid do + begin + // ExpGrid.Columns.Clear; + ExpGrid.ClearItems; + frmSelExportField.IniName:=FTile; + {if FTv.OptionsView.Footer=true then + begin + ExpGrid.OptionsView.Footer:=True; + end else + begin + ExpGrid.OptionsView.Footer:=False; + end; } + ExpGrid.OptionsView.Footer:=FTv.OptionsView.Footer; + for i:=0 to FTv.ColumnCount-1 do + begin + if FTv.Columns[i].Visible=True then + begin + ExpGrid.CreateColumn; + j:=ExpGrid.ColumnCount-1; + ExpGrid.Columns[j].Caption:=FTv.Columns[i].Caption; + ExpGrid.Columns[j].DataBinding.FieldName:=FTv.Columns[i].DataBinding.FieldName; + ExpGrid.Columns[j].Width:=FTv.Columns[i].Width; + ExpGrid.Columns[i].Summary.FooterKind:=FTv.Columns[i].Summary.FooterKind; + + end; + end; + end; + ExportDataSource.DataSet:=FAdoQry; + FAdoQry.Open; + if ShowModal=1 then + begin + + end; + end; + frmSelExportField.Free; + except + + end; +end; +procedure ColumnView(AdoQueryTemp:TADOQuery;Tv1:TcxGridDBTableView;MKName10:string); +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Table_Column where CxTabName='''+Trim(MKName10)+''' and Owner='''+Trim(DCode)+''''); + sql.Add(' and TCNotVisble=1 '); + open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + with ADOQueryTemp do + begin + First; + while not eof do + begin + + TV1.GetColumnByFieldName(ADOQueryTemp.fieldbyname('ColName').AsString).Visible:=False; + TV1.GetColumnByFieldName(ADOQueryTemp.fieldbyname('ColName').AsString).Hidden:=True; + Next; + end; + end; + end; +end; +procedure ColumnBandView(AdoQueryTemp:TADOQuery;Tv1:TcxGridDBBandedTableView;MKName10:string); +var + fsj:string; +begin + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from Table_Column where CxTabName='''+Trim(MKName10)+''' and Owner='''+Trim(DCode)+''''); + sql.Add(' and TCNotVisble=1 '); + open; + end; + if ADOQueryTemp.IsEmpty=False then + begin + with ADOQueryTemp do + begin + First; + while not eof do + begin + fsj:=Trim(ADOQueryTemp.fieldbyname('ColName').AsString); + // Tv1.Controller.ge + Tv1.GetColumnByFieldName(fsj).Visible:=False; + Tv1.GetColumnByFieldName(fsj).Hidden:=True; + Next; + end; + end; + end; +end; +procedure ColumnSet(TV10:TcxGridDBTableView;MKName10:String); +var + i:Integer; +begin + try + frmColumnSet:=TfrmColumnSet.Create(Application); + with frmColumnSet do + begin + ADOQuery2.DisableControls; + with ADOQuery2 do + begin + Close; + sql.Clear; + sql.Add('select * from Table_Column where 1<>1'); + Open; + end; + SCreateCDS20(ADOQuery2,ClientDataSet2); + SInitCDSData20(ADOQuery2,ClientDataSet2); + ADOQuery2.EnableControls; + MKName:=MKName10; + for i:=0 to TV10.ColumnCount-1 do + begin + with ClientDataSet2 do + begin + Append; + FieldByName('CxTabName').Value:=MKName; + FieldByName('CxColName').Value:=Trim(TV10.Columns[i].Caption); + FieldByName('ColName').Value:=Trim(TV10.Columns[i].DataBinding.FieldName); + Post; + end; + end; + if ShowModal=1 then + begin + + end; + end; + finally + frmColumnSet.Free; + end; +end; +procedure ColumnBandSet(TV10:TcxGridDBBandedTableView;MKName10:String); +var + i:Integer; +begin + try + frmColumnBandSet:=TfrmColumnBandSet.Create(Application); + with frmColumnBandSet do + begin + ADOQuery2.DisableControls; + with ADOQuery2 do + begin + Close; + sql.Clear; + sql.Add('select * from Table_Column where 1<>1'); + Open; + end; + SCreateCDS20(ADOQuery2,ClientDataSet2); + SInitCDSData20(ADOQuery2,ClientDataSet2); + ADOQuery2.EnableControls; + MKName:=MKName10; + for i:=0 to TV10.ColumnCount-1 do + begin + with ClientDataSet2 do + begin + Append; + FieldByName('CxTabName').Value:=Trim(TV10.Bands[TV10.Columns[i].Position.BandIndex].Caption); + FieldByName('CxColName').Value:=Trim(TV10.Columns[i].Caption); + FieldByName('ColName').Value:=Trim(TV10.Columns[i].DataBinding.FieldName); + FieldByName('OrderNo').Value:=i; + Post; + end; + end; + ADOQuery5.DisableControls; + with ADOQuery5 do + begin + Close; + sql.Clear; + sql.Add('select * from Table_Name where 1<>1'); + Open; + end; + SCreateCDS20(ADOQuery5,CDSName); + SInitCDSData20(ADOQuery5,CDSName); + ADOQuery2.EnableControls; + MKName:=MKName10; + for i:=0 to TV10.Bands.Count-1 do + begin + with CDSName do + begin + Append; + FieldByName('CxTabName').Value:=Trim(TV10.Bands[i].Caption); + FieldByName('OrderNo').Value:=i; + Post; + end; + end; + if ShowModal=1 then + begin + + end; + end; + finally + frmColumnBandSet.Free; + end; +end; + +procedure GetSWLDZ(IPStr:string); +var + myip:ulong; + mymac:array[0..5] of byte; + mymaclength:ulong; + r:integer; +begin + {myip:=inet_addr(PChar(Trim(IPStr))); + mymaclength:=length(mymac); + r:=sendarp(myip,0,@mymac,@mymaclength); + IpCall:=r; + IpWLDZStr:=format('%2.2x:%2.2x:%2.2x:%2.2x:%2.2x:%2.2x',[mymac[0],mymac[1],mymac[2],mymac[3],mymac[4],mymac[5]]);} +end; +procedure SelOKNo(CDS_MainSel:TClientDataSet;FSel:Boolean); +begin + if CDS_MainSel.IsEmpty then Exit; + CDS_MainSel.DisableControls; + with CDS_MainSel do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean=not FSel then + begin + Edit; + FieldByName('SSel').Value:=FSel; + Post; + end; + Next; + end; + end; + CDS_MainSel.EnableControls; +end; + +procedure SelOKNoAdo(CDS_MainSel:TADOQuery;FSel:Boolean); +begin + if CDS_MainSel.IsEmpty then Exit; + CDS_MainSel.DisableControls; + with CDS_MainSel do + begin + First; + while not Eof do + begin + if FieldByName('SSel').AsBoolean=not FSel then + begin + Edit; + FieldByName('SSel').Value:=FSel; + Post; + end; + Next; + end; + end; + CDS_MainSel.EnableControls; +end; +function num2ceng(strArabic:string):string;//不带小数点数字转换英文 +const + sw:array[2..9]of string=('twenty','thirty','forty','fifty','sixty','seventy','eighty','ninety'); + gw:array[1..19] of string=('one','two','three','four','five','six','seven','eight','nine','ten','eleven','twelve','thirteen','fourteen','fifteen','sixteen','seventeen','eighteen','nineteen'); + exp:array[1..4] of string=('','thousand','million','billion'); +var + t,j,glb,t1 :integer; + ts:string; + function readu1000(ss:string):string; + var + t,code:integer; + begin + result := ''; + while ss[1]='0' do + begin + delete(ss,1,1); + if length(ss)=0 then exit;//控制全是0情况 + end; + if length(ss)=3 then + begin + appendstr(result,gw[ord(ss[1])-ord('0')]); + //appendstr(result,' hundred '); + appendstr(result,' hundred '); + delete(ss,1,1); + end; + while ss[1]='0' do + begin + delete(ss,1,1); + if length(ss)=0 then exit; + end; + if length(ss)<>0 then + if result <> '' then appendstr(result,'and '); + if (glb = 1) and (t1<>1) then //超过百位时候处理最后3位 + if result='' then appendstr(result,'and '); + begin + val(ss,t,code); + if t<20 then result :=result+gw[t] + else if t mod 10=0 then result:=result+sw[t div 10] + else + //result := result+sw[trunc(t/10)]+'-'+gw[t mod 10]; + result := result+sw[trunc(t/10)]+' '+gw[t mod 10]; + end; + end; +begin + result :=''; + t := pos('.',strArabic); + if t=0 then t:=length(strArabic)+1; + while (t mod 3<>1)do + begin + t:=t+1; + strArabic:='0'+ strArabic; + end; + t1:=(t-1) div 3; + for glb:=t1 downto 1 do + begin + ts:=''; + for j:=1 to 3 do + begin + ts:=ts+ strArabic[1]; + delete(strArabic,1,1); + end; + result := result + readu1000(ts); + if ts<>'000' then result := result+' '+exp[glb]+' '; + end; + if length(strArabic)<>0 then + begin + delete(strArabic,1,1); + appendstr(result,'and '); + result :=result + readu1000(strArabic); + end; +end; +function num2cengnum(strArabic:string):string; +const + gw:array[1..10] of string =('0','one','two','three','four','five','six','seven','eight','nine'); +var + p,i,j,x:integer; + s:string; +begin + result := ''; + s := strarabic; + p := pos('.',strarabic); + if p = 0 then + begin + result := num2ceng(strarabic)+'Only'; + exit; + end + else + begin + i := length(s)-p;//计算小数点后面有几位 + delete(strarabic,p,i+1);//删除小数点后面数字 + result := num2ceng(strarabic)+'Point'; + end; + for x:=1 to i do //转换小数点后面数字 + begin + j:= strtoint(copy(s,p+x,1)); + case j of + 0: result := result +' '+gw[1]; + 1: result := result +' '+gw[2]; + 2: result := result +' '+gw[3]; + 3: result := result +' '+gw[4]; + 4: result := result +' '+gw[5]; + 5: result := result +' '+gw[6]; + 6: result := result +' '+gw[7]; + 7: result := result +' '+gw[8]; + 8: result := result +' '+gw[9]; + 9: result := result +' '+gw[10]; + end; + end; +end; +procedure DelCDS(ClientDataSet1:TClientDataSet;ADOCmd:TADOQuery;DelSql:string); +begin + if ClientDataSet1.IsEmpty then Exit; + if Trim(ClientDataSet1.fieldbyname('ZSID').AsString)<>'' then + begin + if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit; + with ADOCmd do + begin + Close; + SQL.Clear; + sql.Add(DelSql); + ExecSQL; + end; + end; + ClientDataSet1.Delete; +end; + +end. + diff --git a/Z99Dependency/ThreeFun/Fun/U_Fun10.cfg b/Z99Dependency/ThreeFun/Fun/U_Fun10.cfg new file mode 100644 index 0000000..0ee74bb --- /dev/null +++ b/Z99Dependency/ThreeFun/Fun/U_Fun10.cfg @@ -0,0 +1,38 @@ +-$A8 +-$B- +-$C+ +-$D+ +-$E- +-$F- +-$G+ +-$H+ +-$I+ +-$J- +-$K- +-$L+ +-$M- +-$N+ +-$O+ +-$P+ +-$Q- +-$R- +-$S- +-$T- +-$U- +-$V+ +-$W- +-$X+ +-$YD +-$Z1 +-cg +-AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; +-H+ +-W+ +-M +-$M16384,1048576 +-K$00400000 +-LE"d:\program files (x86)\borland\delphi7\Projects\Bpl" +-LN"d:\program files (x86)\borland\delphi7\Projects\Bpl" +-w-UNSAFE_TYPE +-w-UNSAFE_CODE +-w-UNSAFE_CAST diff --git a/Z99Dependency/ThreeFun/Fun/U_Fun10.dof b/Z99Dependency/ThreeFun/Fun/U_Fun10.dof new file mode 100644 index 0000000..7819019 --- /dev/null +++ b/Z99Dependency/ThreeFun/Fun/U_Fun10.dof @@ -0,0 +1,136 @@ +[FileVersion] +Version=7.0 +[Compiler] +A=8 +B=0 +C=1 +D=1 +E=0 +F=0 +G=1 +H=1 +I=1 +J=0 +K=0 +L=1 +M=0 +N=1 +O=1 +P=1 +Q=0 +R=0 +S=0 +T=0 +U=0 +V=1 +W=0 +X=1 +Y=1 +Z=1 +ShowHints=1 +ShowWarnings=1 +UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; +NamespacePrefix= +SymbolDeprecated=1 +SymbolLibrary=1 +SymbolPlatform=1 +UnitLibrary=1 +UnitPlatform=1 +UnitDeprecated=1 +HResultCompat=1 +HidingMember=1 +HiddenVirtual=1 +Garbage=1 +BoundsError=1 +ZeroNilCompat=1 +StringConstTruncated=1 +ForLoopVarVarPar=1 +TypedConstVarPar=1 +AsgToTypedConst=1 +CaseLabelRange=1 +ForVariable=1 +ConstructingAbstract=1 +ComparisonFalse=1 +ComparisonTrue=1 +ComparingSignedUnsigned=1 +CombiningSignedUnsigned=1 +UnsupportedConstruct=1 +FileOpen=1 +FileOpenUnitSrc=1 +BadGlobalSymbol=1 +DuplicateConstructorDestructor=1 +InvalidDirective=1 +PackageNoLink=1 +PackageThreadVar=1 +ImplicitImport=1 +HPPEMITIgnored=1 +NoRetVal=1 +UseBeforeDef=1 +ForLoopVarUndef=1 +UnitNameMismatch=1 +NoCFGFileFound=1 +MessageDirective=1 +ImplicitVariants=1 +UnicodeToLocale=1 +LocaleToUnicode=1 +ImagebaseMultiple=1 +SuspiciousTypecast=1 +PrivatePropAccessor=1 +UnsafeType=0 +UnsafeCode=0 +UnsafeCast=0 +[Linker] +MapFile=0 +OutputObjs=0 +ConsoleApp=1 +DebugInfo=0 +RemoteSymbols=0 +MinStackSize=16384 +MaxStackSize=1048576 +ImageBase=4194304 +ExeDescription= +[Directories] +OutputDir= +UnitOutputDir= +PackageDLLOutputDir= +PackageDCPOutputDir= +SearchPath= +Packages= +Conditionals= +DebugSourceDirs= +UsePackages=0 +[Parameters] +RunParams= +HostApplication= +Launcher= +UseLauncher=0 +DebugCWD= +[Language] +ActiveLang= +ProjectLang= +RootDir= +[Version Info] +IncludeVerInfo=0 +AutoIncBuild=0 +MajorVer=1 +MinorVer=0 +Release=0 +Build=0 +Debug=0 +PreRelease=0 +Special=0 +Private=0 +DLL=0 +Locale=2052 +CodePage=936 +[Version Info Keys] +CompanyName= +FileDescription= +FileVersion=1.0.0.0 +InternalName= +LegalCopyright= +LegalTrademarks= +OriginalFilename= +ProductName= +ProductVersion=1.0.0.0 +Comments= diff --git a/Z99Dependency/ThreeFun/Fun/U_PublicFunction.pas b/Z99Dependency/ThreeFun/Fun/U_PublicFunction.pas new file mode 100644 index 0000000..d24487f --- /dev/null +++ b/Z99Dependency/ThreeFun/Fun/U_PublicFunction.pas @@ -0,0 +1,124 @@ +unit U_PublicFunction; +interface +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs, ComCtrls, ToolWin, StdCtrls, BtnEdit, cxStyles, cxCustomData, + cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit,DBGrids, DB, cxDBData, + cxGridLevel, cxClasses, cxControls, cxGridCustomView, ADODB,StrUtils, + Midas,cxGridCustomTableView, cxGridTableView, cxGridDBTableView,cxTimeEdit, + cxGrid,cxDBLookupComboBox,cxCalendar, cxCurrencyEdit,cxGridExportLink, + ExtCtrls, Buttons,DBClient,FTComboBox,cxDropDownEdit,CXmemo; + + function GetMaxBh(ADOQueryTmp:TADOQuery; + var mMaxBh:string; + mBhType:string; + mFlag:string; + mStatus:string; + lsLen:integer=3):Boolean; + procedure CreateAdoToCds(Ado1:TADOQuery; Cds1:TclientDataSet ); + procedure InitAdoToCds(Ado1:TADOQuery;Cds1:TclientDataSet); +implementation + +function GetMaxBh(ADOQueryTmp:TADOQuery; + var mMaxBh:string; + mBhType:string; + mFlag:string; + mStatus:string; + lsLen:integer=3):Boolean; +begin + try + with ADOQueryTmp do + begin + Close; + sql.Clear ; + sql.Add(' exec Get_SY_MaxBH '); + sql.Add(' @BHstr='+quotedstr(mFlag)); + sql.Add(',@BHType='+quotedStr(mBhType)); + sql.Add(',@Len='+inttostr(LsLen)); + sql.Add(',@status='+quotedStr(mStatus)); + Open; + + if RecordCount>0 then + begin + mMaxBh:=trim(fieldByName('MaxBH').AsString) ; + if mMaxBh<>'' then + result:=true + else + Result:=false; + end + else + begin + result:=false; + end; + + end; + if not Result then + application.MessageBox(Pchar('无法生成自动编号('+mflag+')'),'提示信息',MB_ICONINFORMATION); + + Except + result:=false; + application.MessageBox(Pchar('无法生成自动编号('+mflag+')'),'提示信息',MB_ICONINFORMATION); + end; +end; + +procedure CreateAdoToCds(Ado1:TADOQuery; Cds1:TclientDataSet ); +var + i:integer; + mfieldName:string; + mSize:integer; +begin + mfieldName:=''; + Cds1.FieldDefs.Clear; + with Ado1 do + begin + for i:=0 to fieldCount-1 do // + begin + if (Fields[i].DataType=ftString) and (Fields[i].Size=0) then + begin + msize:=1; + end + else + msize:=Fields[i].Size; + mfieldName:=trim(fields[i].FieldName); + Cds1.FieldDefs.Add(mfieldName,Fields[i].DataType,msize); + end; + end; + Cds1.FieldDefs.Add('flag',ftString,1); + Cds1.FieldDefs.Add('index',ftInteger,0); + Cds1.Close; + Cds1.CreateDataSet; +end; +procedure InitAdoToCds(Ado1:TADOQuery;Cds1:TclientDataSet); +var + i:integer; + k:integer; +begin + Ado1.DisableControls; + Cds1.DisableControls; + Ado1.first; + K:=1; + while not Ado1.Eof do + begin + with Cds1 do + begin + Append; + for i:=0 to Ado1.FieldCount-1 do + begin + fields[i].value:=Ado1.Fields[i].Value ; + end; + fieldByName('flag').AsString :='1'; + fieldByName('index').value :=k; + inc(k); + Post; + end; + Ado1.Next; + end; + if not Cds1.IsEmpty then + begin + Cds1.First ; + end; + Ado1.EnableControls; + Cds1.EnableControls; +end; + +end. diff --git a/Z99Dependency/ThreeFun/Fun/U_SelExportField.dfm b/Z99Dependency/ThreeFun/Fun/U_SelExportField.dfm index fc947d4..2cd81dc 100644 --- a/Z99Dependency/ThreeFun/Fun/U_SelExportField.dfm +++ b/Z99Dependency/ThreeFun/Fun/U_SelExportField.dfm @@ -44,7 +44,7 @@ object frmSelExportField: TfrmSelExportField TabOrder = 2 Visible = False object ExpGrid: TcxGridDBTableView - Navigator.Buttons.CustomButtons = <> + NavigatorButtons.ConfirmDelete = False DataController.DataSource = ExportDataSource DataController.Summary.DefaultGroupSummaryItems = <> DataController.Summary.FooterSummaryItems = <> diff --git a/Z99Dependency/ThreeFun/Fun/U_SelExportField.pas b/Z99Dependency/ThreeFun/Fun/U_SelExportField.pas index d270038..23447eb 100644 --- a/Z99Dependency/ThreeFun/Fun/U_SelExportField.pas +++ b/Z99Dependency/ThreeFun/Fun/U_SelExportField.pas @@ -8,22 +8,7 @@ uses DB,IniFiles, RM_Common, RM_Class, RM_e_Xls, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, cxGridLevel, cxClasses, cxControls, cxGridCustomView, - cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid, - cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, dxSkinBlack, - dxSkinBlue, dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkRoom, - dxSkinDarkSide, dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, - dxSkinFoggy, dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, - dxSkinLilian, dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, - dxSkinMetropolis, dxSkinMetropolisDark, dxSkinMoneyTwins, - dxSkinOffice2007Black, dxSkinOffice2007Blue, dxSkinOffice2007Green, - dxSkinOffice2007Pink, dxSkinOffice2007Silver, dxSkinOffice2010Black, - dxSkinOffice2010Blue, dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, - dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinPumpkin, - dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus, - dxSkinSilver, dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008, - dxSkinTheAsphaltWorld, dxSkinsDefaultPainters, dxSkinValentine, - dxSkinVS2010, dxSkinWhiteprint, dxSkinXmas2008Blue, dxSkinscxPCPainter, - cxNavigator; + cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid; type TfrmSelExportField = class(TForm) diff --git a/浜戠繑涓鐮侀/U_YMTRKInPut.dfm b/浜戠繑涓鐮侀/U_YMTRKInPut.dfm index c238add..0f1ba2a 100644 --- a/浜戠繑涓鐮侀/U_YMTRKInPut.dfm +++ b/浜戠繑涓鐮侀/U_YMTRKInPut.dfm @@ -1,6 +1,6 @@ object frmYMTRKInPut: TfrmYMTRKInPut - Left = 309 - Top = 236 + Left = 599 + Top = 321 Width = 1829 Height = 623 Align = alClient diff --git a/浜戠繑涓鐮侀/U_YMTRKInPut.pas b/浜戠繑涓鐮侀/U_YMTRKInPut.pas index 0eca6f2..17aaa78 100644 --- a/浜戠繑涓鐮侀/U_YMTRKInPut.pas +++ b/浜戠繑涓鐮侀/U_YMTRKInPut.pas @@ -118,6 +118,7 @@ type public { Public declarations } FBCId: string; + PState, CopyInt: Integer; end; var @@ -183,16 +184,52 @@ end; procedure TfrmYMTRKInPut.InitGrid(); begin -// with ADOQueryTemp do -// begin -//// Close; -//// sql.Clear; -//// sql.Add('select * from YMT_CK_MX where SPID=' + quotedstr(Trim(MCRNO))); -//// sql.Add(' order by MXID'); -//// Open; -// end; -// SCreateCDS20(ADOQueryTemp, CDS_MX); -// SInitCDSData20(ADOQueryTemp, CDS_MX); + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add(' select A.* '); + sql.Add(',OrderNO=(select OrderNO from JYOrder_Main JM where JM.MainId=A.ORDMainIdRK)'); + sql.Add(' from YMT_CK_CR A'); + sql.Add(' where SPID=''' + Trim(FBCId) + ''''); + Open; + end; + SCreateCDS20(ADOQueryTemp, CDS_Sub); + SInitCDSData20(ADOQueryTemp, CDS_Sub); + + if CDS_Sub.IsEmpty then + Exit; + with ADOQueryTemp do + begin + Close; + sql.Clear; + sql.Add('select * from YMT_CK_CR where FZSPID=''' + Trim(CDS_Sub.fieldbyname('SPID').AsString) + ''''); + sql.Add(' and CRQtyFlag=-1'); + Open; + end; + if not ADOQueryTemp.IsEmpty then + begin + v1Column4.Options.Focusing := False; + v1Column14.Options.Focusing := False; + v2Column1.Options.Focusing := False; + v1Column8.Options.Focusing := False; + v1Column7.Options.Focusing := False; + v1Column1.Options.Focusing := False; + v1Column10.Options.Focusing := False; + v1Column11.Options.Focusing := False; + Exit; + end + else + begin + v1Column4.Options.Focusing := True; + v1Column14.Options.Focusing := True; + v2Column1.Options.Focusing := True; + v1Column8.Options.Focusing := True; + v1Column7.Options.Focusing := True; + v1Column1.Options.Focusing := True; + v1Column10.Options.Focusing := True; + v1Column11.Options.Focusing := True; + end; end; procedure TfrmYMTRKInPut.FormClose(Sender: TObject; var Action: TCloseAction); @@ -253,13 +290,6 @@ begin FFSPID := Trim(ADOQueryTemp.fieldbyname('SPID').AsString); if Trim(FFSPID) = '' then begin -// if GetLSNo(ADOQueryCmd, Maxno, 'DR', 'YMT_CK_CR', 3, 1) = False then -// begin -// Result := False; -// ADOQueryCmd.Connection.RollbackTrans; -// Application.MessageBox('取待检布入库编号失败!', '提示', 0); -// Exit; -// end; Maxno := Trim(CDS_Sub.fieldbyname('SPID').AsString); end else @@ -296,7 +326,6 @@ begin FieldByName('ORDSubIdRK').Value := Trim(CDS_Sub.fieldbyname('ORDSubIdRK').AsString); FieldByName('CRFlag').Value := '入库'; FieldByName('CRQtyFlag').Value := 1; - //FieldByName('CRID').Value:=FCRID; RTSetSaveDataCDS(ADOQueryCmd, Tv1, CDS_Sub, 'YMT_CK_CR', 2); @@ -344,20 +373,9 @@ begin Edit; FieldByName('SPID').Value := Trim(Maxno); - //FieldByName('CRID').Value:=Trim(FCRID); Post; -// -// if Trim(CDS_Sub.fieldbyname('CRType').AsString)='客户退货' then -// begin -// if not YSData(CDS_Sub) then -// begin -// ADOQueryCmd.Connection.RollbackTrans; -// Application.MessageBox('保存异常!','提示',0); -// exit; -// end; -// end; - - AddRows(); + if PState = 0 then + AddRows(); Next; end; end; @@ -383,51 +401,8 @@ var fsj: string; begin ReadCxGrid('待检布入库登记', Tv1, '待检布仓库'); - with ADOQueryTemp do - begin - Close; - sql.Clear; - sql.Add(' select A.* '); - sql.Add(',OrderNO=(select OrderNO from JYOrder_Main JM where JM.MainId=A.ORDMainIdRK)'); - sql.Add(' from YMT_CK_CR A'); - sql.Add(' where SPID=''' + Trim(FBCId) + ''''); - Open; - end; - SCreateCDS20(ADOQueryTemp, CDS_Sub); - SInitCDSData20(ADOQueryTemp, CDS_Sub); - if CDS_Sub.IsEmpty then - Exit; - with ADOQueryTemp do - begin - Close; - sql.Clear; - sql.Add('select * from YMT_CK_CR where FZSPID=''' + Trim(CDS_Sub.fieldbyname('SPID').AsString) + ''''); - sql.Add(' and CRQtyFlag=-1'); - Open; - end; - if ADOQueryTemp.IsEmpty = False then - begin - v1Column4.Options.Focusing := False; - v1Column14.Options.Focusing := False; - v2Column1.Options.Focusing := False; - v1Column8.Options.Focusing := False; - v1Column7.Options.Focusing := False; - v1Column1.Options.Focusing := False; - v1Column10.Options.Focusing := False; - v1Column11.Options.Focusing := False; - Exit; - end - else - begin - v1Column4.Options.Focusing := True; - v1Column14.Options.Focusing := True; - v2Column1.Options.Focusing := True; - v1Column8.Options.Focusing := True; - v1Column7.Options.Focusing := True; - v1Column1.Options.Focusing := True; - v1Column10.Options.Focusing := True; - v1Column11.Options.Focusing := True; - end; + InitGrid(); + end; procedure TfrmYMTRKInPut.TBDelClick(Sender: TObject); diff --git a/浜戠繑涓鐮侀/U_YMTRKList.dfm b/浜戠繑涓鐮侀/U_YMTRKList.dfm index 4a8bcc7..c70e05a 100644 --- a/浜戠繑涓鐮侀/U_YMTRKList.dfm +++ b/浜戠繑涓鐮侀/U_YMTRKList.dfm @@ -1,6 +1,6 @@ object frmYMTRKList: TfrmYMTRKList - Left = 264 - Top = 309 + Left = 386 + Top = 376 Width = 1370 Height = 750 Caption = #38754#26009#22238#20179#30331#35760 diff --git a/浜戠繑涓鐮侀/U_YMTRKList.pas b/浜戠繑涓鐮侀/U_YMTRKList.pas index f33787d..b078cba 100644 --- a/浜戠繑涓鐮侀/U_YMTRKList.pas +++ b/浜戠繑涓鐮侀/U_YMTRKList.pas @@ -367,6 +367,7 @@ begin frmYMTRKInPut := TfrmYMTRKInPut.Create(Application); with frmYMTRKInPut do begin + PState := 0; FBCId := ''; if ShowModal = 1 then begin @@ -391,6 +392,7 @@ begin frmYMTRKInPut := TfrmYMTRKInPut.Create(Application); with frmYMTRKInPut do begin + PState := 1; FBCId := Trim(CDS_Main.fieldbyname('SPID').AsString); TBDel.Visible := False; TBAdd.Visible := False; diff --git a/浜戠繑涓鐮侀/U_ZdyAttachGYS.dfm b/浜戠繑涓鐮侀/U_ZdyAttachGYS.dfm index 460f307..24ab286 100644 --- a/浜戠繑涓鐮侀/U_ZdyAttachGYS.dfm +++ b/浜戠繑涓鐮侀/U_ZdyAttachGYS.dfm @@ -87,6 +87,7 @@ object frmZdyAttachGYS: TfrmZdyAttachGYS Width = 24 Height = 12 Caption = #31867#22411 + Visible = False end object CoName: TEdit Tag = 2 @@ -118,6 +119,7 @@ object frmZdyAttachGYS: TfrmZdyAttachGYS ImeName = #20013#25991' - QQ'#25340#38899#36755#20837#27861 ItemHeight = 12 TabOrder = 0 + Visible = False OnChange = CoNameChange Items.Strings = ( '' @@ -165,27 +167,28 @@ object frmZdyAttachGYS: TfrmZdyAttachGYS Styles.Header = DataLink_YXYMT.Default object v2Column2: TcxGridDBColumn Caption = #20379#24212#21830#32534#21495 - DataBinding.FieldName = 'CoCode' + DataBinding.FieldName = 'ZdyCode' PropertiesClassName = 'TcxTextEditProperties' HeaderAlignmentHorz = taCenter Width = 86 end object v2Column6: TcxGridDBColumn Caption = #20379#24212#21830#21517#31216 - DataBinding.FieldName = 'CoName' + DataBinding.FieldName = 'ZdyName' HeaderAlignmentHorz = taCenter Options.Focusing = False Width = 133 end object v2Column15: TcxGridDBColumn Caption = #20379#24212#21830#31616#31216 - DataBinding.FieldName = 'CoHRName' + DataBinding.FieldName = 'ZdyNameZ' HeaderAlignmentHorz = taCenter Width = 106 end object v2Column7: TcxGridDBColumn Caption = #31867#22411 DataBinding.FieldName = 'FactType' + Visible = False HeaderAlignmentHorz = taCenter Options.Editing = False Width = 82 diff --git a/浜戠繑涓鐮侀/U_ZdyAttachGYS.pas b/浜戠繑涓鐮侀/U_ZdyAttachGYS.pas index ce7fc11..18c3005 100644 --- a/浜戠繑涓鐮侀/U_ZdyAttachGYS.pas +++ b/浜戠繑涓鐮侀/U_ZdyAttachGYS.pas @@ -90,8 +90,9 @@ begin Filtered := False; Close; SQL.Clear; - sql.Add(' select * from Company A left join Company_contact B '); - sql.Add(' on A.CoID=B.CoID and B.IsDefault=1 where A.CoType=''供应商'' and A.Valid=''Y'' '); + sql.Add(' select * from KH_Zdy_Attachment A '); +// sql.Add(' left join Company_contact B on A.CoID=B.CoID and B.IsDefault=1'); + sql.Add(' where A.Type=''GYS'' and A.Valid=''Y'' '); Open; end; SCreateCDS20(ADOQueryMain, CDS_HZ); diff --git a/浜戠繑涓鐮侀/YXYMT.dof b/浜戠繑涓鐮侀/YXYMT.dof index 6c95840..c24c8dd 100644 --- a/浜戠繑涓鐮侀/YXYMT.dof +++ b/浜戠繑涓鐮侀/YXYMT.dof @@ -101,7 +101,7 @@ DebugSourceDirs= UsePackages=0 [Parameters] RunParams= -HostApplication=E:\项目资料\00_重点客户\云翔\D7myYunxiang\云翔一码通\testDll.exe +HostApplication=D:\Project\D7myYunxiang\云翔一码通\testDll.exe Launcher= UseLauncher=0 DebugCWD= diff --git a/浜戠繑鐢熶骇绠$悊(MYSC.dll)/U_LLRKInPutMH_RCCG.dfm b/浜戠繑鐢熶骇绠$悊(MYSC.dll)/U_LLRKInPutMH_RCCG.dfm index 7d5bd12..7171f56 100644 --- a/浜戠繑鐢熶骇绠$悊(MYSC.dll)/U_LLRKInPutMH_RCCG.dfm +++ b/浜戠繑鐢熶骇绠$悊(MYSC.dll)/U_LLRKInPutMH_RCCG.dfm @@ -503,7 +503,6 @@ object frmLLRKInPutMH_RCCG: TfrmLLRKInPutMH_RCCG OnBtnClick = ToGYSNameBtnClick end object KHNameJC: TBtnEditA - Tag = 2 Left = 112 Top = 157 Width = 273 diff --git a/浜戠繑鐢熶骇绠$悊(MYSC.dll)/U_MLSC.dfm b/浜戠繑鐢熶骇绠$悊(MYSC.dll)/U_MLSC.dfm index 51d4068..f74a412 100644 --- a/浜戠繑鐢熶骇绠$悊(MYSC.dll)/U_MLSC.dfm +++ b/浜戠繑鐢熶骇绠$悊(MYSC.dll)/U_MLSC.dfm @@ -21,7 +21,7 @@ object frmMLSC: TfrmMLSC object ToolBar1: TToolBar Left = 0 Top = 0 - Width = 1304 + Width = 1312 AutoSize = True ButtonHeight = 30 ButtonWidth = 119 @@ -99,8 +99,8 @@ object frmMLSC: TfrmMLSC object cxGrid1: TcxGrid Left = 0 Top = 113 - Width = 1304 - Height = 292 + Width = 1312 + Height = 300 Align = alClient TabOrder = 1 object Tv1: TcxGridDBTableView @@ -187,7 +187,7 @@ object frmMLSC: TfrmMLSC object Panel1: TPanel Left = 0 Top = 32 - Width = 1304 + Width = 1312 Height = 81 Align = alTop BevelInner = bvRaised @@ -413,8 +413,8 @@ object frmMLSC: TfrmMLSC end object cxGrid2: TcxGrid Left = 0 - Top = 405 - Width = 1304 + Top = 413 + Width = 1312 Height = 242 Align = alBottom TabOrder = 3 diff --git a/浜戠繑鐢熶骇绠$悊(MYSC.dll)/U_MLSC.pas b/浜戠繑鐢熶骇绠$悊(MYSC.dll)/U_MLSC.pas index c456cc9..fdd293c 100644 --- a/浜戠繑鐢熶骇绠$悊(MYSC.dll)/U_MLSC.pas +++ b/浜戠繑鐢熶骇绠$悊(MYSC.dll)/U_MLSC.pas @@ -11,19 +11,19 @@ uses cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, Menus, cxButtonEdit, cxDropDownEdit, BtnEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, - dxSkinsCore, - dxSkinDarkRoom, - - - - - - - dxSkinOffice2013White, - dxSkinSharpPlus, - dxSkinSpringTime, - dxSkinsDefaultPainters, - dxSkinscxPCPainter; + dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, + dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, dxSkinOffice2013LightGray, + dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSilver, + dxSkinStardust, dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinValentine, + dxSkinVS2010, dxSkinWhiteprint, dxSkinXmas2008Blue, dxSkinsCore, + dxSkinDarkRoom, dxSkinOffice2013White, dxSkinSharpPlus, dxSkinBlack, + dxSkinBlue, dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkSide, + dxSkinSpringTime, dxSkinsDefaultPainters, dxSkinscxPCPainter, + dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy, + dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, + dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, + dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, + dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink; type TfrmMLSC = class(TForm) @@ -134,7 +134,7 @@ var implementation uses - U_DataLink, U_RTFun, U_ZDYHelp, U_SCPerson, U_PBGYSInPutMain, U_MLLR,U_SCDMX; + U_DataLink, U_RTFun, U_ZDYHelp, U_SCPerson, U_PBGYSInPutMain, U_MLLR, U_SCDMX; {$R *.dfm} @@ -413,7 +413,7 @@ begin begin Filtered := False; Close; - sql.Clear; + sql.Clear; sql.Add('select * '); // sql.Add(',sl=(select sum(MQty) from CK_MYSC_CR_MX B where B.MYID=(select mainid from CK_MYSC_CR C where C.scdsubid=A.subid)) '); // sql.Add(',zl=(select sum(KgQty) from CK_MYSC_CR_MX B where B.MYID=(select mainid from CK_MYSC_CR C where C.scdsubid=A.subid)) '); diff --git a/浜戠繑鐢熶骇绠$悊(MYSC.dll)/U_PBCGRKList_RCDJ.pas b/浜戠繑鐢熶骇绠$悊(MYSC.dll)/U_PBCGRKList_RCDJ.pas index 71a843f..7c8ec81 100644 --- a/浜戠繑鐢熶骇绠$悊(MYSC.dll)/U_PBCGRKList_RCDJ.pas +++ b/浜戠繑鐢熶骇绠$悊(MYSC.dll)/U_PBCGRKList_RCDJ.pas @@ -11,32 +11,20 @@ uses cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, RM_e_Xls, Menus, cxButtonEdit, cxDropDownEdit, cxPC, Buttons, cxTextEdit, cxLookAndFeels, - cxLookAndFeelPainters, cxNavigator, dxSkinsCore, - dxSkinDarkRoom, - - - - - - - - dxSkinOffice2013White, - dxSkinSharpPlus, dxSkinSpringTime, - dxSkinsDefaultPainters, - - dxSkinscxPCPainter, dxSkinBlack, dxSkinBlue, dxSkinBlueprint, - dxSkinCaramel, dxSkinCoffee, dxSkinDarkSide, dxSkinDevExpressDarkStyle, - dxSkinDevExpressStyle, dxSkinFoggy, dxSkinGlassOceans, - dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, dxSkinLiquidSky, - dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, + cxLookAndFeelPainters, cxNavigator, dxSkinsCore, dxSkinDarkRoom, + dxSkinOffice2013White, dxSkinSharpPlus, dxSkinSpringTime, + dxSkinsDefaultPainters, dxSkinscxPCPainter, dxSkinBlack, dxSkinBlue, + dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkSide, + dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy, + dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, + dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink, dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, - dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, - dxSkinOffice2013LightGray, dxSkinPumpkin, dxSkinSeven, - dxSkinSevenClassic, dxSkinSharp, dxSkinSilver, dxSkinStardust, - dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinValentine, dxSkinVS2010, - dxSkinWhiteprint, dxSkinXmas2008Blue; + dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, dxSkinOffice2013LightGray, + dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSilver, + dxSkinStardust, dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinValentine, + dxSkinVS2010, dxSkinWhiteprint, dxSkinXmas2008Blue; type TfrmPBCGRKList_RCDJ = class(TForm) diff --git a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/ProjectGroup1.bpg b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/ProjectGroup1.bpg index 7c050f6..e6b2914 100644 --- a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/ProjectGroup1.bpg +++ b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/ProjectGroup1.bpg @@ -9,7 +9,7 @@ MAKE = $(ROOT)\bin\make.exe -$(MAKEFLAGS) -f$** DCC = $(ROOT)\bin\dcc32.exe $** BRCC = $(ROOT)\bin\brcc32.exe $** #------------------------------------------------------------------------------ -PROJECTS = testDll.exe ProductPrice.dll +PROJECTS = testDll.exe #------------------------------------------------------------------------------ default: $(PROJECTS) #------------------------------------------------------------------------------ @@ -17,7 +17,4 @@ default: $(PROJECTS) testDll.exe: testDll.dpr $(DCC) -ProductPrice.dll: ProductPrice.dpr - $(DCC) - diff --git a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_CPAdd.dfm b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_CPAdd.dfm index ba647dc..b447b17 100644 --- a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_CPAdd.dfm +++ b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_CPAdd.dfm @@ -8,7 +8,7 @@ object frmCPAdd: TfrmCPAdd Color = clBtnFace Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -13 + Font.Height = -12 Font.Name = #23435#20307 Font.Style = [] OldCreateOrder = False @@ -16,15 +16,15 @@ object frmCPAdd: TfrmCPAdd WindowState = wsMaximized OnDestroy = FormDestroy OnShow = FormShow - PixelsPerInch = 107 - TextHeight = 13 + PixelsPerInch = 96 + TextHeight = 12 object ToolBar1: TToolBar Left = 0 Top = 0 - Width = 1392 + Width = 1400 Height = 27 ButtonHeight = 30 - ButtonWidth = 61 + ButtonWidth = 59 Caption = 'ToolBar1' Color = clSkyBlue DisabledImages = DataLink_YPGLBOM.ThreeImgList @@ -43,7 +43,7 @@ object frmCPAdd: TfrmCPAdd OnClick = ToolButton1Click end object TBClose: TToolButton - Left = 65 + Left = 63 Top = 0 AutoSize = True Caption = #20851#38381 @@ -54,12 +54,12 @@ object frmCPAdd: TfrmCPAdd object cxGrid1: TcxGrid Left = 0 Top = 27 - Width = 1392 - Height = 82 + Width = 1400 + Height = 76 Align = alTop TabOrder = 1 object Tv1: TcxGridDBTableView - NavigatorButtons.ConfirmDelete = False + Navigator.Buttons.CustomButtons = <> DataController.DataSource = DataSource2 DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] DataController.Summary.DefaultGroupSummaryItems = <> @@ -343,14 +343,14 @@ object frmCPAdd: TfrmCPAdd end end object cxGrid5: TcxGrid - Left = 21 - Top = 848 - Width = 1383 - Height = 15 + Left = 19 + Top = 783 + Width = 1277 + Height = 14 TabOrder = 2 Visible = False object tv5: TcxGridDBTableView - NavigatorButtons.ConfirmDelete = False + Navigator.Buttons.CustomButtons = <> DataController.DataSource = DataSource5 DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] DataController.Summary.DefaultGroupSummaryItems = <> @@ -475,9 +475,9 @@ object frmCPAdd: TfrmCPAdd end object Panel8: TPanel Left = 0 - Top = 239 - Width = 1392 - Height = 349 + Top = 223 + Width = 1400 + Height = 322 Align = alTop BevelInner = bvRaised BevelOuter = bvLowered @@ -485,19 +485,19 @@ object frmCPAdd: TfrmCPAdd object Panel1: TPanel Left = 2 Top = 2 - Width = 1052 - Height = 345 + Width = 1085 + Height = 318 Align = alClient TabOrder = 0 object cxGrid2: TcxGrid Left = 1 - Top = 52 - Width = 1050 - Height = 92 + Top = 50 + Width = 1083 + Height = 85 Align = alTop TabOrder = 0 object Tv2: TcxGridDBTableView - NavigatorButtons.ConfirmDelete = False + Navigator.Buttons.CustomButtons = <> DataController.DataSource = DataSource3 DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] DataController.Summary.DefaultGroupSummaryItems = <> @@ -687,8 +687,8 @@ object frmCPAdd: TfrmCPAdd end object ToolBar2: TToolBar Left = 1 - Top = 22 - Width = 1050 + Top = 20 + Width = 1083 Height = 30 AutoSize = True ButtonHeight = 30 @@ -771,13 +771,13 @@ object frmCPAdd: TfrmCPAdd end object cxGrid3: TcxGrid Left = 1 - Top = 179 - Width = 1050 - Height = 165 + Top = 170 + Width = 1083 + Height = 147 Align = alClient TabOrder = 2 object Tv3: TcxGridDBTableView - NavigatorButtons.ConfirmDelete = False + Navigator.Buttons.CustomButtons = <> DataController.DataSource = DataSource4 DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] DataController.Summary.DefaultGroupSummaryItems = <> @@ -962,8 +962,8 @@ object frmCPAdd: TfrmCPAdd end object ToolBar4: TToolBar Left = 1 - Top = 152 - Width = 1050 + Top = 143 + Width = 1083 Height = 27 ButtonHeight = 30 ButtonWidth = 59 @@ -1012,19 +1012,20 @@ object frmCPAdd: TfrmCPAdd object cxTabControl1: TcxTabControl Left = 1 Top = 1 - Width = 1050 - Height = 21 + Width = 1083 + Height = 19 Align = alTop Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -13 + Font.Height = -12 Font.Name = #23435#20307 Font.Style = [] ParentFont = False - Style = 9 - TabIndex = 0 TabOrder = 4 - Tabs.Strings = ( + Properties.CustomButtons.Buttons = <> + Properties.Style = 9 + Properties.TabIndex = 0 + Properties.Tabs.Strings = ( #31532#19968#23618 #31532#20108#23618 #31532#19977#23618 @@ -1035,14 +1036,13 @@ object frmCPAdd: TfrmCPAdd #31532#20843#23618) OnChange = cxTabControl1Change OnChanging = cxTabControl1Changing - ClientRectBottom = 21 - ClientRectRight = 1050 - ClientRectTop = 20 + ClientRectRight = 0 + ClientRectTop = 0 end object cxSplitter3: TcxSplitter Left = 1 - Top = 144 - Width = 1050 + Top = 135 + Width = 1083 Height = 8 HotZoneClassName = 'TcxMediaPlayer9Style' AlignSplitter = salTop @@ -1050,14 +1050,14 @@ object frmCPAdd: TfrmCPAdd end end object cxGrid7: TcxGrid - Left = 1062 + Left = 1095 Top = 2 - Width = 328 - Height = 345 + Width = 303 + Height = 318 Align = alRight TabOrder = 1 object TV11: TcxGridDBTableView - NavigatorButtons.ConfirmDelete = False + Navigator.Buttons.CustomButtons = <> DataController.DataSource = DataSource16 DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] DataController.Summary.DefaultGroupSummaryItems = <> @@ -1124,10 +1124,10 @@ object frmCPAdd: TfrmCPAdd end end object cxSplitter5: TcxSplitter - Left = 1054 + Left = 1087 Top = 2 Width = 8 - Height = 345 + Height = 318 HotZoneClassName = 'TcxMediaPlayer9Style' AlignSplitter = salRight Control = cxGrid7 @@ -1135,9 +1135,9 @@ object frmCPAdd: TfrmCPAdd end object Panel2: TPanel Left = 0 - Top = 596 - Width = 1392 - Height = 144 + Top = 553 + Width = 1400 + Height = 196 Align = alClient BevelInner = bvRaised BevelOuter = bvLowered @@ -1145,13 +1145,13 @@ object frmCPAdd: TfrmCPAdd object cxGrid4: TcxGrid Left = 2 Top = 32 - Width = 715 - Height = 110 + Width = 660 + Height = 162 Align = alLeft PopupMenu = PopupMenu1 TabOrder = 0 object Tv4: TcxGridDBTableView - NavigatorButtons.ConfirmDelete = False + Navigator.Buttons.CustomButtons = <> OnFocusedRecordChanged = Tv4FocusedRecordChanged DataController.DataSource = DataSource1 DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] @@ -1243,7 +1243,7 @@ object frmCPAdd: TfrmCPAdd object ToolBar3: TToolBar Left = 2 Top = 2 - Width = 1388 + Width = 1396 Height = 30 AutoSize = True ButtonHeight = 30 @@ -1386,18 +1386,18 @@ object frmCPAdd: TfrmCPAdd end end object GroupBox1: TGroupBox - Left = 717 + Left = 662 Top = 32 - Width = 673 - Height = 110 + Width = 736 + Height = 162 Align = alClient Caption = #26679#21697#32553#30053#22270#65288#21452#20987#22270#29255#26597#30475#21407#22270#65289 TabOrder = 2 object ScrollBox1: TScrollBox Left = 2 - Top = 15 - Width = 669 - Height = 93 + Top = 14 + Width = 732 + Height = 146 Align = alClient BevelInner = bvLowered BorderStyle = bsNone @@ -1407,8 +1407,8 @@ object frmCPAdd: TfrmCPAdd end object cxSplitter1: TcxSplitter Left = 0 - Top = 231 - Width = 1392 + Top = 103 + Width = 1400 Height = 8 HotZoneClassName = 'TcxMediaPlayer9Style' AlignSplitter = salTop @@ -1416,8 +1416,8 @@ object frmCPAdd: TfrmCPAdd end object cxSplitter4: TcxSplitter Left = 0 - Top = 588 - Width = 1392 + Top = 545 + Width = 1400 Height = 8 HotZoneClassName = 'TcxMediaPlayer9Style' AlignSplitter = salTop @@ -1425,13 +1425,13 @@ object frmCPAdd: TfrmCPAdd end object cxGrid6: TcxGrid Left = 0 - Top = 109 - Width = 1392 - Height = 63 + Top = 111 + Width = 1400 + Height = 58 Align = alTop TabOrder = 7 object TV6: TcxGridDBTableView - NavigatorButtons.ConfirmDelete = False + Navigator.Buttons.CustomButtons = <> DataController.DataSource = DataSource2 DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] DataController.Summary.DefaultGroupSummaryItems = <> @@ -1558,13 +1558,13 @@ object frmCPAdd: TfrmCPAdd end object cxGrid8: TcxGrid Left = 0 - Top = 172 - Width = 1392 - Height = 59 + Top = 169 + Width = 1400 + Height = 54 Align = alTop TabOrder = 8 object TV7: TcxGridDBTableView - NavigatorButtons.ConfirmDelete = False + Navigator.Buttons.CustomButtons = <> DataController.DataSource = DataSource2 DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] DataController.Summary.DefaultGroupSummaryItems = <> diff --git a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_CPAdd.pas b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_CPAdd.pas index cbd7070..8a45e17 100644 --- a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_CPAdd.pas +++ b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_CPAdd.pas @@ -1,18 +1,31 @@ unit U_CPAdd; interface + uses - Windows, Messages,strutils, SysUtils, Variants, Classes, Graphics, Controls, Forms, - Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + Windows, Messages, strutils, SysUtils, Variants, Classes, Graphics, Controls, + Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, DBClient, cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, - cxControls, cxGridCustomView, cxGrid, ComCtrls, ToolWin, - cxGridCustomPopupMenu, cxGridPopupMenu, cxTextEdit, cxButtonEdit, - StdCtrls, ExtCtrls, cxCurrencyEdit, cxDropDownEdit, cxPC, cxSplitter, - cxCheckBox, RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, - Menus,IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP, - RM_BarCode,ShellAPI,IniFiles,jpeg,U_SLT,Math, cxCalendar; - + cxControls, cxGridCustomView, cxGrid, ComCtrls, ToolWin, cxGridCustomPopupMenu, + cxGridPopupMenu, cxTextEdit, cxButtonEdit, StdCtrls, ExtCtrls, cxCurrencyEdit, + cxDropDownEdit, cxPC, cxSplitter, cxCheckBox, RM_Dataset, RM_System, RM_Common, + RM_Class, RM_GridReport, Menus, IdBaseComponent, IdComponent, IdTCPConnection, + IdTCPClient, IdFTP, RM_BarCode, ShellAPI, IniFiles, jpeg, U_SLT, Math, + cxCalendar, cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, dxSkinBlack, + dxSkinBlue, dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkRoom, + dxSkinDarkSide, dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy, + dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, + dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, + dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, + dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink, + dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, + dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, dxSkinOffice2013LightGray, + dxSkinOffice2013White, dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic, + dxSkinSharp, dxSkinSharpPlus, dxSkinSilver, dxSkinSpringTime, dxSkinStardust, + dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinsDefaultPainters, + dxSkinValentine, dxSkinVS2010, dxSkinWhiteprint, dxSkinXmas2008Blue, + dxSkinscxPCPainter, cxNavigator, dxBarBuiltInMenu; type TfrmCPAdd = class(TForm) @@ -260,25 +273,17 @@ type procedure TBCloseClick(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure v1Column8PropertiesEditValueChanged(Sender: TObject); - procedure v1Column2PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v1Column26PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v1Column27PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v1Column14PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); + procedure v1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1Column26PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1Column27PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1Column14PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure v1CYPrice1PropertiesEditValueChanged(Sender: TObject); - procedure v1DefStr10PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); + procedure v1DefStr10PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure ToolButton2Click(Sender: TObject); procedure v2CYPrice1PropertiesEditValueChanged(Sender: TObject); - procedure v1CPNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v2DefStr4PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v2DefStr5PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); + procedure v1CPNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v2DefStr4PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v2DefStr5PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure TMXSaveClick(Sender: TObject); procedure ToolButton7Click(Sender: TObject); procedure ToolButton8Click(Sender: TObject); @@ -286,75 +291,55 @@ type procedure ToolButton4Click(Sender: TObject); procedure ToolButton5Click(Sender: TObject); procedure ToolButton9Click(Sender: TObject); - procedure v1CYColorPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v1CYMFPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v1CYKZPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v1DefStr6PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v1CYSpecPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v2MLColorPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v4CYColorPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v3JGGXPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); + procedure v1CYColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1CYMFPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1CYKZPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1DefStr6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1CYSpecPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v2MLColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v4CYColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v3JGGXPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure cxTabControl1Change(Sender: TObject); - procedure v3JGFactoryNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v1DefStr7PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v2GYSNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v3GXDMPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); + procedure v3JGFactoryNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1DefStr7PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v2GYSNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v3GXDMPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure TClick(Sender: TObject); - procedure cxTabControl1Changing(Sender: TObject; - var AllowChange: Boolean); + procedure cxTabControl1Changing(Sender: TObject; var AllowChange: Boolean); procedure v2MLPricePropertiesEditValueChanged(Sender: TObject); procedure v3MLSunHaoPropertiesEditValueChanged(Sender: TObject); - procedure v3GYDMPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); + procedure v3GYDMPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure TDelClick(Sender: TObject); procedure TAddClick(Sender: TObject); - procedure v2MLCFPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v4ColorNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v2MLNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v3HXNoPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); + procedure v2MLCFPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v4ColorNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v2MLNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v3HXNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure TooladdClick(Sender: TObject); procedure ToPrintClick(Sender: TObject); procedure ColorNameChange(Sender: TObject); procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure TYSXBQClick(Sender: TObject); - procedure Tv4FocusedRecordChanged(Sender: TcxCustomGridTableView; - APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; - ANewItemRecordFocusingChanged: Boolean); + procedure Tv4FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); procedure ToolButton3Click(Sender: TObject); procedure FormDestroy(Sender: TObject); private - Fint:Integer; + Fint: Integer; procedure InitSubGrid(); - function SaveData():Boolean; - function getmaxNo(FsCPID,FsCPNO:string):string; - function MLSavedata(Order_ML:TClientDataSet):Boolean; - function JGSavedata(Order_JG:TClientDataSet;Order_ML:TClientDataSet):Boolean; + function SaveData(): Boolean; + function getmaxNo(FsCPID, FsCPNO: string): string; + function MLSavedata(Order_ML: TClientDataSet): Boolean; + function JGSavedata(Order_JG: TClientDataSet; Order_ML: TClientDataSet): Boolean; procedure COLSaveData(); - function ColMLSavedata(FMCYID:string):boolean; - function ColJGSaveData(FMXCYID:string):Boolean; + function ColMLSavedata(FMCYID: string): boolean; + function ColJGSaveData(FMXCYID: string): Boolean; procedure Appenddata(); procedure XJGenXin(); { Private declarations } public - FCYID,FCYCode,FCPID,FCPNO,FCPName:String; - CopyInt,Finteger:Integer; + FCYID, FCYCode, FCPID, FCPNO, FCPName: string; + CopyInt, Finteger: Integer; { Public declarations } end; @@ -364,31 +349,32 @@ var Mach: array of TfrmSlt; implementation + uses - U_DataLink,U_Fun,U_iniParam,U_ZDYHelp, U_ZdyAttachCP_HX_sel,U_CPManage_YPCXSel, - U_ZdyAttachCP_Type_sel,U_ZdyAttachGYS_CX,U_CPManage_YPCX,U_CPManage_ColCX, + U_DataLink, U_Fun, U_ZDYHelp, U_ZdyAttachCP_HX_sel, U_CPManage_YPCXSel, + U_ZdyAttachCP_Type_sel, U_ZdyAttachGYS_CX, U_CPManage_YPCX, U_CPManage_ColCX, U_FileUp; {$R *.dfm} procedure TfrmCPAdd.XJGenXin(); -var FXJ:double; +var + FXJ: double; begin Order_JG.DisableConstraints; with Order_JG do begin First; - FXJ:=0; + FXJ := 0; while not eof do begin - if FieldByName('IFZY').AsBoolean=true then + if FieldByName('IFZY').AsBoolean = true then begin - if FXJ=0 then - FXJ:=Order_ML.fieldbyname('MLMF').AsFloat*Order_ML.fieldbyname('MLKZ').AsFloat*Order_ML.fieldbyname('MLPrice').AsFloat - *(1+fieldbyname('MLSunHao').AsFloat)+fieldbyname('JGPrice').AsFloat + if FXJ = 0 then + FXJ := Order_ML.fieldbyname('MLMF').AsFloat * Order_ML.fieldbyname('MLKZ').AsFloat * Order_ML.fieldbyname('MLPrice').AsFloat * (1 + fieldbyname('MLSunHao').AsFloat) + fieldbyname('JGPrice').AsFloat else - FXJ:=FXJ*(1+fieldbyname('MLSunHao').AsFloat)+fieldbyname('JGPrice').AsFloat; + FXJ := FXJ * (1 + fieldbyname('MLSunHao').AsFloat) + fieldbyname('JGPrice').AsFloat; edit; - FieldByName('XJPrice').Value:=FXJ; + FieldByName('XJPrice').Value := FXJ; end; next; end; @@ -401,7 +387,7 @@ begin while not eof do begin edit; - FieldByName('ZPrice').Value:=FXJ; + FieldByName('ZPrice').Value := FXJ; Next; end; end; @@ -424,15 +410,15 @@ begin with Order_JG do begin append; - FieldByName('JGCengji').Value:=1; + FieldByName('JGCengji').Value := 1; Post; end; end; end; -function TfrmCPAdd.ColJGSaveData(FMXCYID:string):Boolean; +function TfrmCPAdd.ColJGSaveData(FMXCYID: string): Boolean; var - maxId:String; + maxId: string; begin try with ADOQueryCmd do @@ -440,7 +426,7 @@ begin close; sql.Clear; sql.Add('select * from CP_YDang_JG '); - sql.Add('where CYID='''+trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); + sql.Add('where CYID=''' + trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); open; end; with ADOQueryCmd do @@ -448,61 +434,62 @@ begin first; while not eof do begin - if GetLSNo(ADOQuery2,maxId,'','CP_YDang_JG',4,1)=False then + if GetLSNo(ADOQuery2, maxId, '', 'CP_YDang_JG', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('取最大号失败!','提示',0); + Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; with ADOQuery2 do begin Close; SQL.Clear; - sql.Add('select * from CP_YDang_JG where JGID='''+Trim(maxId)+''''); + sql.Add('select * from CP_YDang_JG where JGID=''' + Trim(maxId) + ''''); Open; end; with ADOQuery2 do begin Append; - FieldByName('JGID').Value:=Trim(maxid); - FieldByName('CYID').Value:=Trim(FMXCYID); - FieldByName('Filler').Value:=Trim(DName); - FieldByName('Filltime').Value:=SGetServerDate(ADOQueryTemp); - FieldByName('IFZY').Value:=ADOQueryCmd.fieldbyname('IFZY').AsBoolean; - FieldByName('JGCode').Value:=ADOQueryCmd.fieldbyname('JGCode').AsString; - FieldByName('JGCengJi').Value:=ADOQueryCmd.fieldbyname('JGCengJi').AsFloat; - FieldByName('JGGX').Value:=ADOQueryCmd.fieldbyname('JGGX').AsString; - FieldByName('GXDM').Value:=ADOQueryCmd.fieldbyname('GXDM').AsString; - FieldByName('JGFactoryName').Value:=ADOQueryCmd.fieldbyname('JGFactoryName').AsString; - FieldByName('GYName').Value:=ADOQueryCmd.fieldbyname('GYName').AsString; - FieldByName('GYDM').Value:=ADOQueryCmd.fieldbyname('GYDM').AsString; - FieldByName('HXNo').Value:=ADOQueryCmd.fieldbyname('HXNo').AsString; - FieldByName('MLKZ').Value:=ADOQueryCmd.fieldbyname('MLKZ').asfloat; - FieldByName('MLMF').Value:=ADOQueryCmd.fieldbyname('MLMF').asfloat; - FieldByName('SZSpec').Value:=ADOQueryCmd.fieldbyname('SZSpec').AsString; - FieldByName('JWMiDu').Value:=ADOQueryCmd.fieldbyname('JWMiDu').AsString; - FieldByName('MLColor').Value:=ADOQueryCmd.fieldbyname('MLColor').AsString; - FieldByName('MLSeHao').Value:=ADOQueryCmd.fieldbyname('MLSeHao').AsString; - FieldByName('JGNote').Value:=ADOQueryCmd.fieldbyname('JGNote').AsString; - FieldByName('Price').Value:=ADOQueryCmd.fieldbyname('Price').AsFloat; - FieldByName('MLSunHao').Value:=ADOQueryCmd.fieldbyname('MLSunHao').AsFloat; - FieldByName('JGPrice').Value:=ADOQueryCmd.fieldbyname('JGPrice').AsFloat; - FieldByName('XJPrice').Value:=ADOQueryCmd.fieldbyname('XJPrice').AsFloat; - FieldByName('CengJi').Value:=ADOQueryCmd.fieldbyname('CengJi').AsFloat; + FieldByName('JGID').Value := Trim(maxId); + FieldByName('CYID').Value := Trim(FMXCYID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('Filltime').Value := SGetServerDate(ADOQueryTemp); + FieldByName('IFZY').Value := ADOQueryCmd.fieldbyname('IFZY').AsBoolean; + FieldByName('JGCode').Value := ADOQueryCmd.fieldbyname('JGCode').AsString; + FieldByName('JGCengJi').Value := ADOQueryCmd.fieldbyname('JGCengJi').AsFloat; + FieldByName('JGGX').Value := ADOQueryCmd.fieldbyname('JGGX').AsString; + FieldByName('GXDM').Value := ADOQueryCmd.fieldbyname('GXDM').AsString; + FieldByName('JGFactoryName').Value := ADOQueryCmd.fieldbyname('JGFactoryName').AsString; + FieldByName('GYName').Value := ADOQueryCmd.fieldbyname('GYName').AsString; + FieldByName('GYDM').Value := ADOQueryCmd.fieldbyname('GYDM').AsString; + FieldByName('HXNo').Value := ADOQueryCmd.fieldbyname('HXNo').AsString; + FieldByName('MLKZ').Value := ADOQueryCmd.fieldbyname('MLKZ').asfloat; + FieldByName('MLMF').Value := ADOQueryCmd.fieldbyname('MLMF').asfloat; + FieldByName('SZSpec').Value := ADOQueryCmd.fieldbyname('SZSpec').AsString; + FieldByName('JWMiDu').Value := ADOQueryCmd.fieldbyname('JWMiDu').AsString; + FieldByName('MLColor').Value := ADOQueryCmd.fieldbyname('MLColor').AsString; + FieldByName('MLSeHao').Value := ADOQueryCmd.fieldbyname('MLSeHao').AsString; + FieldByName('JGNote').Value := ADOQueryCmd.fieldbyname('JGNote').AsString; + FieldByName('Price').Value := ADOQueryCmd.fieldbyname('Price').AsFloat; + FieldByName('MLSunHao').Value := ADOQueryCmd.fieldbyname('MLSunHao').AsFloat; + FieldByName('JGPrice').Value := ADOQueryCmd.fieldbyname('JGPrice').AsFloat; + FieldByName('XJPrice').Value := ADOQueryCmd.fieldbyname('XJPrice').AsFloat; + FieldByName('CengJi').Value := ADOQueryCmd.fieldbyname('CengJi').AsFloat; Post; end; next; end; end; - except; + except + ; ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('保存失败!','提示',0); + Application.MessageBox('保存失败!', '提示', 0); end; end; -function TfrmCPAdd.ColMLSavedata(FMCYID:string):boolean; +function TfrmCPAdd.ColMLSavedata(FMCYID: string): boolean; var - maxId:String; + maxId: string; begin try with ADOQueryCmd do @@ -510,7 +497,7 @@ begin close; sql.Clear; sql.Add('select * from CP_YDang_ML '); - sql.Add('where CYID='''+trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); + sql.Add('where CYID=''' + trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); open; end; with ADOQueryCmd do @@ -518,57 +505,58 @@ begin first; while not eof do begin - if GetLSNo(ADOQuery2,maxId,'','CP_YDang_ML',4,1)=False then + if GetLSNo(ADOQuery2, maxId, '', 'CP_YDang_ML', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('取最大号失败!','提示',0); + Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; with ADOQuery2 do begin Close; SQL.Clear; - sql.Add('select * from CP_YDang_ML where MLID='''+Trim(maxId)+''''); + sql.Add('select * from CP_YDang_ML where MLID=''' + Trim(maxId) + ''''); Open; end; with ADOQuery2 do begin Append; - FieldByName('MLID').Value:=Trim(maxId); - FieldByName('CYID').Value:=Trim(FMCYID); - FieldByName('Filler').Value:=Trim(DName); - FieldByName('Filltime').Value:=SGetServerDate(ADOQueryTemp); - FieldByName('CengJi').Value:=ADOQueryCmd.fieldbyname('CengJi').AsFloat; - FieldByName('IFSel').Value:=ADOQueryCmd.fieldbyname('IFSel').AsBoolean; - FieldByName('MLCode').Value:=ADOQueryCmd.fieldbyname('MLCode').AsString; - FieldByName('GYSName').Value:=ADOQueryCmd.fieldbyname('GYSName').AsString; - FieldByName('MLName').Value:=ADOQueryCmd.fieldbyname('MLName').AsString; - FieldByName('SZSpec').Value:=ADOQueryCmd.fieldbyname('SZSpec').AsString; - FieldByName('JWMiDu').Value:=ADOQueryCmd.fieldbyname('JWMiDu').AsString; - FieldByName('MLMF').Value:=ADOQueryCmd.fieldbyname('MLMF').AsFloat; - FieldByName('MLKZ').Value:=ADOQueryCmd.fieldbyname('MLKZ').AsFloat; - FieldByName('LXRen').Value:=ADOQueryCmd.fieldbyname('LXRen').AsString; - FieldByName('LXTel').Value:=ADOQueryCmd.fieldbyname('LXTel').AsString; - FieldByName('MLCF').Value:=ADOQueryCmd.fieldbyname('MLCF').AsString; - FieldByName('MLNote').Value:=ADOQueryCmd.fieldbyname('MLNote').AsString; - FieldByName('MLPrice').Value:=ADOQueryCmd.fieldbyname('MLPrice').AsFloat; - FieldByName('MLSunHao').Value:=ADOQueryCmd.fieldbyname('MLSunHao').AsFloat; - FieldByName('ZPrice').Value:=ADOQueryCmd.fieldbyname('ZPrice').AsFloat; - FieldByName('JGZPrice').Value:=ADOQueryCmd.fieldbyname('JGZPrice').AsFloat; + FieldByName('MLID').Value := Trim(maxId); + FieldByName('CYID').Value := Trim(FMCYID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('Filltime').Value := SGetServerDate(ADOQueryTemp); + FieldByName('CengJi').Value := ADOQueryCmd.fieldbyname('CengJi').AsFloat; + FieldByName('IFSel').Value := ADOQueryCmd.fieldbyname('IFSel').AsBoolean; + FieldByName('MLCode').Value := ADOQueryCmd.fieldbyname('MLCode').AsString; + FieldByName('GYSName').Value := ADOQueryCmd.fieldbyname('GYSName').AsString; + FieldByName('MLName').Value := ADOQueryCmd.fieldbyname('MLName').AsString; + FieldByName('SZSpec').Value := ADOQueryCmd.fieldbyname('SZSpec').AsString; + FieldByName('JWMiDu').Value := ADOQueryCmd.fieldbyname('JWMiDu').AsString; + FieldByName('MLMF').Value := ADOQueryCmd.fieldbyname('MLMF').AsFloat; + FieldByName('MLKZ').Value := ADOQueryCmd.fieldbyname('MLKZ').AsFloat; + FieldByName('LXRen').Value := ADOQueryCmd.fieldbyname('LXRen').AsString; + FieldByName('LXTel').Value := ADOQueryCmd.fieldbyname('LXTel').AsString; + FieldByName('MLCF').Value := ADOQueryCmd.fieldbyname('MLCF').AsString; + FieldByName('MLNote').Value := ADOQueryCmd.fieldbyname('MLNote').AsString; + FieldByName('MLPrice').Value := ADOQueryCmd.fieldbyname('MLPrice').AsFloat; + FieldByName('MLSunHao').Value := ADOQueryCmd.fieldbyname('MLSunHao').AsFloat; + FieldByName('ZPrice').Value := ADOQueryCmd.fieldbyname('ZPrice').AsFloat; + FieldByName('JGZPrice').Value := ADOQueryCmd.fieldbyname('JGZPrice').AsFloat; Post; end; next; end; end; - except; + except + ; ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('保存失败!','提示',0); + Application.MessageBox('保存失败!', '提示', 0); end; end; procedure TfrmCPAdd.ColSaveData(); var - maxId:String; + maxId: string; begin try with Order_Sub do @@ -576,51 +564,55 @@ begin first; while not Eof do begin - if FieldByName('CLRID').AsString='' then + if FieldByName('CLRID').AsString = '' then begin - if GetLSNo(ADOQueryCmd,maxId,'CX','CP_YDang_Color',4,1)=False then + if GetLSNo(ADOQueryCmd, maxId, 'CX', 'CP_YDang_Color', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('取最大号失败!','提示',0); + Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; end else - Maxid:=Trim(FieldByName('CLRID').AsString); + maxId := Trim(FieldByName('CLRID').AsString); with ADOQueryCmd do begin Close; SQL.Clear; - sql.Add('select * from CP_YDang_Color where CLRID='''+Trim(maxId)+''''); + sql.Add('select * from CP_YDang_Color where CLRID=''' + Trim(maxId) + ''''); Open; end; with ADOQueryCmd do begin - if IsEmpty then Append else edit; - FieldByName('CLRID').Value:=Trim(maxId); - fieldbyname('CYNo').Value:=Trim(CDS_Sub.Fieldbyname('CYNo').AsString)+Trim(Order_Sub.Fieldbyname('ColorNo').AsString); - FieldByName('CYID').Value:=Trim(CDS_Sub.Fieldbyname('CYID').AsString); - SSetSaveDataCDSNew(ADOQueryCmd,Tv4,Order_Sub,'CP_YDang_Color',0); + if IsEmpty then + Append + else + edit; + FieldByName('CLRID').Value := Trim(maxId); + fieldbyname('CYNo').Value := Trim(CDS_Sub.Fieldbyname('CYNo').AsString) + Trim(Order_Sub.Fieldbyname('ColorNo').AsString); + FieldByName('CYID').Value := Trim(CDS_Sub.Fieldbyname('CYID').AsString); + SSetSaveDataCDSNew(ADOQueryCmd, Tv4, Order_Sub, 'CP_YDang_Color', 0); Post; end; with Order_Sub do begin edit; - FieldByName('CYID').Value:=Trim(CDS_Sub.Fieldbyname('CYID').AsString); - FieldByName('CLRID').value:=Trim(maxId); + FieldByName('CYID').Value := Trim(CDS_Sub.Fieldbyname('CYID').AsString); + FieldByName('CLRID').value := Trim(maxId); end; next; end; end; - except; + except + ; ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('保存失败!','提示',0); + Application.MessageBox('保存失败!', '提示', 0); end; end; -function TfrmCPAdd.MLSavedata(Order_ML:TClientDataSet):Boolean; +function TfrmCPAdd.MLSavedata(Order_ML: TClientDataSet): Boolean; var - maxId:String; + maxId: string; begin try ADOQueryCmd.Connection.BeginTrans; @@ -629,23 +621,24 @@ begin first; while not eof do begin - if Trim(Order_ML.fieldbyname('MLID').AsString)='' then + if Trim(Order_ML.fieldbyname('MLID').AsString) = '' then begin - if GetLSNo(ADOQueryCmd,maxId,'','CP_YDang_ML',4,1)=False then + if GetLSNo(ADOQueryCmd, maxId, '', 'CP_YDang_ML', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('取最大号失败!','提示',0); + Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; - end else + end + else begin - maxId:=Trim(Order_ML.fieldbyname('MLID').AsString); + maxId := Trim(Order_ML.fieldbyname('MLID').AsString); end; with ADOQueryCmd do begin Close; SQL.Clear; - sql.Add('select * from CP_YDang_ML where MLID='''+Trim(maxId)+''''); + sql.Add('select * from CP_YDang_ML where MLID=''' + Trim(maxId) + ''''); Open; end; with ADOQueryCmd do @@ -653,43 +646,45 @@ begin if IsEmpty then begin Append; - end else + end + else begin Edit; end; - FieldByName('MLID').Value:=Trim(maxId); - SSetSaveDataCDSNew(ADOQueryCmd,Tv2,Order_ML,'CP_YDang_ML',0); - FieldByName('IFSel').Value:=Order_ML.fieldbyname('IFSel').AsBoolean; - FieldByName('CYID').Value:=Trim(FCYID); - FieldByName('Filler').Value:=Trim(DName); - FieldByName('Filltime').Value:=SGetServerDate(ADOQueryTemp); - FieldByName('MLPrice').Value:=Order_ML.fieldbyname('MLPrice').AsFloat; - FieldByName('MLSunHao').Value:=Order_ML.fieldbyname('MLSunHao').AsFloat; - FieldByName('ZPrice').Value:=Order_ML.fieldbyname('ZPrice').AsFloat; - FieldByName('JGZPrice').Value:=Order_ML.fieldbyname('JGZPrice').AsFloat; - FieldByName('cengji').Value:=cxTabControl1.TabIndex+1; + FieldByName('MLID').Value := Trim(maxId); + SSetSaveDataCDSNew(ADOQueryCmd, Tv2, Order_ML, 'CP_YDang_ML', 0); + FieldByName('IFSel').Value := Order_ML.fieldbyname('IFSel').AsBoolean; + FieldByName('CYID').Value := Trim(FCYID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('Filltime').Value := SGetServerDate(ADOQueryTemp); + FieldByName('MLPrice').Value := Order_ML.fieldbyname('MLPrice').AsFloat; + FieldByName('MLSunHao').Value := Order_ML.fieldbyname('MLSunHao').AsFloat; + FieldByName('ZPrice').Value := Order_ML.fieldbyname('ZPrice').AsFloat; + FieldByName('JGZPrice').Value := Order_ML.fieldbyname('JGZPrice').AsFloat; + FieldByName('cengji').Value := cxTabControl1.TabIndex + 1; Post; end; with Order_ML do begin edit; - FieldByName('CYID').Value:=Trim(FCYID); - FieldByName('MLID').Value:=Trim(maxid); + FieldByName('CYID').Value := Trim(FCYID); + FieldByName('MLID').Value := Trim(maxId); end; next; end; end; //Application.MessageBox('保存成功!','提示',0); ADOQueryCmd.Connection.CommitTrans; - except; + except + ; ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('保存失败!','提示',0); + Application.MessageBox('保存失败!', '提示', 0); end; end; -function TfrmCPAdd.JGSavedata(Order_JG:TClientDataSet;Order_ML:TClientDataSet):Boolean; +function TfrmCPAdd.JGSavedata(Order_JG: TClientDataSet; Order_ML: TClientDataSet): Boolean; var - maxId:String; + maxId: string; begin try ADOQueryCmd.Connection.BeginTrans; @@ -698,23 +693,24 @@ begin first; while not eof do begin - if Trim(Order_JG.fieldbyname('JGID').AsString)='' then + if Trim(Order_JG.fieldbyname('JGID').AsString) = '' then begin - if GetLSNo(ADOQueryCmd,maxId,'','CP_YDang_JG',4,1)=False then + if GetLSNo(ADOQueryCmd, maxId, '', 'CP_YDang_JG', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('取最大号失败!','提示',0); + Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; - end else + end + else begin - maxId:=Trim(Order_JG.fieldbyname('JGID').AsString); + maxId := Trim(Order_JG.fieldbyname('JGID').AsString); end; with ADOQueryCmd do begin Close; SQL.Clear; - sql.Add('select * from CP_YDang_JG where JGID='''+Trim(maxId)+''''); + sql.Add('select * from CP_YDang_JG where JGID=''' + Trim(maxId) + ''''); Open; end; with ADOQueryCmd do @@ -722,28 +718,29 @@ begin if IsEmpty then begin Append; - end else + end + else begin Edit; end; - FieldByName('JGID').Value:=Trim(maxid); + FieldByName('JGID').Value := Trim(maxId); //FieldByName('MLID').Value:=Trim(Order_ML.fieldbyname('MLID').AsString); - SSetSaveDataCDSNew(ADOQueryCmd,Tv3,Order_JG,'CP_YDang_JG',0); - FieldByName('CYID').Value:=Trim(FCYID); - FieldByName('Filler').Value:=Trim(DName); - FieldByName('Filltime').Value:=SGetServerDate(ADOQueryTemp); - FieldByName('Price').Value:=Order_JG.fieldbyname('Price').AsFloat; - FieldByName('IFZY').Value:=Order_JG.fieldbyname('IFZY').AsBoolean; - FieldByName('MLSunHao').Value:=Order_JG.fieldbyname('MLSunHao').AsFloat; - FieldByName('JGPrice').Value:=Order_JG.fieldbyname('JGPrice').AsFloat; - FieldByName('CengJi').Value:=cxTabControl1.TabIndex+1; + SSetSaveDataCDSNew(ADOQueryCmd, Tv3, Order_JG, 'CP_YDang_JG', 0); + FieldByName('CYID').Value := Trim(FCYID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('Filltime').Value := SGetServerDate(ADOQueryTemp); + FieldByName('Price').Value := Order_JG.fieldbyname('Price').AsFloat; + FieldByName('IFZY').Value := Order_JG.fieldbyname('IFZY').AsBoolean; + FieldByName('MLSunHao').Value := Order_JG.fieldbyname('MLSunHao').AsFloat; + FieldByName('JGPrice').Value := Order_JG.fieldbyname('JGPrice').AsFloat; + FieldByName('CengJi').Value := cxTabControl1.TabIndex + 1; Post; end; with Order_JG do begin edit; - FieldByName('CYID').Value:=Trim(FCYID); - FieldByName('JGID').Value:=Trim(maxid); + FieldByName('CYID').Value := Trim(FCYID); + FieldByName('JGID').Value := Trim(maxId); //FieldByName('MLID').Value:=Trim(Order_ML.fieldbyname('MLID').AsString); end; next; @@ -751,35 +748,36 @@ begin end; //Application.MessageBox('保存成功!','提示',0); ADOQueryCmd.Connection.CommitTrans; - except; + except + ; ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('保存失败!','提示',0); + Application.MessageBox('保存失败!', '提示', 0); end; end; -function TfrmCPAdd.getmaxNo(FsCPID,FsCPNO:string):string; +function TfrmCPAdd.getmaxNo(FsCPID, FsCPNO: string): string; var - str1:string; - i:integer; + str1: string; + i: integer; begin with ADOQueryTemp do begin close; sql.Clear; - sql.Add('select MAX(CYNo) as CYNo from CP_YDang where CYType='''+trim(FsCPID)+''' '); + sql.Add('select MAX(CYNo) as CYNo from CP_YDang where CYType=''' + trim(FsCPID) + ''' '); open; end; - IF trim(ADOQueryTemp.fieldbyname('CYNo').AsString)='' then + if trim(ADOQueryTemp.fieldbyname('CYNo').AsString) = '' then begin - str1:='000100'; + str1 := '000100'; end else begin - i:=10000+strtoint(leftstr(rightstr(trim(ADOQueryTemp.fieldbyname('CYNo').AsString),6),4))+1; - str1:=rightstr(inttostr(i),4)+'00'; + i := 10000 + strtoint(leftstr(rightstr(trim(ADOQueryTemp.fieldbyname('CYNo').AsString), 6), 4)) + 1; + str1 := rightstr(inttostr(i), 4) + '00'; end; - result:=FsCPNO+str1; + result := FsCPNO + str1; end; procedure TfrmCPAdd.InitSubGrid(); @@ -790,18 +788,18 @@ begin begin Close; SQL.Clear; - SQL.Add('select * from CP_YDang A left join CP_Type B on B.CPID=A.CYType where A.CYID='''+Trim(FCYID)+''''); + SQL.Add('select * from CP_YDang A left join CP_Type B on B.CPID=A.CYType where A.CYID=''' + Trim(FCYID) + ''''); Open; end; - SCreateCDS20(ADOQueryMain,CDS_Sub); - SInitCDSData20(ADOQueryMain,CDS_Sub); - if CopyInt<>0 then + SCreateCDS20(ADOQueryMain, CDS_Sub); + SInitCDSData20(ADOQueryMain, CDS_Sub); + if CopyInt <> 0 then begin with CDS_Sub do begin edit; - FieldByName('DefStr10').Value:=''; - FieldByName('PRTDM').Value:=''; + FieldByName('DefStr10').Value := ''; + FieldByName('PRTDM').Value := ''; end; end; with ADOQuery1 do @@ -811,15 +809,15 @@ begin SQL.Add('select A.* '); sql.Add(',TuPian=(case when isnull((select Top 1 C.CYID from XD_File C where C.CYID=A.CYID and C.FileType=''YP''),'''')='''' then '''' else ''是'' end)'); sql.Add(' from CP_YDang_Color A'); - if CopyInt=2 then + if CopyInt = 2 then //sql.Add('where CYID='''+trim(FCPID)+'''') - sql.Add('where 1=2') + sql.Add('where 1=2') else - sql.Add('where CYID='''+trim(FCYID)+''''); + sql.Add('where CYID=''' + trim(FCYID) + ''''); Open; end; - SCreateCDS20(ADOQuery1,Order_Sub); - SInitCDSData20(ADOQuery1,Order_Sub); + SCreateCDS20(ADOQuery1, Order_Sub); + SInitCDSData20(ADOQuery1, Order_Sub); finally ADOQueryMain.EnableControls; end; @@ -827,27 +825,27 @@ end; procedure TfrmCPAdd.FormShow(Sender: TObject); var - fsj,FFSj,FFQZSj,FFFSj,FFType:String; - FFInt,i,j:Integer; - ii:LongInt; + fsj, FFSj, FFQZSj, FFFSj, FFType: string; + FFInt, i, j: Integer; + ii: LongInt; begin - ReadCxGrid('样品编辑N',Tv1,'样品管理'); - ReadCxGrid('样品编辑N2'+inttostr(cxtabcontrol1.TabIndex),Tv2,'样品管理'); - ReadCxGrid('样品编辑N3'+inttostr(cxtabcontrol1.TabIndex),Tv3,'样品管理'); - ReadCxGrid('样品编辑N4',Tv4,'样品管理'); - ReadCxGrid('样品编辑N11',Tv11,'样品管理'); + ReadCxGrid('样品编辑N', Tv1, '样品管理'); + ReadCxGrid('样品编辑N2' + inttostr(cxtabcontrol1.TabIndex), Tv2, '样品管理'); + ReadCxGrid('样品编辑N3' + inttostr(cxtabcontrol1.TabIndex), Tv3, '样品管理'); + ReadCxGrid('样品编辑N4', Tv4, '样品管理'); + ReadCxGrid('样品编辑N11', Tv11, '样品管理'); InitSubGrid(); - IF trim(FCYID)='' then + if trim(FCYID) = '' then begin if CDS_Sub.IsEmpty then begin CDS_Sub.Append; - CDS_Sub.FieldByName('CYNo').Value:=''; - CDS_Sub.FieldByName('XTNo').Value:=''; - CDS_Sub.FieldByName('CPName').Value:=Trim(FCPName); - CDS_Sub.FieldByName('CYType').Value:=trim(FCPID); - CDS_Sub.FieldByName('CYPrice6').Value:=1; - CDS_Sub.FieldByName('CYPrice13').Value:=1; + CDS_Sub.FieldByName('CYNo').Value := ''; + CDS_Sub.FieldByName('XTNo').Value := ''; + CDS_Sub.FieldByName('CPName').Value := Trim(FCPName); + CDS_Sub.FieldByName('CYType').Value := trim(FCPID); + CDS_Sub.FieldByName('CYPrice6').Value := 1; + CDS_Sub.FieldByName('CYPrice13').Value := 1; CDS_Sub.Post; end; end; @@ -856,12 +854,12 @@ begin Close; sql.Clear; SQL.Add('select * from CP_YDang_ML '); - SQL.Add('where CYID='''+trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); - sql.Add(' and CengJi='''+trim(IntToStr(cxTabControl1.TabIndex+1))+''''); + SQL.Add('where CYID=''' + trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); + sql.Add(' and CengJi=''' + trim(IntToStr(cxTabControl1.TabIndex + 1)) + ''''); open; end; - SCreateCDS20(ADOQuery1,Order_ML); - SInitCDSData20(ADOQuery1,Order_ML); + SCreateCDS20(ADOQuery1, Order_ML); + SInitCDSData20(ADOQuery1, Order_ML); with ADOQuery1 do begin Close; @@ -870,33 +868,33 @@ begin sql.Add(',HXNo=(select Top 1 B.HXNo from CP_YDang_JG B where B.CengJi=A.CengJi and B.CYID=A.CYID and B.IFZY=1)'); sql.Add(',GYDM=(select Top 1 B.GYDM from CP_YDang_JG B where B.CengJi=A.CengJi and B.CYID=A.CYID and B.IFZY=1)'); sql.Add(' from CP_YDang_ML A '); - SQL.Add('where A.CYID='''+trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); + SQL.Add('where A.CYID=''' + trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); sql.Add(' and A.IFSel=1 '); sql.Add(' order by A.Cengji,A.MLID'); open; end; - SCreateCDS20(ADOQuery1,CJ_Mianliao); - SInitCDSData20(ADOQuery1,CJ_Mianliao); + SCreateCDS20(ADOQuery1, CJ_Mianliao); + SInitCDSData20(ADOQuery1, CJ_Mianliao); with ADOQuery2 do begin Close; sql.Clear; SQL.Add('select * from CP_YDang_JG '); - SQL.Add('where CYID='''+trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); - sql.Add(' and CengJi='''+trim(IntToStr(cxTabControl1.TabIndex+1))+''''); + SQL.Add('where CYID=''' + trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); + sql.Add(' and CengJi=''' + trim(IntToStr(cxTabControl1.TabIndex + 1)) + ''''); open; end; - SCreateCDS20(ADOQuery2,Order_JG); - SInitCDSData20(ADOQuery2,Order_JG); - if CopyInt<>0 then + SCreateCDS20(ADOQuery2, Order_JG); + SInitCDSData20(ADOQuery2, Order_JG); + if CopyInt <> 0 then begin - FCYID:=''; + FCYID := ''; CDS_Sub.edit; - if CopyInt<>1 then + if CopyInt <> 1 then begin - CDS_Sub.FieldByName('JCCYNO').Value:=trim(CDS_Sub.fieldbyname('CYNO').AsString); + CDS_Sub.FieldByName('JCCYNO').Value := trim(CDS_Sub.fieldbyname('CYNO').AsString); end; - CDS_Sub.FieldByName('XTNo').Value:=''; + CDS_Sub.FieldByName('XTNo').Value := ''; //CDS_Sub.FieldByName('CYNo').Value:=''; CDS_Sub.Post; with Order_ML do @@ -905,8 +903,8 @@ begin while not eof do begin Order_ML.edit; - Order_ML.FieldByName('MLID').Value:=''; - Order_ML.FieldByName('CYID').Value:=''; + Order_ML.FieldByName('MLID').Value := ''; + Order_ML.FieldByName('CYID').Value := ''; Order_ML.Post; next; end; @@ -917,9 +915,9 @@ begin while not eof do begin Order_JG.edit; - Order_JG.FieldByName('CYID').Value:=''; - Order_JG.FieldByName('MLID').Value:=''; - Order_JG.FieldByName('JGID').Value:=''; + Order_JG.FieldByName('CYID').Value := ''; + Order_JG.FieldByName('MLID').Value := ''; + Order_JG.FieldByName('JGID').Value := ''; Order_JG.Post; next; end; @@ -930,8 +928,8 @@ begin while not eof do begin edit; - FieldByName('CYID').Value:=''; - FieldByName('CLRID').Value:=''; + FieldByName('CYID').Value := ''; + FieldByName('CLRID').Value := ''; Post; next; end; @@ -942,173 +940,180 @@ end; procedure TfrmCPAdd.TBCloseClick(Sender: TObject); begin - WriteCxGrid('样品编辑N',Tv1,'样品管理'); - WriteCxGrid('样品编辑N2'+inttostr(cxtabcontrol1.TabIndex),Tv2,'样品管理'); - WriteCxGrid('样品编辑N3'+inttostr(cxtabcontrol1.TabIndex),Tv3,'样品管理'); - WriteCxGrid('样品编辑N4',Tv4,'样品管理'); - WriteCxGrid('样品编辑N11',Tv11,'样品管理'); + WriteCxGrid('样品编辑N', Tv1, '样品管理'); + WriteCxGrid('样品编辑N2' + inttostr(cxtabcontrol1.TabIndex), Tv2, '样品管理'); + WriteCxGrid('样品编辑N3' + inttostr(cxtabcontrol1.TabIndex), Tv3, '样品管理'); + WriteCxGrid('样品编辑N4', Tv4, '样品管理'); + WriteCxGrid('样品编辑N11', Tv11, '样品管理'); Close; end; -function TfrmCPAdd.SaveData():Boolean; +function TfrmCPAdd.SaveData(): Boolean; var - maxId,FPRTDM,XTMaxID:String; + maxId, FPRTDM, XTMaxID: string; begin try ADOQueryCmd.Connection.BeginTrans; - FPRTDM:=Trim(CDS_Sub.fieldbyname('PRTDM').AsString); - if CDS_Sub.FieldByName('XTNo').AsString='' then + FPRTDM := Trim(CDS_Sub.fieldbyname('PRTDM').AsString); + if CDS_Sub.FieldByName('XTNo').AsString = '' then begin - if GetLSNo(ADOQueryCmd,XTMaxID,FPRTDM,'CP_YDang',5,0)=False then + if GetLSNo(ADOQueryCmd, XTMaxID, FPRTDM, 'CP_YDang', 5, 0) = False then begin - Result:=False; + Result := False; ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('取最大号失败!','提示',0); + Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; end else - XTMaxID:=Trim(CDS_Sub.fieldbyname('XTNo').AsString); - if Trim(FCYID)='' then + XTMaxID := Trim(CDS_Sub.fieldbyname('XTNo').AsString); + if Trim(FCYID) = '' then begin - if GetLSNo(ADOQueryCmd,maxId,'','CP_YDang',5,1)=False then + if GetLSNo(ADOQueryCmd, maxId, '', 'CP_YDang', 5, 1) = False then begin - Result:=False; + Result := False; ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('取最大号失败!','提示',0); + Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; - end else + end + else begin - maxId:=Trim(FCYID); + maxId := Trim(FCYID); end; with ADOQueryCmd do begin Close; SQL.Clear; - sql.Add('select * from CP_YDang where CYID='''+Trim(FCYID)+''''); + sql.Add('select * from CP_YDang where CYID=''' + Trim(FCYID) + ''''); Open; end; with ADOQueryCmd do begin - if Trim(FCYID)='' then + if Trim(FCYID) = '' then begin Append; - end else + end + else begin Edit; end; - FieldByName('XTNo').Value:=Trim(XTMaxID); - FieldByName('CYID').Value:=Trim(MaxID); - FieldByName('CYType').Value:=Trim(FCPID); - if Trim(FCYID)='' then FieldByName('DefFlt4').Value:=Fint; - SSetSaveDataCDSNew(ADOQueryCmd,Tv1,CDS_Sub,'CP_YDang',3); - FieldByName('CYPrice').Value:=CDS_Sub.fieldbyname('CYPrice').AsFloat; - FieldByName('CYPrice1').Value:=CDS_Sub.fieldbyname('CYPrice1').AsFloat; - FieldByName('CYPrice2').Value:=CDS_Sub.fieldbyname('CYPrice2').AsFloat; - FieldByName('CYPrice3').Value:=CDS_Sub.fieldbyname('CYPrice3').AsFloat; - FieldByName('CYPrice4').Value:=CDS_Sub.fieldbyname('CYPrice4').AsFloat; - FieldByName('CYPrice5').Value:=CDS_Sub.fieldbyname('CYPrice5').AsFloat; - FieldByName('CYPrice6').Value:=CDS_Sub.fieldbyname('CYPrice6').AsFloat; - FieldByName('CYPrice7').Value:=CDS_Sub.fieldbyname('CYPrice7').AsFloat; - FieldByName('CYPrice8').Value:=CDS_Sub.fieldbyname('CYPrice8').AsFloat; - FieldByName('CYPrice9').Value:=CDS_Sub.fieldbyname('CYPrice9').AsFloat; - FieldByName('CYPrice10').Value:=CDS_Sub.fieldbyname('CYPrice10').AsFloat; - FieldByName('CYPrice11').Value:=CDS_Sub.fieldbyname('CYPrice11').AsFloat; - FieldByName('CYPrice12').Value:=CDS_Sub.fieldbyname('CYPrice12').AsFloat; - FieldByName('CYPrice13').Value:=CDS_Sub.fieldbyname('CYPrice13').AsFloat; - FieldByName('CYPrice14').Value:=CDS_Sub.fieldbyname('CYPrice14').AsFloat; - FieldByName('CYPrice15').Value:=CDS_Sub.fieldbyname('CYPrice15').AsFloat; - if Trim(FCYID)='' then + FieldByName('XTNo').Value := Trim(XTMaxID); + FieldByName('CYID').Value := Trim(maxId); + FieldByName('CYType').Value := Trim(FCPID); + if Trim(FCYID) = '' then + FieldByName('DefFlt4').Value := Fint; + SSetSaveDataCDSNew(ADOQueryCmd, Tv1, CDS_Sub, 'CP_YDang', 3); + FieldByName('CYPrice').Value := CDS_Sub.fieldbyname('CYPrice').AsFloat; + FieldByName('CYPrice1').Value := CDS_Sub.fieldbyname('CYPrice1').AsFloat; + FieldByName('CYPrice2').Value := CDS_Sub.fieldbyname('CYPrice2').AsFloat; + FieldByName('CYPrice3').Value := CDS_Sub.fieldbyname('CYPrice3').AsFloat; + FieldByName('CYPrice4').Value := CDS_Sub.fieldbyname('CYPrice4').AsFloat; + FieldByName('CYPrice5').Value := CDS_Sub.fieldbyname('CYPrice5').AsFloat; + FieldByName('CYPrice6').Value := CDS_Sub.fieldbyname('CYPrice6').AsFloat; + FieldByName('CYPrice7').Value := CDS_Sub.fieldbyname('CYPrice7').AsFloat; + FieldByName('CYPrice8').Value := CDS_Sub.fieldbyname('CYPrice8').AsFloat; + FieldByName('CYPrice9').Value := CDS_Sub.fieldbyname('CYPrice9').AsFloat; + FieldByName('CYPrice10').Value := CDS_Sub.fieldbyname('CYPrice10').AsFloat; + FieldByName('CYPrice11').Value := CDS_Sub.fieldbyname('CYPrice11').AsFloat; + FieldByName('CYPrice12').Value := CDS_Sub.fieldbyname('CYPrice12').AsFloat; + FieldByName('CYPrice13').Value := CDS_Sub.fieldbyname('CYPrice13').AsFloat; + FieldByName('CYPrice14').Value := CDS_Sub.fieldbyname('CYPrice14').AsFloat; + FieldByName('CYPrice15').Value := CDS_Sub.fieldbyname('CYPrice15').AsFloat; + if Trim(FCYID) = '' then begin - FieldByName('Filler').Value:=Trim(DName); - FieldByName('Filltime').Value:=SGetServerDateTime(ADOQueryTemp); - end else + FieldByName('Filler').Value := Trim(DName); + FieldByName('Filltime').Value := SGetServerDateTime(ADOQueryTemp); + end + else begin - FieldByName('Editer').Value:=Trim(DName); - FieldByName('EditTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('Editer').Value := Trim(DName); + FieldByName('EditTime').Value := SGetServerDateTime(ADOQueryTemp); end; Post; end; - if CopyInt=1 then + if CopyInt = 1 then begin //保存面料信息 - ColMLSavedata(Maxid); + ColMLSavedata(maxId); //保存加工信息 - ColJGSaveData(Maxid); + ColJGSaveData(maxId); end; - if CopyInt=2 then + if CopyInt = 2 then begin //保存面料信息 - ColMLSavedata(Maxid); + ColMLSavedata(maxId); //保存加工信息 - ColJGSaveData(Maxid); + ColJGSaveData(maxId); end; with CDS_Sub do begin edit; - FieldByName('CYID').Value:=Trim(maxid); + FieldByName('CYID').Value := Trim(maxId); end; - FCYID:=Trim(maxId); + FCYID := Trim(maxId); ADOQueryCmd.Connection.CommitTrans; - Result:=True; - except; - Result:=False; + Result := True; + except + ; + Result := False; ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('保存失败!','提示',0); + Application.MessageBox('保存失败!', '提示', 0); end; end; procedure TfrmCPAdd.ToolButton1Click(Sender: TObject); -var FCYNo:string; +var + FCYNo: string; begin ToolBar1.SetFocus; - if CDS_Sub.IsEmpty then exit; - if CDS_Sub.Locate('PRTDM','',[])=True then + if CDS_Sub.IsEmpty then + exit; + if CDS_Sub.Locate('PRTDM', '', []) = True then begin - Application.MessageBox('产品代码不能为空','提示'); + Application.MessageBox('产品代码不能为空', '提示'); exit; end; - if CDS_Sub.Locate('PRTDM',NULL,[])=True then + if CDS_Sub.Locate('PRTDM', NULL, []) = True then begin - Application.MessageBox('产品代码不能为空','提示'); + Application.MessageBox('产品代码不能为空', '提示'); exit; end; - if CDS_Sub.Locate('DefStr10','',[])=True then + if CDS_Sub.Locate('DefStr10', '', []) = True then begin - Application.MessageBox('产品属性不能为空','提示'); + Application.MessageBox('产品属性不能为空', '提示'); exit; end; - if CDS_Sub.Locate('DefStr10',NULL,[])=True then + if CDS_Sub.Locate('DefStr10', NULL, []) = True then begin - Application.MessageBox('产品属性不能为空','提示'); + Application.MessageBox('产品属性不能为空', '提示'); exit; end; - if Order_ML.Locate('IFSel',true,[])=false then + if Order_ML.Locate('IFSel', true, []) = false then begin - Application.MessageBox('请选择面料的是否主要','提示',0); + Application.MessageBox('请选择面料的是否主要', '提示', 0); Exit; end; - if Order_JG.Locate('IFZY',true,[])=false then + if Order_JG.Locate('IFZY', true, []) = false then begin - Application.MessageBox('请选择工序的是否主要','提示',0); + Application.MessageBox('请选择工序的是否主要', '提示', 0); Exit; end; - if Order_Sub.Locate('ColSel',True,[])=False then + if Order_Sub.Locate('ColSel', True, []) = False then begin //if Application.MessageBox('确定没有颜色吗','提示',1)=2 then exit; end else begin - Order_Sub.Locate('ColSel',True,[]); + Order_Sub.Locate('ColSel', True, []); with CDS_Sub do begin edit; - FieldByName('CYColor').Value:=Trim(Order_Sub.fieldbyname('ColorName').AsString); - FieldByName('CYSeHao').Value:=Trim(Order_Sub.fieldbyname('ColorNo').AsString); + FieldByName('CYColor').Value := Trim(Order_Sub.fieldbyname('ColorName').AsString); + FieldByName('CYSeHao').Value := Trim(Order_Sub.fieldbyname('ColorNo').AsString); end; end; - if CopyInt=1 then + if CopyInt = 1 then begin if SaveData() then begin @@ -1116,30 +1121,30 @@ begin begin Close; sql.Clear; - sql.Add('delete from CP_YDang_ML where CYID='''+Trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); - sql.Add(' and CengJI='''+trim(inttostr(cxTabControl1.TabIndex+1))+''' '); + sql.Add('delete from CP_YDang_ML where CYID=''' + Trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); + sql.Add(' and CengJI=''' + trim(inttostr(cxTabControl1.TabIndex + 1)) + ''' '); ExecSQL; end; with ADOQuery2 do begin Close; sql.Clear; - sql.Add('delete from CP_YDang_JG where CYID='''+Trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); - sql.Add(' and CengJI='''+trim(inttostr(cxTabControl1.TabIndex+1))+''' '); + sql.Add('delete from CP_YDang_JG where CYID=''' + Trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); + sql.Add(' and CengJI=''' + trim(inttostr(cxTabControl1.TabIndex + 1)) + ''' '); ExecSQL; end; - if Order_ML.IsEmpty=false then + if Order_ML.IsEmpty = false then begin //if Order_ML.Locate('MLName','',[])=False then begin MLSavedata(Order_ML); end; end; - if Order_JG.IsEmpty=false then + if Order_JG.IsEmpty = false then begin //if Order_JG.Locate('JGCengJi','',[])=False then begin - JGSavedata(Order_JG,Order_ML); + JGSavedata(Order_JG, Order_ML); end; end; end; @@ -1148,29 +1153,29 @@ begin begin if SaveData() then begin - if Order_ML.IsEmpty=false then + if Order_ML.IsEmpty = false then begin //if Order_ML.Locate('MLName','',[])=False then begin MLSavedata(Order_ML); end; end; - if Order_JG.IsEmpty=false then + if Order_JG.IsEmpty = false then begin //if Order_JG.Locate('JGCengJi','',[])=False then begin - JGSavedata(Order_JG,Order_ML); + JGSavedata(Order_JG, Order_ML); end; end; end; end; - FCYNo:=Trim(CDS_Sub.fieldbyname('JCCYNo').AsString);//+'#'+Trim(CDS_Sub.fieldbyname('CYSeHao').AsString); + FCYNo := Trim(CDS_Sub.fieldbyname('JCCYNo').AsString); //+'#'+Trim(CDS_Sub.fieldbyname('CYSeHao').AsString); with ADOQuery2 do begin Close; sql.Clear; SQL.Add('select * from CP_YDang_JG '); - SQL.Add('where CYID='''+trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); + SQL.Add('where CYID=''' + trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); //sql.Add(' and CengJi<>1'); sql.Add(' and isnull(IFZY,'''')=''1'''); sql.Add(' order by Cengji,JGCengJi'); @@ -1182,7 +1187,7 @@ begin First; while not eof do begin - FCYNO:=FCYNO+trim(fieldbyname('GYDM').AsString)+trim(fieldbyname('MLSeHao').AsString)+trim(fieldbyname('HXNo').AsString); + FCYNo := FCYNo + trim(fieldbyname('GYDM').AsString) + trim(fieldbyname('MLSeHao').AsString) + trim(fieldbyname('HXNo').AsString); next; end; end; @@ -1190,23 +1195,23 @@ begin begin Close; sql.Clear; - sql.Add('select CYID from CP_YDang where XTNo='''+Trim(CDS_Sub.fieldbyname('XTNo').AsString)+''''); + sql.Add('select CYID from CP_YDang where XTNo=''' + Trim(CDS_Sub.fieldbyname('XTNo').AsString) + ''''); //ShowMessage(sql.Text); Open; - if ADOQueryCmd.RecordCount>1 then + if ADOQueryCmd.RecordCount > 1 then begin - if CopyInt<>0 then + if CopyInt <> 0 then begin with ADOQuery2 do begin close; sql.Clear; - sql.Add('delete from CP_YDang where CYID='''+Trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); - sql.Add('delete from CP_YDang_ML where CYID='''+Trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); - sql.Add('delete from CP_YDang_JG where CYID='''+Trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); + sql.Add('delete from CP_YDang where CYID=''' + Trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); + sql.Add('delete from CP_YDang_ML where CYID=''' + Trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); + sql.Add('delete from CP_YDang_JG where CYID=''' + Trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); ExecSQL; end; - FCYID:=''; + FCYID := ''; end else begin @@ -1214,12 +1219,12 @@ begin begin close; sql.Clear; - sql.Add('update CP_YDang set CYNo='''+trim(CDS_Sub.fieldbyname('CYNo').AsString)+''''); - sql.Add(' where CYID='''+Trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); + sql.Add('update CP_YDang set CYNo=''' + trim(CDS_Sub.fieldbyname('CYNo').AsString) + ''''); + sql.Add(' where CYID=''' + Trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); ExecSQL; end; end; - Application.MessageBox('公司编号重复!','提示',0); + Application.MessageBox('公司编号重复!', '提示', 0); Exit; end; end; @@ -1227,31 +1232,31 @@ begin begin close; sql.Clear; - sql.Add('update CP_YDang set CYNo='''+trim(FCYNo)+''''); - sql.Add(' where CYID='''+Trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); + sql.Add('update CP_YDang set CYNo=''' + trim(FCYNo) + ''''); + sql.Add(' where CYID=''' + Trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); ExecSQL; end; with ADOQueryCmd do begin Close; sql.Clear; - sql.Add('select CYID from CP_YDang where CYNo='''+Trim(FCYNo)+''''); + sql.Add('select CYID from CP_YDang where CYNo=''' + Trim(FCYNo) + ''''); //ShowMessage(sql.Text); Open; - if ADOQueryCmd.RecordCount>1 then + if ADOQueryCmd.RecordCount > 1 then begin - if CopyInt<>0 then + if CopyInt <> 0 then begin with ADOQuery2 do begin close; sql.Clear; - sql.Add('delete from CP_YDang where CYID='''+Trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); - sql.Add('delete from CP_YDang_ML where CYID='''+Trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); - sql.Add('delete from CP_YDang_JG where CYID='''+Trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); + sql.Add('delete from CP_YDang where CYID=''' + Trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); + sql.Add('delete from CP_YDang_ML where CYID=''' + Trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); + sql.Add('delete from CP_YDang_JG where CYID=''' + Trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); ExecSQL; end; - FCYID:=''; + FCYID := ''; end else begin @@ -1259,65 +1264,64 @@ begin begin close; sql.Clear; - sql.Add('update CP_YDang set CYNo='''+trim(CDS_Sub.fieldbyname('CYNo').AsString)+''''); - sql.Add(' where CYID='''+Trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); + sql.Add('update CP_YDang set CYNo=''' + trim(CDS_Sub.fieldbyname('CYNo').AsString) + ''''); + sql.Add(' where CYID=''' + Trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); ExecSQL; end; end; - Application.MessageBox('编号重复!','提示',0); + Application.MessageBox('编号重复!', '提示', 0); Exit; end; end; with CDS_Sub do begin edit; - FieldByName('CYNo').AsString:=Trim(FCYNo); + FieldByName('CYNo').AsString := Trim(FCYNo); end; with ADOQuery2 do begin close; sql.Clear; sql.Add('update CP_YDang set CYHX=(select Top 1 HXName from CP_YDang_JG where CYID=CP_YDang.CYID and IFZY=1 and CengJi=6)'); - sql.Add(' where CYID='''+Trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); + sql.Add(' where CYID=''' + Trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); ExecSQL; end; COLSaveData(); - Application.MessageBox('保存成功!','提示',0); - ModalResult:=1; + Application.MessageBox('保存成功!', '提示', 0); + ModalResult := 1; end; procedure TfrmCPAdd.v1Column8PropertiesEditValueChanged(Sender: TObject); var - mvalue:string; + mvalue: string; begin - if Trim(DParameters3)='' then + if Trim(DParameters3) = '' then begin - mvalue:=Trim(TcxTextEdit(Sender).EditingText); + mvalue := Trim(TcxTextEdit(Sender).EditingText); with CDS_Sub do begin Edit; - FieldByName('CYKZ').Value:=mvalue+'g/㎡'; + FieldByName('CYKZ').Value := mvalue + 'g/㎡'; Post; end; end; end; -procedure TfrmCPAdd.v1Column2PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try - frmZDYHelp:=TfrmZDYHelp.Create(Application); + frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin - flag:='YPName'; - flagname:='样品名称'; - if ShowModal=1 then + flag := 'YPName'; + flagname := '样品名称'; + if ShowModal = 1 then begin with CDS_Sub do begin Edit; - FieldByName('CYName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CYName').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; end; @@ -1326,24 +1330,23 @@ begin end; end; -procedure TfrmCPAdd.v1Column26PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v1Column26PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); var - fsj:string; + fsj: string; begin - fsj:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + fsj := Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; try - frmZDYHelp:=TfrmZDYHelp.Create(Application); + frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin - flag:='GYStr'; - flagname:='工艺名称'; - if ShowModal=1 then + flag := 'GYStr'; + flagname := '工艺名称'; + if ShowModal = 1 then begin with CDS_Sub do begin Edit; - FieldByName(fsj).Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName(fsj).Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; end; @@ -1352,24 +1355,23 @@ begin end; end; -procedure TfrmCPAdd.v1Column27PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v1Column27PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); var - fsj:string; + fsj: string; begin - fsj:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + fsj := Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; try - frmZDYHelp:=TfrmZDYHelp.Create(Application); + frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin - flag:='YPJGFactory'; - flagname:='加工厂'; - if ShowModal=1 then + flag := 'YPJGFactory'; + flagname := '加工厂'; + if ShowModal = 1 then begin with CDS_Sub do begin Edit; - FieldByName(fsj).Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName(fsj).Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; end; @@ -1378,17 +1380,16 @@ begin end; end; -procedure TfrmCPAdd.v1Column14PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v1Column14PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZdyAttachCP_HX_Sel:=TfrmZdyAttachCP_HX_Sel.create(self); + frmZdyAttachCP_HX_Sel := TfrmZdyAttachCP_HX_Sel.create(self); with frmZdyAttachCP_HX_Sel do begin - IF showmodal=1 then + if showmodal = 1 then begin CDS_Sub.Edit; - CDS_Sub.FieldByName('CYHX').Value:=trim(cds_Hz.FieldByName('ZdyName').asstring); - CDS_Sub.FieldByName('CYNo').Value:=trim(CDS_Sub.FieldByName('CYNo').AsString)+trim(cds_Hz.FieldByName('ZdyCode').asstring); + CDS_Sub.FieldByName('CYHX').Value := trim(cds_Hz.FieldByName('ZdyName').asstring); + CDS_Sub.FieldByName('CYNo').Value := trim(CDS_Sub.FieldByName('CYNo').AsString) + trim(cds_Hz.FieldByName('ZdyCode').asstring); CDS_Sub.Post; end; frmZdyAttachCP_HX_Sel.Free; @@ -1398,42 +1399,42 @@ end; procedure TfrmCPAdd.v1CYPrice1PropertiesEditValueChanged(Sender: TObject); var - fieldname,mavlue:string; + fieldname, mavlue: string; begin - fieldname:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; - mavlue:=TcxTextEdit(Sender).EditingText; - if mavlue='' then mavlue:='0'; + fieldname := Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + mavlue := TcxTextEdit(Sender).EditingText; + if mavlue = '' then + mavlue := '0'; with CDS_Sub do begin Edit; - FieldByName(Trim(fieldname)).Value:=mavlue; - FieldByName('CYPrice').Value:=FieldByName('CYPrice12').AsFloat*(1+FieldByName('CYPrice13').AsFloat)+FieldByName('CYPrice14').AsFloat+FieldByName('CYPrice15').AsFloat; + FieldByName(Trim(fieldname)).Value := mavlue; + FieldByName('CYPrice').Value := FieldByName('CYPrice12').AsFloat * (1 + FieldByName('CYPrice13').AsFloat) + FieldByName('CYPrice14').AsFloat + FieldByName('CYPrice15').AsFloat; Post; end; Tv1.Controller.EditingController.ShowEdit(); end; -procedure TfrmCPAdd.v1DefStr10PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v1DefStr10PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); var - fsj:string; + fsj: string; begin - fsj:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + fsj := Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; try - frmZDYHelp:=TfrmZDYHelp.Create(Application); + frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin - flag:='YPSXingFlag'; - flagname:='产品属性'; - Fnote:=true; - V1Note.Caption:='代码'; - if ShowModal=1 then + flag := 'YPSXingFlag'; + flagname := '产品属性'; + Fnote := true; + V1Note.Caption := '代码'; + if ShowModal = 1 then begin with CDS_Sub do begin Edit; - FieldByName(fsj).Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); - FieldByName('PRTDM').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + FieldByName(fsj).Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('PRTDM').Value := Trim(ClientDataSet1.fieldbyname('Note').AsString); end; end; end; @@ -1445,15 +1446,15 @@ end; procedure TfrmCPAdd.ToolButton2Click(Sender: TObject); begin try - frmFileUp:=TfrmFileUp.Create(Application); + frmFileUp := TfrmFileUp.Create(Application); with frmFileUp do begin - Code.Text:=Trim(Self.Order_Sub.fieldbyname('CYNO').AsString); - CYID:=Trim(Self.Order_Sub.fieldbyname('CLRID').AsString); + Code.Text := Trim(Self.Order_Sub.fieldbyname('CYNO').AsString); + CYID := Trim(Self.Order_Sub.fieldbyname('CLRID').AsString); //FName:=Trim(Self.CDS_Sub.fieldbyname('CYNO').AsString)+Trim(Self.Order_Sub.fieldbyname('ColorNo').AsString); - if ShowModal=1 then + if ShowModal = 1 then begin - Self.Order_Sub.Locate('CLRID',CYID,[]); + Self.Order_Sub.Locate('CLRID', CYID, []); end; end; finally @@ -1463,33 +1464,30 @@ end; procedure TfrmCPAdd.v2CYPrice1PropertiesEditValueChanged(Sender: TObject); var - fieldname:string; + fieldname: string; begin - fieldname:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + fieldname := Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; with CDS_Sub do begin Edit; - FieldByName(Trim(fieldname)).Value:=TcxTextEdit(Sender).EditingText; - FieldByName('CYPrice5').Value:=FieldByName('CYPrice1').AsFloat*FieldByName('CYPrice6').AsFloat+FieldByName('CYPrice7').AsFloat+ - FieldByName('CYPrice8').AsFloat+FieldByName('CYPrice9').AsFloat+FieldByName('CYPrice4').AsFloat; - FieldByName('CYPrice').Value:=(FieldByName('CYPrice5').AsFloat+FieldByName('CYPrice10').AsFloat +FieldByName('CYPrice11').AsFloat+ - FieldByName('CYPrice12').AsFloat)*FieldByName('CYPrice13').AsFloat+FieldByName('CYPrice14').AsFloat+FieldByName('CYPrice15').AsFloat; + FieldByName(Trim(fieldname)).Value := TcxTextEdit(Sender).EditingText; + FieldByName('CYPrice5').Value := FieldByName('CYPrice1').AsFloat * FieldByName('CYPrice6').AsFloat + FieldByName('CYPrice7').AsFloat + FieldByName('CYPrice8').AsFloat + FieldByName('CYPrice9').AsFloat + FieldByName('CYPrice4').AsFloat; + FieldByName('CYPrice').Value := (FieldByName('CYPrice5').AsFloat + FieldByName('CYPrice10').AsFloat + FieldByName('CYPrice11').AsFloat + FieldByName('CYPrice12').AsFloat) * FieldByName('CYPrice13').AsFloat + FieldByName('CYPrice14').AsFloat + FieldByName('CYPrice15').AsFloat; Post; end; Tv2.Controller.EditingController.ShowEdit(); end; -procedure TfrmCPAdd.v1CPNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v1CPNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZdyAttachCP_Type_sel:=TfrmZdyAttachCP_Type_sel.Create(self); + frmZdyAttachCP_Type_sel := TfrmZdyAttachCP_Type_sel.Create(self); with frmZdyAttachCP_Type_sel do begin - IF showmodal=1 then + if showmodal = 1 then begin CDS_Sub.Edit; - CDS_Sub.FieldByName('CYType').Value:=trim(CDS_HZ.FieldByName('CPID').asstring); - CDS_Sub.FieldByName('CPName').Value:=trim(CDS_HZ.FieldByName('CPName').asstring); + CDS_Sub.FieldByName('CYType').Value := trim(CDS_HZ.FieldByName('CPID').asstring); + CDS_Sub.FieldByName('CPName').Value := trim(CDS_HZ.FieldByName('CPName').asstring); CDS_Sub.Post; end; frmZdyAttachCP_Type_sel.Free; @@ -1497,24 +1495,23 @@ begin tv1.Controller.EditingController.ShowEdit(); end; -procedure TfrmCPAdd.v2DefStr4PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v2DefStr4PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); var - fsj:string; + fsj: string; begin - fsj:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + fsj := Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; try - frmZDYHelp:=TfrmZDYHelp.Create(Application); + frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin - flag:='RanZGY'; - flagname:='染整工艺'; - if ShowModal=1 then + flag := 'RanZGY'; + flagname := '染整工艺'; + if ShowModal = 1 then begin with CDS_Sub do begin Edit; - FieldByName(fsj).Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName(fsj).Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; end; @@ -1523,24 +1520,23 @@ begin end; end; -procedure TfrmCPAdd.v2DefStr5PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v2DefStr5PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); var - fsj:string; + fsj: string; begin - fsj:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + fsj := Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; try - frmZDYHelp:=TfrmZDYHelp.Create(Application); + frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin - flag:='JiaGongGYFlag'; - flagname:='加工工艺'; - if ShowModal=1 then + flag := 'JiaGongGYFlag'; + flagname := '加工工艺'; + if ShowModal = 1 then begin with CDS_Sub do begin Edit; - FieldByName(fsj).Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName(fsj).Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; end; @@ -1552,21 +1548,24 @@ end; procedure TfrmCPAdd.TMXSaveClick(Sender: TObject); begin //ToolBar2.SetFocus; - if CDS_Sub.IsEmpty then exit; - if Order_ML.IsEmpty then exit; + if CDS_Sub.IsEmpty then + exit; + if Order_ML.IsEmpty then + exit; //if Order_ML.Locate('MLName','',[])=false then begin MLSavedata(Order_ML); end; //if Order_JG.Locate('JGGX','',[])=false then begin - JGSavedata(Order_JG,Order_ML); + JGSavedata(Order_JG, Order_ML); end; end; procedure TfrmCPAdd.ToolButton7Click(Sender: TObject); begin - if Order_ML.IsEmpty then exit; + if Order_ML.IsEmpty then + exit; {if Trim(Order_ML.fieldbyname('MLID').AsString)='' then begin Application.MessageBox('请先保存面料信息','提示',0); @@ -1575,22 +1574,24 @@ begin with Order_JG do begin Append; - FieldByName('JGCengJi').Value:=Order_JG.RecordCount+1; + FieldByName('JGCengJi').Value := Order_JG.RecordCount + 1; Post; end; end; procedure TfrmCPAdd.ToolButton8Click(Sender: TObject); begin - if Order_JG.IsEmpty then Exit; - if Trim(Order_JG.fieldbyname('JGID').AsString)<>'' then + if Order_JG.IsEmpty then + Exit; + if Trim(Order_JG.fieldbyname('JGID').AsString) <> '' then begin - if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit; + if Application.MessageBox('确定要删除数据吗?', '提示', 32 + 4) <> IDYES then + Exit; with ADOQueryCmd do begin Close; sql.Clear; - sql.Add('delete from CP_YDang_JG where JGID='''+Trim(Order_JG.fieldbyname('JGID').AsString)+''''); + sql.Add('delete from CP_YDang_JG where JGID=''' + Trim(Order_JG.fieldbyname('JGID').AsString) + ''''); ExecSQL; end; end; @@ -1600,32 +1601,34 @@ end; procedure TfrmCPAdd.ToolButton6Click(Sender: TObject); begin ToolBar4.SetFocus; - if Order_ML.IsEmpty then exit; - if Order_JG.IsEmpty then exit; + if Order_ML.IsEmpty then + exit; + if Order_JG.IsEmpty then + exit; //if Order_JG.Locate('JGGX','',[])=false then - JGSavedata(Order_JG,Order_ML); + JGSavedata(Order_JG, Order_ML); end; procedure TfrmCPAdd.ToolButton4Click(Sender: TObject); begin - frmCPManage_ColCX:=TfrmCPManage_ColCX.create(self); + frmCPManage_ColCX := TfrmCPManage_ColCX.create(self); with frmCPManage_ColCX do begin - FYPCPID:=Trim(FCPID); - if showmodal=1 then + FYPCPID := Trim(FCPID); + if showmodal = 1 then begin with frmCPManage_ColCX.CDS_Sub do begin first; while not eof do begin - if FieldByName('Ssel').AsBoolean=True then + if FieldByName('Ssel').AsBoolean = True then begin with self.Order_Sub do begin Append; - FieldByName('ColorName').Value:=Trim(frmCPManage_ColCX.CDS_Sub.fieldbyname('ColorName').AsString); - FieldByName('ColorNo').Value:=Trim(frmCPManage_ColCX.CDS_Sub.fieldbyname('ColorNo').AsString); + FieldByName('ColorName').Value := Trim(frmCPManage_ColCX.CDS_Sub.fieldbyname('ColorName').AsString); + FieldByName('ColorNo').Value := Trim(frmCPManage_ColCX.CDS_Sub.fieldbyname('ColorNo').AsString); post; end; end; @@ -1639,15 +1642,17 @@ end; procedure TfrmCPAdd.ToolButton5Click(Sender: TObject); begin - if Order_Sub.IsEmpty then Exit; - if Trim(Order_Sub.fieldbyname('CLRID').AsString)<>'' then + if Order_Sub.IsEmpty then + Exit; + if Trim(Order_Sub.fieldbyname('CLRID').AsString) <> '' then begin - if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit; + if Application.MessageBox('确定要删除数据吗?', '提示', 32 + 4) <> IDYES then + Exit; with ADOQueryCmd do begin Close; sql.Clear; - sql.Add('delete CP_YDang_Color where CLRID='''+Trim(Order_Sub.fieldbyname('CLRID').AsString)+''''); + sql.Add('delete CP_YDang_Color where CLRID=''' + Trim(Order_Sub.fieldbyname('CLRID').AsString) + ''''); ExecSQL; end; end; @@ -1656,184 +1661,178 @@ end; procedure TfrmCPAdd.ToolButton9Click(Sender: TObject); begin - if CDS_Sub.IsEmpty then exit; - if Order_Sub.IsEmpty then exit; - if Order_Sub.Locate('CYColor',null,[])=True then + if CDS_Sub.IsEmpty then + exit; + if Order_Sub.IsEmpty then + exit; + if Order_Sub.Locate('CYColor', null, []) = True then begin - Application.MessageBox('颜色不能为空!','提示',0); + Application.MessageBox('颜色不能为空!', '提示', 0); Exit; end; - if Order_Sub.Locate('CYSeHao',null,[])=True then + if Order_Sub.Locate('CYSeHao', null, []) = True then begin - Application.MessageBox('色号不能为空!','提示',0); + Application.MessageBox('色号不能为空!', '提示', 0); Exit; end; ToolBar1.SetFocus; COLSaveData(); - Application.MessageBox('保存成功!','提示',0); + Application.MessageBox('保存成功!', '提示', 0); //ModalResult:=1; end; -procedure TfrmCPAdd.v1CYColorPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v1CYColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='CYColor'; - flagname:='颜色'; - MainType:=Trim(CDS_Sub.fieldbyname('CYNo').AsString); - if ShowModal=1 then + flag := 'CYColor'; + flagname := '颜色'; + MainType := Trim(CDS_Sub.fieldbyname('CYNo').AsString); + if ShowModal = 1 then begin with CDS_Sub do begin edit; - FieldByName('CYColor').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CYColor').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; free; end; end; -procedure TfrmCPAdd.v1CYMFPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v1CYMFPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='CYMF'; - flagname:='门幅'; - if ShowModal=1 then + flag := 'CYMF'; + flagname := '门幅'; + if ShowModal = 1 then begin with CDS_Sub do begin edit; - FieldByName('CYMF').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CYMF').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; free; end; end; -procedure TfrmCPAdd.v1CYKZPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v1CYKZPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='CYKZ'; - flagname:='克重'; - if ShowModal=1 then + flag := 'CYKZ'; + flagname := '克重'; + if ShowModal = 1 then begin with CDS_Sub do begin edit; - FieldByName('CYKZ').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CYKZ').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; free; end; end; -procedure TfrmCPAdd.v1DefStr6PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v1DefStr6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='DefStr6'; - flagname:='经纬密度'; - if ShowModal=1 then + flag := 'DefStr6'; + flagname := '经纬密度'; + if ShowModal = 1 then begin with CDS_Sub do begin edit; - FieldByName('DefStr6').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('DefStr6').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; free; end; end; -procedure TfrmCPAdd.v1CYSpecPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v1CYSpecPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='CYSpec'; - flagname:='纱支规格'; - if ShowModal=1 then + flag := 'CYSpec'; + flagname := '纱支规格'; + if ShowModal = 1 then begin with CDS_Sub do begin edit; - FieldByName('CYSpec').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CYSpec').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; free; end; end; -procedure TfrmCPAdd.v2MLColorPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v2MLColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='CYColor'; - flagname:='颜色'; - MainType:=Trim(CDS_Sub.fieldbyname('CYNo').AsString); - if ShowModal=1 then + flag := 'CYColor'; + flagname := '颜色'; + MainType := Trim(CDS_Sub.fieldbyname('CYNo').AsString); + if ShowModal = 1 then begin with Order_ML do begin edit; - FieldByName('MLColor').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('MLColor').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; free; end; end; -procedure TfrmCPAdd.v4CYColorPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v4CYColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='CYColor'; - flagname:='颜色'; - MainType:=Trim(CDS_Sub.fieldbyname('CYNo').AsString); - if ShowModal=1 then + flag := 'CYColor'; + flagname := '颜色'; + MainType := Trim(CDS_Sub.fieldbyname('CYNo').AsString); + if ShowModal = 1 then begin with Order_ML do begin edit; - FieldByName('CYColor').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CYColor').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; free; end; end; -procedure TfrmCPAdd.v3JGGXPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v3JGGXPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='JGGX'; - flagname:='工序名称'; - fnote:=True; - V1Note.Caption:='工序代码'; - if ShowModal=1 then + flag := 'JGGX'; + flagname := '工序名称'; + fnote := True; + V1Note.Caption := '工序代码'; + if ShowModal = 1 then begin with Order_JG do begin edit; - FieldByName('JGGX').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); - FieldByName('GXDM').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + FieldByName('JGGX').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('GXDM').Value := Trim(ClientDataSet1.fieldbyname('Note').AsString); end; end; free; @@ -1841,33 +1840,34 @@ begin end; procedure TfrmCPAdd.cxTabControl1Change(Sender: TObject); -begin - if CDS_Sub.IsEmpty then exit; - label2.Caption:=cxTabControl1.Tabs.Strings[cxTabControl1.TabIndex]; +begin + if CDS_Sub.IsEmpty then + exit; + label2.Caption := cxTabControl1.Tabs.Strings[cxTabControl1.TabIndex]; //TMXSave.Click; with ADOQuery1 do begin Close; sql.Clear; SQL.Add('select * from CP_YDang_ML '); - SQL.Add('where CYID='''+trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); - sql.Add(' and CengJi='''+trim(IntToStr(cxTabControl1.TabIndex+1))+''''); + SQL.Add('where CYID=''' + trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); + sql.Add(' and CengJi=''' + trim(IntToStr(cxTabControl1.TabIndex + 1)) + ''''); open; end; - SCreateCDS20(ADOQuery1,Order_ML); - SInitCDSData20(ADOQuery1,Order_ML); + SCreateCDS20(ADOQuery1, Order_ML); + SInitCDSData20(ADOQuery1, Order_ML); with ADOQuery2 do begin Close; sql.Clear; SQL.Add('select * from CP_YDang_JG '); - SQL.Add('where CYID='''+trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); - sql.Add(' and CengJi='''+trim(IntToStr(cxTabControl1.TabIndex+1))+''''); + SQL.Add('where CYID=''' + trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); + sql.Add(' and CengJi=''' + trim(IntToStr(cxTabControl1.TabIndex + 1)) + ''''); //ShowMessage(sql.Text); open; end; - SCreateCDS20(ADOQuery2,Order_JG); - SInitCDSData20(ADOQuery2,Order_JG); + SCreateCDS20(ADOQuery2, Order_JG); + SInitCDSData20(ADOQuery2, Order_JG); {with ADOQuery1 do begin Close; @@ -1890,94 +1890,90 @@ begin sql.Add(',HXNo=(select Top 1 B.HXNo from CP_YDang_JG B where B.CengJi=A.CengJi and B.CYID=A.CYID and B.IFZY=1)'); sql.Add(',GYDM=(select Top 1 B.GYDM from CP_YDang_JG B where B.CengJi=A.CengJi and B.CYID=A.CYID and B.IFZY=1)'); sql.Add(' from CP_YDang_ML A '); - SQL.Add('where A.CYID='''+trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); + SQL.Add('where A.CYID=''' + trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); sql.Add(' and A.IFSel=1 '); sql.Add(' order by A.Cengji,A.MLID'); open; end; - SCreateCDS20(ADOQuery1,CJ_Mianliao); - SInitCDSData20(ADOQuery1,CJ_Mianliao); + SCreateCDS20(ADOQuery1, CJ_Mianliao); + SInitCDSData20(ADOQuery1, CJ_Mianliao); Appenddata(); - ReadCxGrid('样品编辑N2'+inttostr(cxtabcontrol1.TabIndex),Tv2,'样品管理'); - ReadCxGrid('样品编辑N3'+inttostr(cxtabcontrol1.TabIndex),Tv3,'样品管理'); + ReadCxGrid('样品编辑N2' + inttostr(cxtabcontrol1.TabIndex), Tv2, '样品管理'); + ReadCxGrid('样品编辑N3' + inttostr(cxtabcontrol1.TabIndex), Tv3, '样品管理'); end; -procedure TfrmCPAdd.v3JGFactoryNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v3JGFactoryNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZdyAttachGYS_CX:=TfrmZdyAttachGYS_CX.Create(self); + frmZdyAttachGYS_CX := TfrmZdyAttachGYS_CX.Create(self); with frmZdyAttachGYS_CX do begin - if ShowModal=1 then + if ShowModal = 1 then begin with Order_JG do begin edit; - FieldByName('JGFactoryName').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + FieldByName('JGFactoryName').Value := Trim(CDS_HZ.fieldbyname('ZDYName').AsString); end; end; free; end; end; -procedure TfrmCPAdd.v1DefStr7PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v1DefStr7PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZdyAttachGYS_CX:=TfrmZdyAttachGYS_CX.Create(self); + frmZdyAttachGYS_CX := TfrmZdyAttachGYS_CX.Create(self); with frmZdyAttachGYS_CX do begin - if ShowModal=1 then + if ShowModal = 1 then begin with CDS_Sub do begin edit; - FieldByName('DefStr7').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + FieldByName('DefStr7').Value := Trim(CDS_HZ.fieldbyname('ZDYName').AsString); end; end; free; end; end; -procedure TfrmCPAdd.v2GYSNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v2GYSNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZdyAttachGYS_CX:=TfrmZdyAttachGYS_CX.Create(self); + frmZdyAttachGYS_CX := TfrmZdyAttachGYS_CX.Create(self); with frmZdyAttachGYS_CX do begin - if ShowModal=1 then + if ShowModal = 1 then begin with Order_ML do begin edit; - FieldByName('GYSName').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); - fieldbyname('LXRen').Value:=Trim(CDS_HZ.fieldbyname('DEFstr4').AsString); - if Trim(CDS_HZ.fieldbyname('DEFstr2').AsString)<>'' then - fieldbyname('LXTel').Value:=Trim(CDS_HZ.fieldbyname('DEFstr2').AsString) + FieldByName('GYSName').Value := Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + fieldbyname('LXRen').Value := Trim(CDS_HZ.fieldbyname('DEFstr4').AsString); + if Trim(CDS_HZ.fieldbyname('DEFstr2').AsString) <> '' then + fieldbyname('LXTel').Value := Trim(CDS_HZ.fieldbyname('DEFstr2').AsString) else - fieldbyname('LXTel').Value:=Trim(CDS_HZ.fieldbyname('DEFstr1').AsString); + fieldbyname('LXTel').Value := Trim(CDS_HZ.fieldbyname('DEFstr1').AsString); end; end; free; end; end; -procedure TfrmCPAdd.v3GXDMPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v3GXDMPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='JGGX'; - flagname:='工序名称'; - fnote:=True; - V1Note.Caption:='工序代码'; - if ShowModal=1 then + flag := 'JGGX'; + flagname := '工序名称'; + fnote := True; + V1Note.Caption := '工序代码'; + if ShowModal = 1 then begin with Order_JG do begin edit; - FieldByName('JGGX').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); - FieldByName('GXDM').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + FieldByName('JGGX').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('GXDM').Value := Trim(ClientDataSet1.fieldbyname('Note').AsString); end; end; free; @@ -1990,61 +1986,61 @@ begin begin Close; sql.Clear; - sql.Add('delete from CP_YDang_ML where MLID='''+Trim(Order_ML.fieldbyname('MLID').AsString)+''''); + sql.Add('delete from CP_YDang_ML where MLID=''' + Trim(Order_ML.fieldbyname('MLID').AsString) + ''''); ExecSQL; end; Order_ML.Delete; end; -procedure TfrmCPAdd.cxTabControl1Changing(Sender: TObject; - var AllowChange: Boolean); -var FCYNO:string; +procedure TfrmCPAdd.cxTabControl1Changing(Sender: TObject; var AllowChange: Boolean); +var + FCYNO: string; begin ToolBar1.SetFocus; - if CDS_Sub.Locate('PRTDM','',[])=True then + if CDS_Sub.Locate('PRTDM', '', []) = True then begin - Application.MessageBox('产品代码不能为空','提示'); + Application.MessageBox('产品代码不能为空', '提示'); exit; end; - if CDS_Sub.Locate('PRTDM',NULL,[])=True then + if CDS_Sub.Locate('PRTDM', NULL, []) = True then begin - Application.MessageBox('产品代码不能为空','提示'); + Application.MessageBox('产品代码不能为空', '提示'); exit; end; - if Order_Sub.Locate('ColSel',True,[])=False then + if Order_Sub.Locate('ColSel', True, []) = False then begin //if Application.MessageBox('确定没有颜色吗','提示',1)=2 then exit; end else begin - Order_Sub.Locate('ColSel',True,[]); + Order_Sub.Locate('ColSel', True, []); with CDS_Sub do begin edit; - FieldByName('CYColor').Value:=Trim(Order_Sub.fieldbyname('ColorName').AsString); - FieldByName('CYSeHao').Value:=Trim(Order_Sub.fieldbyname('ColorNo').AsString); + FieldByName('CYColor').Value := Trim(Order_Sub.fieldbyname('ColorName').AsString); + FieldByName('CYSeHao').Value := Trim(Order_Sub.fieldbyname('ColorNo').AsString); end; end; - if FCYID='' then + if FCYID = '' then begin if SaveData() then begin - if CopyInt=1 then + if CopyInt = 1 then begin with ADOQuery2 do begin Close; sql.Clear; - sql.Add('delete from CP_YDang_ML where CYID='''+Trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); - sql.Add(' and CengJI='''+trim(inttostr(cxTabControl1.TabIndex+1))+''' '); + sql.Add('delete from CP_YDang_ML where CYID=''' + Trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); + sql.Add(' and CengJI=''' + trim(inttostr(cxTabControl1.TabIndex + 1)) + ''' '); ExecSQL; end; with ADOQuery2 do begin Close; sql.Clear; - sql.Add('delete from CP_YDang_JG where CYID='''+Trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); - sql.Add(' and CengJI='''+trim(inttostr(cxTabControl1.TabIndex+1))+''' '); + sql.Add('delete from CP_YDang_JG where CYID=''' + Trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); + sql.Add(' and CengJI=''' + trim(inttostr(cxTabControl1.TabIndex + 1)) + ''' '); ExecSQL; end; end; @@ -2052,8 +2048,8 @@ begin end; end else - TMXSave.Click; - FCYNo:=Trim(CDS_Sub.fieldbyname('JCCYNo').AsString);//+'#'+trim(CDS_Sub.fieldbyname('CYSeHao').AsString); + TMXSave.Click; + FCYNO := Trim(CDS_Sub.fieldbyname('JCCYNo').AsString); //+'#'+trim(CDS_Sub.fieldbyname('CYSeHao').AsString); {with Order_Sub do begin first; @@ -2071,7 +2067,7 @@ begin Close; sql.Clear; SQL.Add('select * from CP_YDang_JG '); - SQL.Add('where CYID='''+trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); + SQL.Add('where CYID=''' + trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); sql.Add(' and CengJi<>1'); //sql.Add(' and isnull(IFZY,'''')=''1'''); sql.Add(' order by Cengji,JGCengJi'); @@ -2083,7 +2079,7 @@ begin First; while not eof do begin - FCYNO:=FCYNO+trim(fieldbyname('GYDM').AsString)+trim(fieldbyname('MLSeHao').AsString)+trim(fieldbyname('HXNo').AsString); + FCYNO := FCYNO + trim(fieldbyname('GYDM').AsString) + trim(fieldbyname('MLSeHao').AsString) + trim(fieldbyname('HXNo').AsString); next; end; end; @@ -2091,20 +2087,20 @@ begin begin close; sql.Clear; - sql.Add('update CP_YDang set CYNo='''+trim(FCYNo)+''''); - sql.Add(' where CYID='''+Trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); + sql.Add('update CP_YDang set CYNo=''' + trim(FCYNO) + ''''); + sql.Add(' where CYID=''' + Trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); ExecSQL; end; with ADOQueryCmd do begin Close; sql.Clear; - sql.Add('select CYID from CP_YDang where CYNo='''+Trim(FCYNo)+''''); + sql.Add('select CYID from CP_YDang where CYNo=''' + Trim(FCYNO) + ''''); //ShowMessage(sql.Text); Open; - if ADOQueryCmd.RecordCount>1 then + if ADOQueryCmd.RecordCount > 1 then begin - if CopyInt<>0 then + if CopyInt <> 0 then begin {with ADOQuery2 do begin @@ -2123,11 +2119,11 @@ begin begin close; sql.Clear; - sql.Add('update CP_YDang set CYNo='''+trim(CDS_Sub.fieldbyname('CYNo').AsString)+''''); - sql.Add(' where CYID='''+Trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); + sql.Add('update CP_YDang set CYNo=''' + trim(CDS_Sub.fieldbyname('CYNo').AsString) + ''''); + sql.Add(' where CYID=''' + Trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); ExecSQL; end; - Application.MessageBox('编号重复!','提示',0); + Application.MessageBox('编号重复!', '提示', 0); Exit; end; end; @@ -2135,70 +2131,73 @@ begin with CDS_Sub do begin edit; - FieldByName('CYNo').AsString:=Trim(FCYNo); + FieldByName('CYNo').AsString := Trim(FCYNO); end; COLSaveData(); - if CopyInt<>0 then + if CopyInt <> 0 then begin - CopyInt:=0; + CopyInt := 0; end; - WriteCxGrid('样品编辑N2'+inttostr(cxtabcontrol1.TabIndex),Tv2,'样品管理'); - WriteCxGrid('样品编辑N3'+inttostr(cxtabcontrol1.TabIndex),Tv3,'样品管理'); + WriteCxGrid('样品编辑N2' + inttostr(cxtabcontrol1.TabIndex), Tv2, '样品管理'); + WriteCxGrid('样品编辑N3' + inttostr(cxtabcontrol1.TabIndex), Tv3, '样品管理'); end; procedure TfrmCPAdd.v2MLPricePropertiesEditValueChanged(Sender: TObject); -var mavlue,FFieldName:string; - FXJ:double; +var + mavlue, FFieldName: string; + FXJ: double; begin - mavlue:=TcxTextEdit(Sender).EditingText; - FFieldName:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; - if FFieldName<>'IFSel' then + mavlue := TcxTextEdit(Sender).EditingText; + FFieldName := Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if FFieldName <> 'IFSel' then begin - if mavlue='' then mavlue:='0'; + if mavlue = '' then + mavlue := '0'; end; with Order_ML do begin edit; - FieldByName(FFieldName).value:=mavlue; + FieldByName(FFieldName).value := mavlue; end; XJGenXin(); end; procedure TfrmCPAdd.v3MLSunHaoPropertiesEditValueChanged(Sender: TObject); -var mavlue,FfieldName:string; - FJGXJ:double; +var + mavlue, FfieldName: string; + FJGXJ: double; begin - mavlue:=TcxTextEdit(Sender).EditingText; - FfieldName:=Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName; - if FfieldName<>'IFZY' then + mavlue := TcxTextEdit(Sender).EditingText; + FfieldName := Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName; + if FfieldName <> 'IFZY' then begin - if mavlue='' then mavlue:='0'; + if mavlue = '' then + mavlue := '0'; end; with Order_JG do begin Edit; - FieldByName(FfieldName).Value:=mavlue; + FieldByName(FfieldName).Value := mavlue; end; XJGenXin(); end; -procedure TfrmCPAdd.v3GYDMPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v3GYDMPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='GYName'; - flagname:='工艺'; - fnote:=True; - V1Note.Caption:='工艺代码'; - if ShowModal=1 then + flag := 'GYName'; + flagname := '工艺'; + fnote := True; + V1Note.Caption := '工艺代码'; + if ShowModal = 1 then begin with Order_JG do begin edit; - FieldByName('GYName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); - FieldByName('GYDM').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + FieldByName('GYName').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('GYDM').Value := Trim(ClientDataSet1.fieldbyname('Note').AsString); end; end; free; @@ -2207,15 +2206,17 @@ end; procedure TfrmCPAdd.TDelClick(Sender: TObject); begin - if Order_ML.IsEmpty then Exit; - if Trim(Order_ML.fieldbyname('MLID').AsString)<>'' then + if Order_ML.IsEmpty then + Exit; + if Trim(Order_ML.fieldbyname('MLID').AsString) <> '' then begin - if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit; + if Application.MessageBox('确定要删除数据吗?', '提示', 32 + 4) <> IDYES then + Exit; with ADOQueryCmd do begin Close; sql.Clear; - sql.Add('delete from CP_YDang_ML where MLID='''+Trim(Order_ML.fieldbyname('MLID').AsString)+''''); + sql.Add('delete from CP_YDang_ML where MLID=''' + Trim(Order_ML.fieldbyname('MLID').AsString) + ''''); ExecSQL; end; end; @@ -2224,7 +2225,8 @@ end; procedure TfrmCPAdd.TAddClick(Sender: TObject); begin - if CDS_Sub.IsEmpty then exit; + if CDS_Sub.IsEmpty then + exit; {if Trim(CDS_Sub.fieldbyname('CYID').AsString)='' then begin Application.MessageBox('请先保存产品信息','提示',0); @@ -2238,102 +2240,98 @@ begin end; end; -procedure TfrmCPAdd.v2MLCFPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v2MLCFPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='MLCF'; - flagname:='成份'; - if ShowModal=1 then + flag := 'MLCF'; + flagname := '成份'; + if ShowModal = 1 then begin with Order_JG do begin edit; - FieldByName('MLCF').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('MLCF').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; free; end; end; -procedure TfrmCPAdd.v4ColorNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v4ColorNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='ColorName'; - flagname:='颜色'; - MainType:=Trim(CDS_Sub.fieldbyname('CYNo').AsString); - if ShowModal=1 then + flag := 'ColorName'; + flagname := '颜色'; + MainType := Trim(CDS_Sub.fieldbyname('CYNo').AsString); + if ShowModal = 1 then begin with Order_Sub do begin edit; - FieldByName('ColorName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('ColorName').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; free; end; end; -procedure TfrmCPAdd.v2MLNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v2MLNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmCPManage_YPCXSel:=TfrmCPManage_YPCXSel.create(self); + frmCPManage_YPCXSel := TfrmCPManage_YPCXSel.create(self); with frmCPManage_YPCXSel do begin - if showmodal=1 then + if showmodal = 1 then begin with self.Order_ML do begin edit; //FieldByName('GYSName').Value:=Trim(CDS_Main.fieldbyname('DefStr7').AsString); - FieldByName('MLName').Value:=Trim(CDS_Main.fieldbyname('CYName').AsString); - FieldByName('SZSpec').Value:=Trim(CDS_Main.fieldbyname('CYSpec').AsString); - FieldByName('JWMiDu').Value:=Trim(CDS_Main.fieldbyname('DefStr6').AsString); - FieldByName('MLCode').Value:=Trim(CDS_Main.fieldbyname('XTNo').AsString); - FieldByName('MLCYNo').Value:=Trim(CDS_Main.fieldbyname('CYNo').AsString); - if CDS_Main.fieldbyname('CYMF').AsString='' then - FieldByName('MLMF').Value:=0 + FieldByName('MLName').Value := Trim(CDS_Main.fieldbyname('CYName').AsString); + FieldByName('SZSpec').Value := Trim(CDS_Main.fieldbyname('CYSpec').AsString); + FieldByName('JWMiDu').Value := Trim(CDS_Main.fieldbyname('DefStr6').AsString); + FieldByName('MLCode').Value := Trim(CDS_Main.fieldbyname('XTNo').AsString); + FieldByName('MLCYNo').Value := Trim(CDS_Main.fieldbyname('CYNo').AsString); + if CDS_Main.fieldbyname('CYMF').AsString = '' then + FieldByName('MLMF').Value := 0 else - FieldByName('MLMF').Value:=CDS_Main.fieldbyname('CYMF').AsString; - if CDS_Main.fieldbyname('CYKZ').AsString='' then - FieldByName('MLKZ').Value:=0 + FieldByName('MLMF').Value := CDS_Main.fieldbyname('CYMF').AsString; + if CDS_Main.fieldbyname('CYKZ').AsString = '' then + FieldByName('MLKZ').Value := 0 else - FieldByName('MLKZ').Value:=CDS_Main.fieldbyname('CYKZ').AsString; - FieldByName('MLCF').Value:=Trim(CDS_Main.fieldbyname('CYCF').AsString); - FieldByName('MLSeHao').Value:=Trim(CDS_Sub.fieldbyname('ColorNo').AsString)+Trim(CDS_Sub.fieldbyname('ColorName').AsString); + FieldByName('MLKZ').Value := CDS_Main.fieldbyname('CYKZ').AsString; + FieldByName('MLCF').Value := Trim(CDS_Main.fieldbyname('CYCF').AsString); + FieldByName('MLSeHao').Value := Trim(CDS_Sub.fieldbyname('ColorNo').AsString) + Trim(CDS_Sub.fieldbyname('ColorName').AsString); //post; end; with ADOQueryCmd do begin Close; sql.Clear; - sql.Add('select * from CP_YDang_JG where CYID='''+Trim(CDS_Main.fieldbyname('CYID').AsString)+''''); + sql.Add('select * from CP_YDang_JG where CYID=''' + Trim(CDS_Main.fieldbyname('CYID').AsString) + ''''); sql.Add(' and IFZY=1'); open; end; - SInitCDSData20(ADOQueryCmd,Order_JG); + SInitCDSData20(ADOQueryCmd, Order_JG); end; free; end; end; -procedure TfrmCPAdd.v3HXNoPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd.v3HXNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZdyAttachCP_HX_Sel:=TfrmZdyAttachCP_HX_Sel.create(self); + frmZdyAttachCP_HX_Sel := TfrmZdyAttachCP_HX_Sel.create(self); with frmZdyAttachCP_HX_Sel do begin - IF showmodal=1 then + if showmodal = 1 then begin Order_JG.Edit; - Order_JG.FieldByName('HXNo').Value:=trim(cds_Hz.FieldByName('zdyCode').asstring); - Order_JG.FieldByName('HXName').Value:=trim(cds_Hz.FieldByName('zdyName').asstring); - Order_JG.FieldByName('JGCode').Value:=trim(CDS_Sub.FieldByName('CYNo').AsString)+trim(cds_Hz.FieldByName('ZdyCode').asstring); + Order_JG.FieldByName('HXNo').Value := trim(cds_Hz.FieldByName('zdyCode').asstring); + Order_JG.FieldByName('HXName').Value := trim(cds_Hz.FieldByName('zdyName').asstring); + Order_JG.FieldByName('JGCode').Value := trim(CDS_Sub.FieldByName('CYNo').AsString) + trim(cds_Hz.FieldByName('ZdyCode').asstring); Order_JG.Post; end; frmZdyAttachCP_HX_Sel.Free; @@ -2342,75 +2340,77 @@ begin end; procedure TfrmCPAdd.TooladdClick(Sender: TObject); -var i:string; +var + i: string; begin - i:=IntToStr(Order_Sub.RecordCount+1); - if Length(i)<2 then - i:='0'+i; + i := IntToStr(Order_Sub.RecordCount + 1); + if Length(i) < 2 then + i := '0' + i; Order_Sub.DisableControls; with Order_Sub do begin first; while not eof do begin - if Order_Sub.Locate('ColorNo',i,[])=True then + if Order_Sub.Locate('ColorNo', i, []) = True then begin First; - i:=IntToStr(strtoint(i)+1); + i := IntToStr(strtoint(i) + 1); end; next; end; end; Order_Sub.EnableControls; - if Length(i)<2 then - i:='0'+i; + if Length(i) < 2 then + i := '0' + i; with Order_Sub do begin Append; - FieldByName('ColorNo').Value:=i; + FieldByName('ColorNo').Value := i; Post; end; end; procedure TfrmCPAdd.ToPrintClick(Sender: TObject); var - fPrintFile,FFCYID,FFCLRID:string; - DPS,i,j:Integer; - Txt,fImagePath,FCJ1,FCJ2,FCJ3,FCJ4,FCJ5,FCJ6,FCJ7,FCJ8,FHX,FHXName,FGHNo:string; + fPrintFile, FFCYID, FFCLRID: string; + DPS, i, j: Integer; + Txt, fImagePath, FCJ1, FCJ2, FCJ3, FCJ4, FCJ5, FCJ6, FCJ7, FCJ8, FHX, FHXName, FGHNo: string; Moudle: THandle; - Makebar:TMakebar; - Mixtext:TMixtext; + Makebar: TMakebar; + Mixtext: TMixtext; begin - if Order_Sub.IsEmpty then Exit; - if Order_Sub.Locate('Ssel',True,[])=false then + if Order_Sub.IsEmpty then + Exit; + if Order_Sub.Locate('Ssel', True, []) = false then begin - Application.MessageBox('没有选择数据','提示'); + Application.MessageBox('没有选择数据', '提示'); exit; end; with ADOQueryCmd do begin close; sql.Clear; - sql.Add('select GHNo from OA_YG_DangAn where YGName='''+trim(DName)+''' '); + sql.Add('select GHNo from OA_YG_DangAn where YGName=''' + trim(DName) + ''' '); open; end; - FGHNo:=trim(ADOQueryCmd.fieldbyname('GHNo').asstring); - fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\子颜色标签.rmf'; + FGHNo := trim(ADOQueryCmd.fieldbyname('GHNo').asstring); + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\子颜色标签.rmf'; with ADOQueryCmd do begin Close; sql.Clear; - sql.Add('select * from CP_YDang_JG where CYID='''+Trim(Order_Sub.fieldbyname('CYID').AsString)+''''); + sql.Add('select * from CP_YDang_JG where CYID=''' + Trim(Order_Sub.fieldbyname('CYID').AsString) + ''''); sql.Add(' and Cengji=6 and IFZY=1'); open; end; - FHX:=Trim(ADOQueryCmd.fieldbyname('HXNo').AsString); - FHXName:=Trim(ADOQueryCmd.fieldbyname('HXName').AsString); + FHX := Trim(ADOQueryCmd.fieldbyname('HXNo').AsString); + FHXName := Trim(ADOQueryCmd.fieldbyname('HXName').AsString); with ADOQueryCmd do begin Close; sql.Clear; - sql.Add('select * from CP_YDang_ML where CYID='''+Trim(Order_Sub.fieldbyname('CYID').AsString)+''''); + sql.Add('select * from CP_YDang_ML where CYID=''' + Trim(Order_Sub.fieldbyname('CYID').AsString) + ''''); sql.Add(' and IFSel=1'); open; end; @@ -2419,52 +2419,53 @@ begin first; while not eof do begin - if FieldByName('CengJi').AsInteger=1 then + if FieldByName('CengJi').AsInteger = 1 then begin - FCJ1:=Trim(FieldByName('MLName').AsString); + FCJ1 := Trim(FieldByName('MLName').AsString); end; - if FieldByName('CengJi').AsInteger=2 then + if FieldByName('CengJi').AsInteger = 2 then begin - FCJ2:=Trim(FieldByName('MLName').AsString); + FCJ2 := Trim(FieldByName('MLName').AsString); end; - if FieldByName('CengJi').AsInteger=3 then + if FieldByName('CengJi').AsInteger = 3 then begin - FCJ3:=Trim(FieldByName('MLName').AsString); + FCJ3 := Trim(FieldByName('MLName').AsString); end; - if FieldByName('CengJi').AsInteger=4 then + if FieldByName('CengJi').AsInteger = 4 then begin - FCJ4:=Trim(FieldByName('MLName').AsString); + FCJ4 := Trim(FieldByName('MLName').AsString); end; - if FieldByName('CengJi').AsInteger=5 then + if FieldByName('CengJi').AsInteger = 5 then begin - FCJ5:=Trim(FieldByName('MLName').AsString); + FCJ5 := Trim(FieldByName('MLName').AsString); end; - if FieldByName('CengJi').AsInteger=6 then + if FieldByName('CengJi').AsInteger = 6 then begin - FCJ6:=Trim(FieldByName('MLName').AsString); + FCJ6 := Trim(FieldByName('MLName').AsString); end; - if FieldByName('CengJi').AsInteger=7 then + if FieldByName('CengJi').AsInteger = 7 then begin - FCJ7:=Trim(FieldByName('MLName').AsString); + FCJ7 := Trim(FieldByName('MLName').AsString); end; - if FieldByName('CengJi').AsInteger=8 then + if FieldByName('CengJi').AsInteger = 8 then begin - FCJ8:=Trim(FieldByName('MLName').AsString); + FCJ8 := Trim(FieldByName('MLName').AsString); end; next; end; end; - DPS:=0; - FFCYID:=''; - i:=1; - if Trim(ComboBox1.Text)='' then + DPS := 0; + FFCYID := ''; + i := 1; + if Trim(ComboBox1.Text) = '' then begin - j:=1; - end else + j := 1; + end + else begin - j:=StrToInt(ComboBox1.Text); + j := StrToInt(ComboBox1.Text); end; - for i:=1 to j do + for i := 1 to j do begin Order_Sub.DisableControls; with Order_Sub do @@ -2472,49 +2473,51 @@ begin First; while not Eof do begin - if FieldByName('SSel').AsBoolean=True then + if FieldByName('SSel').AsBoolean = True then begin try - Moudle:=LoadLibrary('MakeQRBarcode.dll'); - @Makebar:=GetProcAddress(Moudle,'Make'); - @Mixtext:=GetProcAddress(Moudle,'MixText'); - Txt:=Trim(Order_Sub.fieldbyname('CLRID').AsString); - fImagePath:=ExtractFilePath(Application.ExeName)+'image\temp.bmp'; - if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName)+'image')) then - CreateDirectory(pchar(ExtractFilePath(Application.ExeName)+'image'),nil); - if FileExists(fImagePath) then DeleteFile(fImagePath); - Makebar(pchar(Txt),Length(Txt),3,3,0,PChar(fImagePath),3); + Moudle := LoadLibrary('MakeQRBarcode.dll'); + @Makebar := GetProcAddress(Moudle, 'Make'); + @Mixtext := GetProcAddress(Moudle, 'MixText'); + Txt := Trim(Order_Sub.fieldbyname('CLRID').AsString); + fImagePath := ExtractFilePath(Application.ExeName) + 'image\temp.bmp'; + if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then + CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil); + if FileExists(fImagePath) then + DeleteFile(fImagePath); + Makebar(pchar(Txt), Length(Txt), 3, 3, 0, PChar(fImagePath), 3); except - application.MessageBox('条形码生成失败!','提示信息',MB_ICONERROR); + application.MessageBox('条形码生成失败!', '提示信息', MB_ICONERROR); exit; end; if FileExists(fPrintFile) then begin - RMVariables['QRBARCODE']:=fImagePath; - RMVariables['CYMF']:=Trim(CDS_Sub.fieldbyname('CYMF').AsString); - RMVariables['CYKZ']:=Trim(CDS_Sub.fieldbyname('CYKZ').AsString); - RMVariables['CYEName']:=Trim(CDS_Sub.fieldbyname('CYEName').AsString); - RMVariables['CYCF']:=Trim(CDS_Sub.fieldbyname('CYCF').AsString); - RMVariables['XTNo']:=Trim(CDS_Sub.fieldbyname('XTNo').AsString); - RMVariables['CYECF']:=Trim(CDS_Sub.fieldbyname('CYECF').AsString); + RMVariables['QRBARCODE'] := fImagePath; + RMVariables['CYMF'] := Trim(CDS_Sub.fieldbyname('CYMF').AsString); + RMVariables['CYKZ'] := Trim(CDS_Sub.fieldbyname('CYKZ').AsString); + RMVariables['CYEName'] := Trim(CDS_Sub.fieldbyname('CYEName').AsString); + RMVariables['CYCF'] := Trim(CDS_Sub.fieldbyname('CYCF').AsString); + RMVariables['XTNo'] := Trim(CDS_Sub.fieldbyname('XTNo').AsString); + RMVariables['CYECF'] := Trim(CDS_Sub.fieldbyname('CYECF').AsString); - RMVariables['FCJ1']:=Trim(FCJ1); - RMVariables['FCJ2']:=Trim(FCJ2); - RMVariables['FCJ3']:=Trim(FCJ3); - RMVariables['FCJ4']:=Trim(FCJ4); - RMVariables['FCJ5']:=Trim(FCJ5); - RMVariables['FCJ6']:=Trim(FCJ6); - RMVariables['FCJ7']:=Trim(FCJ7); - RMVariables['FCJ8']:=Trim(FCJ8); - RMVariables['FHX']:=Trim(FHX); - RMVariables['FHXName']:=Trim(FHXName); - RMVariables['FCode']:=Trim(FGHNo); - RMVariables['FName']:=Trim(FGHNo); + RMVariables['FCJ1'] := Trim(FCJ1); + RMVariables['FCJ2'] := Trim(FCJ2); + RMVariables['FCJ3'] := Trim(FCJ3); + RMVariables['FCJ4'] := Trim(FCJ4); + RMVariables['FCJ5'] := Trim(FCJ5); + RMVariables['FCJ6'] := Trim(FCJ6); + RMVariables['FCJ7'] := Trim(FCJ7); + RMVariables['FCJ8'] := Trim(FCJ8); + RMVariables['FHX'] := Trim(FHX); + RMVariables['FHXName'] := Trim(FHXName); + RMVariables['FCode'] := Trim(FGHNo); + RMVariables['FName'] := Trim(FGHNo); RM1.LoadFromFile(fPrintFile); RM1.PrintReport; - end else + end + else begin - Application.MessageBox(PChar('没有找'+ExtractFilePath(Application.ExeName)+'Report\子颜色标签.rmf'),'提示',0); + Application.MessageBox(PChar('没有找' + ExtractFilePath(Application.ExeName) + 'Report\子颜色标签.rmf'), '提示', 0); Exit; end; end; @@ -2532,60 +2535,62 @@ begin Close; SQL.Clear; SQL.Add('select * from CP_YDang_Color '); - sql.Add('where CYID='''+Trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); - if ColorName.Text<>'' then - sql.Add(' and ColorName like '''+'%'+trim(ColorName.Text)+'%'+''''); + sql.Add('where CYID=''' + Trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); + if ColorName.Text <> '' then + sql.Add(' and ColorName like ''' + '%' + trim(ColorName.Text) + '%' + ''''); Open; end; - SCreateCDS20(ADOQuery1,Order_Sub); - SInitCDSData20(ADOQuery1,Order_Sub); + SCreateCDS20(ADOQuery1, Order_Sub); + SInitCDSData20(ADOQuery1, Order_Sub); end; procedure TfrmCPAdd.N1Click(Sender: TObject); begin - SelOKNo(Order_Sub,true); + SelOKNo(Order_Sub, true); end; procedure TfrmCPAdd.N2Click(Sender: TObject); begin - SelOKNo(Order_Sub,false); + SelOKNo(Order_Sub, false); end; procedure TfrmCPAdd.TYSXBQClick(Sender: TObject); var - fPrintFile,FFCYID,FFCLRID:string; - DPS,i,j:Integer; - Txt,fImagePath,FCJ1,FCJ2,FCJ3,FCJ4,FCJ5,FCJ6,FCJ7,FCJ8,FHX,FHXName,FGHNo:string; + fPrintFile, FFCYID, FFCLRID: string; + DPS, i, j: Integer; + Txt, fImagePath, FCJ1, FCJ2, FCJ3, FCJ4, FCJ5, FCJ6, FCJ7, FCJ8, FHX, FHXName, FGHNo: string; Moudle: THandle; - Makebar:TMakebar; - Mixtext:TMixtext; + Makebar: TMakebar; + Mixtext: TMixtext; begin - if Order_Sub.IsEmpty then Exit; - if Order_Sub.Locate('Ssel',True,[])=false then + if Order_Sub.IsEmpty then + Exit; + if Order_Sub.Locate('Ssel', True, []) = false then begin - Application.MessageBox('没有选择数据','提示'); + Application.MessageBox('没有选择数据', '提示'); exit; end; with ADOQueryCmd do begin close; sql.Clear; - sql.Add('select GHNo from OA_YG_DangAn where YGName='''+trim(DName)+''' '); + sql.Add('select GHNo from OA_YG_DangAn where YGName=''' + trim(DName) + ''' '); open; end; - FGHNo:=trim(ADOQueryCmd.fieldbyname('GHNo').asstring); - fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\颜色小标签.rmf'; - DPS:=0; - FFCYID:=''; - i:=1; - if Trim(ComboBox1.Text)='' then + FGHNo := trim(ADOQueryCmd.fieldbyname('GHNo').asstring); + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\颜色小标签.rmf'; + DPS := 0; + FFCYID := ''; + i := 1; + if Trim(ComboBox1.Text) = '' then begin - j:=1; - end else + j := 1; + end + else begin - j:=StrToInt(ComboBox1.Text); + j := StrToInt(ComboBox1.Text); end; - for i:=1 to j do + for i := 1 to j do begin Order_Sub.DisableControls; with Order_Sub do @@ -2593,40 +2598,42 @@ begin First; while not Eof do begin - if FieldByName('SSel').AsBoolean=True then + if FieldByName('SSel').AsBoolean = True then begin try - Moudle:=LoadLibrary('MakeQRBarcode.dll'); - @Makebar:=GetProcAddress(Moudle,'Make'); - @Mixtext:=GetProcAddress(Moudle,'MixText'); - Txt:=Trim(Order_Sub.fieldbyname('CLRID').AsString); - fImagePath:=ExtractFilePath(Application.ExeName)+'image\temp.bmp'; - if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName)+'image')) then - CreateDirectory(pchar(ExtractFilePath(Application.ExeName)+'image'),nil); - if FileExists(fImagePath) then DeleteFile(fImagePath); - Makebar(pchar(Txt),Length(Txt),3,3,0,PChar(fImagePath),3); + Moudle := LoadLibrary('MakeQRBarcode.dll'); + @Makebar := GetProcAddress(Moudle, 'Make'); + @Mixtext := GetProcAddress(Moudle, 'MixText'); + Txt := Trim(Order_Sub.fieldbyname('CLRID').AsString); + fImagePath := ExtractFilePath(Application.ExeName) + 'image\temp.bmp'; + if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then + CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil); + if FileExists(fImagePath) then + DeleteFile(fImagePath); + Makebar(pchar(Txt), Length(Txt), 3, 3, 0, PChar(fImagePath), 3); except - application.MessageBox('条形码生成失败!','提示信息',MB_ICONERROR); + application.MessageBox('条形码生成失败!', '提示信息', MB_ICONERROR); exit; end; if FileExists(fPrintFile) then begin - RMVariables['QRBARCODE']:=fImagePath; - RMVariables['CYMF']:=Trim(CDS_Sub.fieldbyname('CYMF').AsString); - RMVariables['CYKZ']:=Trim(CDS_Sub.fieldbyname('CYKZ').AsString); - RMVariables['CYEName']:=Trim(CDS_Sub.fieldbyname('CYEName').AsString); - RMVariables['CYCF']:=Trim(CDS_Sub.fieldbyname('CYCF').AsString); - RMVariables['XTNo']:=Trim(CDS_Sub.fieldbyname('XTNo').AsString); - RMVariables['CYECF']:=Trim(CDS_Sub.fieldbyname('CYECF').AsString); - RMVariables['FHX']:=Trim(FHX); - RMVariables['FHXName']:=Trim(FHXName); - RMVariables['FCode']:=Trim(FGHNo); - RMVariables['FName']:=Trim(FGHNo); + RMVariables['QRBARCODE'] := fImagePath; + RMVariables['CYMF'] := Trim(CDS_Sub.fieldbyname('CYMF').AsString); + RMVariables['CYKZ'] := Trim(CDS_Sub.fieldbyname('CYKZ').AsString); + RMVariables['CYEName'] := Trim(CDS_Sub.fieldbyname('CYEName').AsString); + RMVariables['CYCF'] := Trim(CDS_Sub.fieldbyname('CYCF').AsString); + RMVariables['XTNo'] := Trim(CDS_Sub.fieldbyname('XTNo').AsString); + RMVariables['CYECF'] := Trim(CDS_Sub.fieldbyname('CYECF').AsString); + RMVariables['FHX'] := Trim(FHX); + RMVariables['FHXName'] := Trim(FHXName); + RMVariables['FCode'] := Trim(FGHNo); + RMVariables['FName'] := Trim(FGHNo); RM1.LoadFromFile(fPrintFile); RM1.PrintReport; - end else + end + else begin - Application.MessageBox(PChar('没有找'+ExtractFilePath(Application.ExeName)+'Report\颜色小标签.rmf'),'提示',0); + Application.MessageBox(PChar('没有找' + ExtractFilePath(Application.ExeName) + 'Report\颜色小标签.rmf'), '提示', 0); Exit; end; end; @@ -2637,52 +2644,53 @@ begin end; end; -procedure TfrmCPAdd.Tv4FocusedRecordChanged(Sender: TcxCustomGridTableView; - APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; - ANewItemRecordFocusingChanged: Boolean); +procedure TfrmCPAdd.Tv4FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); var - i,j:integer; - jpg:TJpegImage; + i, j: integer; + jpg: TJpegImage; myStream: TADOBlobStream; begin - IF Order_Sub.IsEmpty then exit; - if Order_Sub.FieldByName('CLRID').AsString='' then Exit; + if Order_Sub.IsEmpty then + exit; + if Order_Sub.FieldByName('CLRID').AsString = '' then + Exit; try with adoqueryPicture do begin close; sql.Clear; sql.Add(' select A.TFID,A.WBID,A.FilesOther,B.FileName from TP_File A,XD_File B '); - sql.Add(' where A.TFID =B.XFID and B.CYID='+quotedstr(trim(Order_Sub.fieldbyname('CLRID').AsString))); + sql.Add(' where A.TFID =B.XFID and B.CYID=' + quotedstr(trim(Order_Sub.fieldbyname('CLRID').AsString))); //ShowMessage(SQL.Text); open; end; - j:=length(Mach); - if j>0 then + j := length(Mach); + if j > 0 then begin - for i:=0 to j-1 do + for i := 0 to j - 1 do begin Mach[i].free; end; end; SetLength(Mach, 0); - j:=adoqueryPicture.RecordCount; - if j<1 then exit; + j := adoqueryPicture.RecordCount; + if j < 1 then + exit; adoqueryPicture.DisableControls; adoqueryPicture.First; SetLength(Mach, j); - jpg:=TJpegImage.Create(); - for i:=0 to j-1 do + jpg := TJpegImage.Create(); + for i := 0 to j - 1 do begin - if trim(adoqueryPicture.fieldbyname('FilesOther').AsString)<>'' then + if trim(adoqueryPicture.fieldbyname('FilesOther').AsString) <> '' then begin - myStream:=tadoblobstream.Create(tblobfield(adoqueryPicture.fieldbyname('FilesOther')),bmread); + myStream := tadoblobstream.Create(tblobfield(adoqueryPicture.fieldbyname('FilesOther')), bmread); jpg.LoadFromStream(myStream); Mach[i] := TfrmSlt.Create(Self); - Mach[i].Name:=trim(adoqueryPicture.fieldbyname('TFID').AsString); - Mach[i].Parent:=ScrollBox1; - Mach[I].Left:=0+i*165; - Mach[i].Init(adoqueryPicture.fieldbyname('TFID').AsString,adoqueryPicture.fieldbyname('FileName').AsString,jpg); + Mach[i].Name := trim(adoqueryPicture.fieldbyname('TFID').AsString); + Mach[i].Parent := ScrollBox1; + Mach[i].Left := 0 + i * 165; + Mach[i].Init(adoqueryPicture.fieldbyname('TFID').AsString, adoqueryPicture.fieldbyname('FileName').AsString, jpg); end; adoqueryPicture.Next; end; @@ -2695,31 +2703,31 @@ end; procedure TfrmCPAdd.ToolButton3Click(Sender: TObject); var - fHandle:THandle; - FInt:Integer; - FFName,FPath:String; + fHandle: THandle; + FInt: Integer; + FFName, FPath: string; begin ToolBar1.SetFocus; with ADOQueryTemp do begin close; sql.Clear; - sql.Add('select * from XD_File where CYID='''+Trim(Order_sub.fieldbyname('CLRID').AsString)+''''); + sql.Add('select * from XD_File where CYID=''' + Trim(Order_sub.fieldbyname('CLRID').AsString) + ''''); Open; if IsEmpty then begin - Application.MessageBox('样品图片未上传!','提示',0); + Application.MessageBox('样品图片未上传!', '提示', 0); Exit; end; end; try ReadINIFile(); - server:=ReadINIFileStr('SYSTEMSET.INI','SERVER','服务器地址','127.0.0.1'); - if Length(server)<6 then + server := ReadINIFileStr('SYSTEMSET.INI', 'SERVER', '服务器地址', '127.0.0.1'); + if Length(server) < 6 then begin - server:='127.0.0.1'; + server := '127.0.0.1'; end; - IdFTP1.Host :=server;//PicSvr; + IdFTP1.Host := server; //PicSvr; IdFTP1.Username := 'three'; IdFTP1.Password := '641010'; IdFTP1.Connect(); @@ -2728,36 +2736,37 @@ begin Application.MessageBox('无法连接到文件服务器,请检查!', '提示', MB_ICONWARNING); Exit; end; - FPath:='D:\Right1209\'; + FPath := 'D:\Right1209\'; if not DirectoryExists(ExtractFileDir(FPath)) then CreateDir(ExtractFileDir(FPath)); - FFName:=Trim(ADOQueryTemp.fieldbyname('FileName').AsString); - FFName:=FPath+FFName; + FFName := Trim(ADOQueryTemp.fieldbyname('FileName').AsString); + FFName := FPath + FFName; if FileExists(FFName) then begin - FInt:=1; + FInt := 1; end; - if FInt<>1 then - IdFTP1.Get(UserDataFlag+'YP\'+Trim(ADOQueryTemp.fieldbyname('FileName').AsString), - FPath+Trim(ADOQueryTemp.fieldbyname('FileName').AsString) - ); - if IdFTP1.Connected then IdFTP1.Quit; - ShellExecute(Handle, 'open',PChar(FPath+Trim(ADOQueryTemp.fieldbyname('FileName').AsString)),'', '', SW_SHOWNORMAL); + if FInt <> 1 then + IdFTP1.Get(UserDataFlag + 'YP\' + Trim(ADOQueryTemp.fieldbyname('FileName').AsString), FPath + Trim(ADOQueryTemp.fieldbyname('FileName').AsString)); + if IdFTP1.Connected then + IdFTP1.Quit; + ShellExecute(Handle, 'open', PChar(FPath + Trim(ADOQueryTemp.fieldbyname('FileName').AsString)), '', '', SW_SHOWNORMAL); end; procedure TfrmCPAdd.FormDestroy(Sender: TObject); -var j,i:integer; +var + j, i: integer; begin - j:=length(Mach); - if j>0 then + j := length(Mach); + if j > 0 then begin - for i:=0 to j-1 do + for i := 0 to j - 1 do begin Mach[i].free; end; end; SetLength(Mach, 0); - frmCPAdd:=nil; + frmCPAdd := nil; end; end. + diff --git a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_CPAdd_ZLR.dfm b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_CPAdd_ZLR.dfm index 8053893..1a10986 100644 --- a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_CPAdd_ZLR.dfm +++ b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_CPAdd_ZLR.dfm @@ -8,7 +8,7 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR Color = clBtnFace Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -13 + Font.Height = -12 Font.Name = #23435#20307 Font.Style = [] OldCreateOrder = False @@ -16,15 +16,15 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR WindowState = wsMaximized OnDestroy = FormDestroy OnShow = FormShow - PixelsPerInch = 107 - TextHeight = 13 + PixelsPerInch = 96 + TextHeight = 12 object ToolBar1: TToolBar Left = 0 Top = 0 - Width = 1381 + Width = 1389 AutoSize = True ButtonHeight = 30 - ButtonWidth = 61 + ButtonWidth = 59 Caption = 'ToolBar1' Color = clSkyBlue DisabledImages = DataLink_YPGLBOM.ThreeImgList @@ -43,7 +43,7 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR OnClick = ToolButton1Click end object TBClose: TToolButton - Left = 65 + Left = 63 Top = 0 AutoSize = True Caption = #20851#38381 @@ -51,7 +51,7 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR OnClick = TBCloseClick end object Panel5: TPanel - Left = 130 + Left = 126 Top = 0 Width = 209 Height = 30 @@ -76,7 +76,7 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR Left = 118 Top = 4 Width = 86 - Height = 21 + Height = 20 TabOrder = 0 end end @@ -84,12 +84,12 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR object cxGrid1: TcxGrid Left = 0 Top = 32 - Width = 1381 - Height = 105 + Width = 1389 + Height = 96 Align = alTop TabOrder = 1 object Tv1: TcxGridDBTableView - NavigatorButtons.ConfirmDelete = False + Navigator.Buttons.CustomButtons = <> DataController.DataSource = DataSource2 DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] DataController.Summary.DefaultGroupSummaryItems = <> @@ -297,14 +297,14 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR end end object cxGrid5: TcxGrid - Left = 21 - Top = 848 - Width = 1383 - Height = 15 + Left = 19 + Top = 783 + Width = 1277 + Height = 14 TabOrder = 2 Visible = False object tv5: TcxGridDBTableView - NavigatorButtons.ConfirmDelete = False + Navigator.Buttons.CustomButtons = <> DataController.DataSource = DataSource5 DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] DataController.Summary.DefaultGroupSummaryItems = <> @@ -429,8 +429,8 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR end object cxSplitter4: TcxSplitter Left = 0 - Top = 137 - Width = 1381 + Top = 128 + Width = 1389 Height = 8 HotZoneClassName = 'TcxMediaPlayer9Style' AlignSplitter = salTop @@ -438,9 +438,9 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR end object Panel2: TPanel Left = 0 - Top = 467 - Width = 929 - Height = 205 + Top = 434 + Width = 858 + Height = 247 Align = alLeft BevelInner = bvRaised BevelOuter = bvLowered @@ -448,13 +448,13 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR object cxGrid4: TcxGrid Left = 2 Top = 32 - Width = 514 - Height = 171 + Width = 474 + Height = 213 Align = alLeft PopupMenu = PopupMenu1 TabOrder = 0 object Tv4: TcxGridDBTableView - NavigatorButtons.ConfirmDelete = False + Navigator.Buttons.CustomButtons = <> OnCanFocusRecord = Tv4CanFocusRecord OnCellClick = Tv4CellClick OnFocusedRecordChanged = Tv4FocusedRecordChanged @@ -580,7 +580,7 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR object ToolBar3: TToolBar Left = 2 Top = 2 - Width = 925 + Width = 854 Height = 30 AutoSize = True ButtonHeight = 30 @@ -719,18 +719,18 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR end end object GroupBox1: TGroupBox - Left = 516 + Left = 476 Top = 32 - Width = 411 - Height = 171 + Width = 380 + Height = 213 Align = alClient Caption = #26679#21697#32553#30053#22270#65288#21452#20987#22270#29255#26597#30475#21407#22270#65289 TabOrder = 2 object ScrollBox1: TScrollBox Left = 2 - Top = 15 - Width = 407 - Height = 154 + Top = 14 + Width = 376 + Height = 197 Align = alClient BevelInner = bvLowered BorderStyle = bsNone @@ -740,20 +740,20 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR end object Panel1: TPanel Left = 0 - Top = 145 - Width = 1381 - Height = 314 + Top = 136 + Width = 1389 + Height = 290 Align = alTop TabOrder = 5 object cxGrid2: TcxGrid Left = 1 Top = 31 - Width = 1379 - Height = 97 + Width = 1387 + Height = 89 Align = alTop TabOrder = 0 object Tv2: TcxGridDBTableView - NavigatorButtons.ConfirmDelete = False + Navigator.Buttons.CustomButtons = <> DataController.DataSource = DataSource3 DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] DataController.Summary.DefaultGroupSummaryItems = <> @@ -944,7 +944,7 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR object ToolBar2: TToolBar Left = 1 Top = 1 - Width = 1379 + Width = 1387 Height = 30 AutoSize = True ButtonHeight = 30 @@ -992,13 +992,13 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR end object cxGrid3: TcxGrid Left = 1 - Top = 165 - Width = 1379 - Height = 148 + Top = 157 + Width = 1387 + Height = 132 Align = alClient TabOrder = 2 object Tv3: TcxGridDBTableView - NavigatorButtons.ConfirmDelete = False + Navigator.Buttons.CustomButtons = <> DataController.DataSource = DataSource4 DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] DataController.Summary.DefaultGroupSummaryItems = <> @@ -1183,8 +1183,8 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR end object ToolBar4: TToolBar Left = 1 - Top = 136 - Width = 1379 + Top = 128 + Width = 1387 Height = 29 ButtonHeight = 30 ButtonWidth = 59 @@ -1232,8 +1232,8 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR end object cxSplitter3: TcxSplitter Left = 1 - Top = 128 - Width = 1379 + Top = 120 + Width = 1387 Height = 8 HotZoneClassName = 'TcxMediaPlayer9Style' AlignSplitter = salTop @@ -1242,18 +1242,18 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR end object cxSplitter1: TcxSplitter Left = 0 - Top = 459 - Width = 1381 + Top = 426 + Width = 1389 Height = 8 HotZoneClassName = 'TcxMediaPlayer9Style' AlignSplitter = salTop Control = Panel1 end object Panel3: TPanel - Left = 937 - Top = 467 - Width = 444 - Height = 205 + Left = 866 + Top = 434 + Width = 523 + Height = 247 Align = alClient BevelInner = bvRaised BevelOuter = bvLowered @@ -1261,7 +1261,7 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR object ToolBar5: TToolBar Left = 2 Top = 2 - Width = 440 + Width = 519 Height = 25 ButtonHeight = 30 ButtonWidth = 59 @@ -1309,12 +1309,12 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR object cxGrid6: TcxGrid Left = 2 Top = 27 - Width = 440 - Height = 176 + Width = 519 + Height = 218 Align = alClient TabOrder = 1 object TV6: TcxGridDBTableView - NavigatorButtons.ConfirmDelete = False + Navigator.Buttons.CustomButtons = <> DataController.DataSource = DataSource7 DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] DataController.Summary.DefaultGroupSummaryItems = < @@ -1400,10 +1400,10 @@ object frmCPAdd_ZLR: TfrmCPAdd_ZLR end end object cxSplitter2: TcxSplitter - Left = 929 - Top = 467 + Left = 858 + Top = 434 Width = 8 - Height = 205 + Height = 247 HotZoneClassName = 'TcxMediaPlayer9Style' Control = Panel2 end diff --git a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_CPAdd_ZLR.pas b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_CPAdd_ZLR.pas index e74af7c..b11370c 100644 --- a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_CPAdd_ZLR.pas +++ b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_CPAdd_ZLR.pas @@ -1,18 +1,31 @@ unit U_CPAdd_ZLR; interface + uses - Windows, Messages,strutils, SysUtils, Variants, Classes, Graphics, Controls, Forms, - Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, + Windows, Messages, strutils, SysUtils, Variants, Classes, Graphics, Controls, + Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, DBClient, cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, - cxControls, cxGridCustomView, cxGrid, ComCtrls, ToolWin, - cxGridCustomPopupMenu, cxGridPopupMenu, cxTextEdit, cxButtonEdit, - StdCtrls, ExtCtrls, cxCurrencyEdit, cxDropDownEdit, cxPC, cxSplitter, - RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, cxCheckBox, - Menus, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP, - RM_BarCode,ShellAPI,IniFiles,jpeg,U_SLT,Math, cxCalendar; - + cxControls, cxGridCustomView, cxGrid, ComCtrls, ToolWin, cxGridCustomPopupMenu, + cxGridPopupMenu, cxTextEdit, cxButtonEdit, StdCtrls, ExtCtrls, cxCurrencyEdit, + cxDropDownEdit, cxPC, cxSplitter, RM_Dataset, RM_System, RM_Common, RM_Class, + RM_GridReport, cxCheckBox, Menus, IdBaseComponent, IdComponent, + IdTCPConnection, IdTCPClient, IdFTP, RM_BarCode, ShellAPI, IniFiles, jpeg, + U_SLT, Math, cxCalendar, cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, + dxSkinBlack, dxSkinBlue, dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, + dxSkinDarkRoom, dxSkinDarkSide, dxSkinDevExpressDarkStyle, + dxSkinDevExpressStyle, dxSkinFoggy, dxSkinGlassOceans, dxSkinHighContrast, + dxSkiniMaginary, dxSkinLilian, dxSkinLiquidSky, dxSkinLondonLiquidSky, + dxSkinMcSkin, dxSkinMetropolis, dxSkinMetropolisDark, dxSkinMoneyTwins, + dxSkinOffice2007Black, dxSkinOffice2007Blue, dxSkinOffice2007Green, + dxSkinOffice2007Pink, dxSkinOffice2007Silver, dxSkinOffice2010Black, + dxSkinOffice2010Blue, dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, + dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinPumpkin, dxSkinSeven, + dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus, dxSkinSilver, + dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008, dxSkinTheAsphaltWorld, + dxSkinsDefaultPainters, dxSkinValentine, dxSkinVS2010, dxSkinWhiteprint, + dxSkinXmas2008Blue, dxSkinscxPCPainter, cxNavigator; type TfrmCPAdd_ZLR = class(TForm) @@ -226,78 +239,50 @@ type procedure TBCloseClick(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure v1Column8PropertiesEditValueChanged(Sender: TObject); - procedure v1Column2PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v1Column26PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v1Column27PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v1Column14PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); + procedure v1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1Column26PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1Column27PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1Column14PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure v1CYPrice1PropertiesEditValueChanged(Sender: TObject); - procedure v1DefStr10PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); + procedure v1DefStr10PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure ToolButton2Click(Sender: TObject); - procedure v1CPNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); + procedure v1CPNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure ToolButton4Click(Sender: TObject); procedure ToolButton5Click(Sender: TObject); procedure ToolButton9Click(Sender: TObject); - procedure v1CYColorPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v1CYMFPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v1CYKZPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v1DefStr6PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v1CYSpecPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v2MLColorPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v4CYColorPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v3JGGXPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v3JGFactoryNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v1DefStr7PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v2GYSNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v3GXDMPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); + procedure v1CYColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1CYMFPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1CYKZPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1DefStr6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1CYSpecPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v2MLColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v4CYColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v3JGGXPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v3JGFactoryNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v1DefStr7PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v2GYSNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v3GXDMPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure TClick(Sender: TObject); procedure v2MLPricePropertiesEditValueChanged(Sender: TObject); procedure v3MLSunHaoPropertiesEditValueChanged(Sender: TObject); - procedure v3GYDMPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v2MLCFPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure v4ColorNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); + procedure v3GYDMPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v2MLCFPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure v4ColorNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure TDelClick(Sender: TObject); procedure ToolButton3Click(Sender: TObject); procedure TMXSaveClick(Sender: TObject); procedure ToolButton6Click(Sender: TObject); - procedure v2MLNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); + procedure v2MLNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure v2MLMFPropertiesEditValueChanged(Sender: TObject); - procedure v3GYNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); - procedure cxGridDBColumn16PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); + procedure v3GYNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); + procedure cxGridDBColumn16PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure TSaveClick(Sender: TObject); - procedure v3HXNoPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); + procedure v3HXNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure TAddClick(Sender: TObject); procedure ToolButton7Click(Sender: TObject); procedure ToolButton8Click(Sender: TObject); - procedure Tv4CellClick(Sender: TcxCustomGridTableView; - ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; - AShift: TShiftState; var AHandled: Boolean); - procedure Tv4CanFocusRecord(Sender: TcxCustomGridTableView; - ARecord: TcxCustomGridRecord; var AAllow: Boolean); + procedure Tv4CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); + procedure Tv4CanFocusRecord(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; var AAllow: Boolean); procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure ToolButton10Click(Sender: TObject); @@ -305,27 +290,25 @@ type procedure ColorNameChange(Sender: TObject); procedure TTPSCClick(Sender: TObject); procedure ToolButton12Click(Sender: TObject); - procedure Tv4FocusedRecordChanged(Sender: TcxCustomGridTableView; - APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; - ANewItemRecordFocusingChanged: Boolean); + procedure Tv4FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); procedure FormDestroy(Sender: TObject); private - Fint:Integer; + Fint: Integer; procedure InitSubGrid(); - function SaveData():Boolean; - function getmaxNo(FsCPID,FsCPNO:string):string; - function MLSavedata(Order_ML:TClientDataSet):Boolean; - function JGSavedata(Order_JG:TClientDataSet;Order_ML:TClientDataSet):Boolean; + function SaveData(): Boolean; + function getmaxNo(FsCPID, FsCPNO: string): string; + function MLSavedata(Order_ML: TClientDataSet): Boolean; + function JGSavedata(Order_JG: TClientDataSet; Order_ML: TClientDataSet): Boolean; procedure COLSaveData(); - function ColMLSavedata(FMCYID:string):boolean; - function ColJGSaveData(FMXCYID:string):Boolean; + function ColMLSavedata(FMCYID: string): boolean; + function ColJGSaveData(FMXCYID: string): Boolean; procedure Appenddata(); procedure XJGenXin(); procedure MXGYSSave(); { Private declarations } public - FCYID,FCYCode,FCPID,FCPNO,FCPName:String; - CopyInt:Integer; + FCYID, FCYCode, FCPID, FCPNO, FCPName: string; + CopyInt: Integer; { Public declarations } end; @@ -335,30 +318,32 @@ var Mach: array of TfrmSlt; implementation -uses - U_DataLink,U_Fun,U_iniParam,U_ZDYHelp, U_ZdyAttachCP_HX_sel,U_FileUp, - U_ZdyAttachCP_Type_sel,U_ZdyAttachGYS_CX,U_CPManage_YPCXSel; +uses + U_DataLink, U_Fun, U_ZDYHelp, U_ZdyAttachCP_HX_sel, U_CPManage_YPCXSel, + U_ZdyAttachCP_Type_sel, U_ZdyAttachGYS_CX, U_CPManage_YPCX, U_CPManage_ColCX, + U_FileUp; {$R *.dfm} + procedure TfrmCPAdd_ZLR.XJGenXin(); -var FXJ:double; +var + FXJ: double; begin Order_JG.DisableConstraints; with Order_JG do begin First; - FXJ:=0; + FXJ := 0; while not eof do begin - if FieldByName('IFZY').AsBoolean=true then + if FieldByName('IFZY').AsBoolean = true then begin - if FXJ=0 then - FXJ:=Order_ML.fieldbyname('MLMF').AsFloat*Order_ML.fieldbyname('MLKZ').AsFloat*Order_ML.fieldbyname('MLPrice').AsFloat - *(1+fieldbyname('MLSunHao').AsFloat)+fieldbyname('JGPrice').AsFloat + if FXJ = 0 then + FXJ := Order_ML.fieldbyname('MLMF').AsFloat * Order_ML.fieldbyname('MLKZ').AsFloat * Order_ML.fieldbyname('MLPrice').AsFloat * (1 + fieldbyname('MLSunHao').AsFloat) + fieldbyname('JGPrice').AsFloat else - FXJ:=FXJ*(1+fieldbyname('MLSunHao').AsFloat)+fieldbyname('JGPrice').AsFloat; + FXJ := FXJ * (1 + fieldbyname('MLSunHao').AsFloat) + fieldbyname('JGPrice').AsFloat; edit; - FieldByName('XJPrice').Value:=FXJ; + FieldByName('XJPrice').Value := FXJ; end; next; end; @@ -371,16 +356,16 @@ begin while not eof do begin edit; - FieldByName('ZPrice').Value:=FXJ; + FieldByName('ZPrice').Value := FXJ; Next; end; end; Order_ML.EnableConstraints; end; -function TfrmCPAdd_ZLR.ColJGSaveData(FMXCYID:string):Boolean; +function TfrmCPAdd_ZLR.ColJGSaveData(FMXCYID: string): Boolean; var - maxId:String; + maxId: string; begin try with ADOQueryCmd do @@ -388,7 +373,7 @@ begin close; sql.Clear; sql.Add('select * from CP_YDang_JG '); - sql.Add('where CYID='''+trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); + sql.Add('where CYID=''' + trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); open; end; with ADOQueryCmd do @@ -396,60 +381,61 @@ begin first; while not eof do begin - if GetLSNo(ADOQuery2,maxId,'','CP_YDang_JG',4,1)=False then + if GetLSNo(ADOQuery2, maxId, '', 'CP_YDang_JG', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('取最大号失败!','提示',0); + Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; with ADOQuery2 do begin Close; SQL.Clear; - sql.Add('select * from CP_YDang_JG where JGID='''+Trim(maxId)+''''); + sql.Add('select * from CP_YDang_JG where JGID=''' + Trim(maxId) + ''''); Open; end; with ADOQuery2 do begin Append; - FieldByName('JGID').Value:=Trim(maxid); - FieldByName('CYID').Value:=Trim(FMXCYID); - FieldByName('Filler').Value:=Trim(DName); - FieldByName('Filltime').Value:=SGetServerDate(ADOQueryTemp); - FieldByName('IFZY').Value:=ADOQuery2.fieldbyname('IFZY').AsString; - FieldByName('JGCode').Value:=ADOQuery2.fieldbyname('JGCode').AsString; - FieldByName('JGCengJi').Value:=ADOQuery2.fieldbyname('JGCengJi').AsFloat; - FieldByName('JGGX').Value:=ADOQuery2.fieldbyname('JGGX').AsString; - FieldByName('GXDM').Value:=ADOQuery2.fieldbyname('GXDM').AsString; - FieldByName('JGFactoryName').Value:=ADOQuery2.fieldbyname('JGFactoryName').AsString; - FieldByName('GYName').Value:=ADOQuery2.fieldbyname('GYName').AsString; - FieldByName('GYDM').Value:=ADOQuery2.fieldbyname('GYDM').AsString; - FieldByName('HXNo').Value:=ADOQuery2.fieldbyname('HXNo').AsString; - FieldByName('MLKZ').Value:=ADOQuery2.fieldbyname('MLKZ').AsFloat; - FieldByName('MLMF').Value:=ADOQuery2.fieldbyname('MLMF').AsFloat; - FieldByName('SZSpec').Value:=ADOQuery2.fieldbyname('SZSpec').AsString; - FieldByName('JWMiDu').Value:=ADOQuery2.fieldbyname('JWMiDu').AsString; - FieldByName('MLColor').Value:=ADOQuery2.fieldbyname('MLColor').AsString; - FieldByName('MLSeHao').Value:=ADOQuery2.fieldbyname('MLSeHao').AsString; - FieldByName('JGNote').Value:=ADOQuery2.fieldbyname('JGNote').AsString; - FieldByName('Price').Value:=ADOQuery2.fieldbyname('Price').AsFloat; - FieldByName('MLSunHao').Value:=ADOQuery2.fieldbyname('MLSunHao').AsFloat; - FieldByName('JGPrice').Value:=ADOQuery2.fieldbyname('JGPrice').AsFloat; - FieldByName('XJPrice').Value:=ADOQuery2.fieldbyname('XJPrice').AsFloat; + FieldByName('JGID').Value := Trim(maxId); + FieldByName('CYID').Value := Trim(FMXCYID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('Filltime').Value := SGetServerDate(ADOQueryTemp); + FieldByName('IFZY').Value := ADOQuery2.fieldbyname('IFZY').AsString; + FieldByName('JGCode').Value := ADOQuery2.fieldbyname('JGCode').AsString; + FieldByName('JGCengJi').Value := ADOQuery2.fieldbyname('JGCengJi').AsFloat; + FieldByName('JGGX').Value := ADOQuery2.fieldbyname('JGGX').AsString; + FieldByName('GXDM').Value := ADOQuery2.fieldbyname('GXDM').AsString; + FieldByName('JGFactoryName').Value := ADOQuery2.fieldbyname('JGFactoryName').AsString; + FieldByName('GYName').Value := ADOQuery2.fieldbyname('GYName').AsString; + FieldByName('GYDM').Value := ADOQuery2.fieldbyname('GYDM').AsString; + FieldByName('HXNo').Value := ADOQuery2.fieldbyname('HXNo').AsString; + FieldByName('MLKZ').Value := ADOQuery2.fieldbyname('MLKZ').AsFloat; + FieldByName('MLMF').Value := ADOQuery2.fieldbyname('MLMF').AsFloat; + FieldByName('SZSpec').Value := ADOQuery2.fieldbyname('SZSpec').AsString; + FieldByName('JWMiDu').Value := ADOQuery2.fieldbyname('JWMiDu').AsString; + FieldByName('MLColor').Value := ADOQuery2.fieldbyname('MLColor').AsString; + FieldByName('MLSeHao').Value := ADOQuery2.fieldbyname('MLSeHao').AsString; + FieldByName('JGNote').Value := ADOQuery2.fieldbyname('JGNote').AsString; + FieldByName('Price').Value := ADOQuery2.fieldbyname('Price').AsFloat; + FieldByName('MLSunHao').Value := ADOQuery2.fieldbyname('MLSunHao').AsFloat; + FieldByName('JGPrice').Value := ADOQuery2.fieldbyname('JGPrice').AsFloat; + FieldByName('XJPrice').Value := ADOQuery2.fieldbyname('XJPrice').AsFloat; Post; end; next; end; end; - except; + except + ; ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('保存失败!','提示',0); + Application.MessageBox('保存失败!', '提示', 0); end; end; -function TfrmCPAdd_ZLR.ColMLSavedata(FMCYID:string):boolean; +function TfrmCPAdd_ZLR.ColMLSavedata(FMCYID: string): boolean; var - maxId:String; + maxId: string; begin try with ADOQueryCmd do @@ -457,7 +443,7 @@ begin close; sql.Clear; sql.Add('select * from CP_YDang_ML '); - sql.Add('where CYID='''+trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); + sql.Add('where CYID=''' + trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); open; end; with ADOQueryCmd do @@ -465,48 +451,48 @@ begin first; while not eof do begin - if GetLSNo(ADOQuery2,maxId,'','CP_YDang_ML',4,1)=False then + if GetLSNo(ADOQuery2, maxId, '', 'CP_YDang_ML', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('取最大号失败!','提示',0); + Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; with ADOQuery2 do begin Close; SQL.Clear; - sql.Add('select * from CP_YDang_ML where MLID='''+Trim(maxId)+''''); + sql.Add('select * from CP_YDang_ML where MLID=''' + Trim(maxId) + ''''); Open; end; with ADOQuery2 do begin Append; - FieldByName('MLID').Value:=Trim(maxId); + FieldByName('MLID').Value := Trim(maxId); //SSetSaveDataCDSNew(ADOQuery2,Tv2,Order_ML,'CP_YDang_ML',0); - FieldByName('CYID').Value:=Trim(FMCYID); - FieldByName('Filler').Value:=Trim(DName); - FieldByName('Filltime').Value:=SGetServerDate(ADOQueryTemp); - FieldByName('MLPrice').Value:=Order_ML.fieldbyname('MLPrice').AsFloat; - FieldByName('MLSunHao').Value:=Order_ML.fieldbyname('MLSunHao').AsFloat; - FieldByName('ZPrice').Value:=Order_ML.fieldbyname('ZPrice').AsFloat; - FieldByName('JGZPrice').Value:=Order_ML.fieldbyname('JGZPrice').AsFloat; - FieldByName('CengJi').Value:=ADOQueryCmd.fieldbyname('CengJi').AsFloat; - FieldByName('IFSel').Value:=ADOQueryCmd.fieldbyname('IFSel').AsString; - FieldByName('MLCode').Value:=ADOQueryCmd.fieldbyname('MLCode').AsString; - FieldByName('GYSName').Value:=ADOQueryCmd.fieldbyname('GYSName').AsString; - FieldByName('MLName').Value:=ADOQueryCmd.fieldbyname('MLName').AsString; - FieldByName('SZSpec').Value:=ADOQueryCmd.fieldbyname('SZSpec').AsString; - FieldByName('JWMiDu').Value:=ADOQueryCmd.fieldbyname('JWMiDu').AsString; - FieldByName('MLMF').Value:=ADOQueryCmd.fieldbyname('MLMF').AsFloat; - FieldByName('MLKZ').Value:=ADOQueryCmd.fieldbyname('MLKZ').AsFloat; - FieldByName('LXRen').Value:=ADOQueryCmd.fieldbyname('LXRen').AsString; - FieldByName('LXTel').Value:=ADOQueryCmd.fieldbyname('LXTel').AsString; - FieldByName('MLCF').Value:=ADOQueryCmd.fieldbyname('MLCF').AsString; - FieldByName('MLNote').Value:=ADOQueryCmd.fieldbyname('MLNote').AsString; - FieldByName('MLPrice').Value:=ADOQueryCmd.fieldbyname('MLPrice').AsFloat; - FieldByName('MLSunHao').Value:=ADOQueryCmd.fieldbyname('MLSunHao').AsFloat; - FieldByName('ZPrice').Value:=ADOQueryCmd.fieldbyname('ZPrice').AsFloat; - FieldByName('JGZPrice').Value:=ADOQueryCmd.fieldbyname('JGZPrice').AsFloat; + FieldByName('CYID').Value := Trim(FMCYID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('Filltime').Value := SGetServerDate(ADOQueryTemp); + FieldByName('MLPrice').Value := Order_ML.fieldbyname('MLPrice').AsFloat; + FieldByName('MLSunHao').Value := Order_ML.fieldbyname('MLSunHao').AsFloat; + FieldByName('ZPrice').Value := Order_ML.fieldbyname('ZPrice').AsFloat; + FieldByName('JGZPrice').Value := Order_ML.fieldbyname('JGZPrice').AsFloat; + FieldByName('CengJi').Value := ADOQueryCmd.fieldbyname('CengJi').AsFloat; + FieldByName('IFSel').Value := ADOQueryCmd.fieldbyname('IFSel').AsString; + FieldByName('MLCode').Value := ADOQueryCmd.fieldbyname('MLCode').AsString; + FieldByName('GYSName').Value := ADOQueryCmd.fieldbyname('GYSName').AsString; + FieldByName('MLName').Value := ADOQueryCmd.fieldbyname('MLName').AsString; + FieldByName('SZSpec').Value := ADOQueryCmd.fieldbyname('SZSpec').AsString; + FieldByName('JWMiDu').Value := ADOQueryCmd.fieldbyname('JWMiDu').AsString; + FieldByName('MLMF').Value := ADOQueryCmd.fieldbyname('MLMF').AsFloat; + FieldByName('MLKZ').Value := ADOQueryCmd.fieldbyname('MLKZ').AsFloat; + FieldByName('LXRen').Value := ADOQueryCmd.fieldbyname('LXRen').AsString; + FieldByName('LXTel').Value := ADOQueryCmd.fieldbyname('LXTel').AsString; + FieldByName('MLCF').Value := ADOQueryCmd.fieldbyname('MLCF').AsString; + FieldByName('MLNote').Value := ADOQueryCmd.fieldbyname('MLNote').AsString; + FieldByName('MLPrice').Value := ADOQueryCmd.fieldbyname('MLPrice').AsFloat; + FieldByName('MLSunHao').Value := ADOQueryCmd.fieldbyname('MLSunHao').AsFloat; + FieldByName('ZPrice').Value := ADOQueryCmd.fieldbyname('ZPrice').AsFloat; + FieldByName('JGZPrice').Value := ADOQueryCmd.fieldbyname('JGZPrice').AsFloat; Post; end; {with Order_ML do @@ -518,15 +504,16 @@ begin next; end; end; - except; + except + ; ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('保存失败!','提示',0); + Application.MessageBox('保存失败!', '提示', 0); end; end; procedure TfrmCPAdd_ZLR.ColSaveData(); var - maxId:String; + maxId: string; begin try with Order_Sub do @@ -534,51 +521,55 @@ begin first; while not Eof do begin - if FieldByName('CLRID').AsString='' then + if FieldByName('CLRID').AsString = '' then begin - if GetLSNo(ADOQueryCmd,maxId,'CL','CP_YDang_Color',4,1)=False then + if GetLSNo(ADOQueryCmd, maxId, 'CL', 'CP_YDang_Color', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('取最大号失败!','提示',0); + Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; end else - maxId:=Trim(FieldByName('CLRID').AsString); + maxId := Trim(FieldByName('CLRID').AsString); with ADOQueryCmd do begin Close; SQL.Clear; - sql.Add('select * from CP_YDang_Color where CLRID='''+Trim(maxId)+''''); + sql.Add('select * from CP_YDang_Color where CLRID=''' + Trim(maxId) + ''''); Open; end; with ADOQueryCmd do begin - if IsEmpty then Append else Edit; - FieldByName('CLRID').Value:=Trim(maxId); - fieldbyname('CYNo').Value:=Trim(CDS_Sub.Fieldbyname('CYNo').AsString); - FieldByName('CYID').Value:=Trim(CDS_Sub.Fieldbyname('CYID').AsString); - SSetSaveDataCDSNew(ADOQueryCmd,Tv4,Order_Sub,'CP_YDang_Color',0); + if IsEmpty then + Append + else + Edit; + FieldByName('CLRID').Value := Trim(maxId); + fieldbyname('CYNo').Value := Trim(CDS_Sub.Fieldbyname('CYNo').AsString); + FieldByName('CYID').Value := Trim(CDS_Sub.Fieldbyname('CYID').AsString); + SSetSaveDataCDSNew(ADOQueryCmd, Tv4, Order_Sub, 'CP_YDang_Color', 0); Post; end; with Order_Sub do begin edit; - FieldByName('CYID').Value:=Trim(CDS_Sub.Fieldbyname('CYID').AsString); - FieldByName('CLRID').value:=Trim(maxId); + FieldByName('CYID').Value := Trim(CDS_Sub.Fieldbyname('CYID').AsString); + FieldByName('CLRID').value := Trim(maxId); end; next; end; end; - except; + except + ; ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('保存失败!','提示',0); + Application.MessageBox('保存失败!', '提示', 0); end; end; -function TfrmCPAdd_ZLR.MLSavedata(Order_ML:TClientDataSet):Boolean; +function TfrmCPAdd_ZLR.MLSavedata(Order_ML: TClientDataSet): Boolean; var - maxId:String; + maxId: string; begin try ADOQueryCmd.Connection.BeginTrans; @@ -587,23 +578,24 @@ begin first; while not eof do begin - if Trim(Order_ML.fieldbyname('MLID').AsString)='' then + if Trim(Order_ML.fieldbyname('MLID').AsString) = '' then begin - if GetLSNo(ADOQueryCmd,maxId,'','CP_YDang_ML',4,1)=False then + if GetLSNo(ADOQueryCmd, maxId, '', 'CP_YDang_ML', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('取最大号失败!','提示',0); + Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; - end else + end + else begin - maxId:=Trim(Order_ML.fieldbyname('MLID').AsString); + maxId := Trim(Order_ML.fieldbyname('MLID').AsString); end; with ADOQueryCmd do begin Close; SQL.Clear; - sql.Add('select * from CP_YDang_ML where MLID='''+Trim(maxId)+''''); + sql.Add('select * from CP_YDang_ML where MLID=''' + Trim(maxId) + ''''); Open; end; with ADOQueryCmd do @@ -611,42 +603,44 @@ begin if IsEmpty then begin Append; - end else + end + else begin Edit; end; - FieldByName('MLID').Value:=Trim(maxId); - SSetSaveDataCDSNew(ADOQueryCmd,Tv2,Order_ML,'CP_YDang_ML',0); - FieldByName('CYID').Value:=Trim(FCYID); - FieldByName('Filler').Value:=Trim(DName); - FieldByName('Filltime').Value:=SGetServerDate(ADOQueryTemp); - FieldByName('MLPrice').Value:=Order_ML.fieldbyname('MLPrice').AsFloat; - FieldByName('MLSunHao').Value:=Order_ML.fieldbyname('MLSunHao').AsFloat; - FieldByName('ZPrice').Value:=Order_ML.fieldbyname('ZPrice').AsFloat; - FieldByName('JGZPrice').Value:=Order_ML.fieldbyname('JGZPrice').AsFloat; - FieldByName('cengji').Value:=1; + FieldByName('MLID').Value := Trim(maxId); + SSetSaveDataCDSNew(ADOQueryCmd, Tv2, Order_ML, 'CP_YDang_ML', 0); + FieldByName('CYID').Value := Trim(FCYID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('Filltime').Value := SGetServerDate(ADOQueryTemp); + FieldByName('MLPrice').Value := Order_ML.fieldbyname('MLPrice').AsFloat; + FieldByName('MLSunHao').Value := Order_ML.fieldbyname('MLSunHao').AsFloat; + FieldByName('ZPrice').Value := Order_ML.fieldbyname('ZPrice').AsFloat; + FieldByName('JGZPrice').Value := Order_ML.fieldbyname('JGZPrice').AsFloat; + FieldByName('cengji').Value := 1; Post; end; with Order_ML do begin edit; - FieldByName('CYID').Value:=Trim(FCYID); - FieldByName('MLID').Value:=Trim(maxid); + FieldByName('CYID').Value := Trim(FCYID); + FieldByName('MLID').Value := Trim(maxId); end; next; end; end; //Application.MessageBox('保存成功!','提示',0); ADOQueryCmd.Connection.CommitTrans; - except; + except + ; ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('保存失败!','提示',0); + Application.MessageBox('保存失败!', '提示', 0); end; end; -function TfrmCPAdd_ZLR.JGSavedata(Order_JG:TClientDataSet;Order_ML:TClientDataSet):Boolean; +function TfrmCPAdd_ZLR.JGSavedata(Order_JG: TClientDataSet; Order_ML: TClientDataSet): Boolean; var - maxId:String; + maxId: string; begin try ADOQueryCmd.Connection.BeginTrans; @@ -655,23 +649,24 @@ begin first; while not eof do begin - if Trim(Order_JG.fieldbyname('JGID').AsString)='' then + if Trim(Order_JG.fieldbyname('JGID').AsString) = '' then begin - if GetLSNo(ADOQueryCmd,maxId,'','CP_YDang_JG',4,1)=False then + if GetLSNo(ADOQueryCmd, maxId, '', 'CP_YDang_JG', 4, 1) = False then begin ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('取最大号失败!','提示',0); + Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; - end else + end + else begin - maxId:=Trim(Order_JG.fieldbyname('JGID').AsString); + maxId := Trim(Order_JG.fieldbyname('JGID').AsString); end; with ADOQueryCmd do begin Close; SQL.Clear; - sql.Add('select * from CP_YDang_JG where JGID='''+Trim(maxId)+''''); + sql.Add('select * from CP_YDang_JG where JGID=''' + Trim(maxId) + ''''); Open; end; with ADOQueryCmd do @@ -679,27 +674,28 @@ begin if IsEmpty then begin Append; - end else + end + else begin Edit; end; - FieldByName('JGID').Value:=Trim(maxid); + FieldByName('JGID').Value := Trim(maxId); //FieldByName('MLID').Value:=Trim(Order_ML.fieldbyname('MLID').AsString); - SSetSaveDataCDSNew(ADOQueryCmd,Tv3,Order_JG,'CP_YDang_JG',0); - FieldByName('CYID').Value:=Trim(FCYID); - FieldByName('Filler').Value:=Trim(DName); - FieldByName('Filltime').Value:=SGetServerDate(ADOQueryTemp); - FieldByName('Price').Value:=Order_JG.fieldbyname('Price').AsFloat; - FieldByName('MLSunHao').Value:=Order_JG.fieldbyname('MLSunHao').AsFloat; - FieldByName('JGPrice').Value:=Order_JG.fieldbyname('JGPrice').AsFloat; - FieldByName('CengJi').Value:=1; + SSetSaveDataCDSNew(ADOQueryCmd, Tv3, Order_JG, 'CP_YDang_JG', 0); + FieldByName('CYID').Value := Trim(FCYID); + FieldByName('Filler').Value := Trim(DName); + FieldByName('Filltime').Value := SGetServerDate(ADOQueryTemp); + FieldByName('Price').Value := Order_JG.fieldbyname('Price').AsFloat; + FieldByName('MLSunHao').Value := Order_JG.fieldbyname('MLSunHao').AsFloat; + FieldByName('JGPrice').Value := Order_JG.fieldbyname('JGPrice').AsFloat; + FieldByName('CengJi').Value := 1; Post; end; with Order_JG do begin edit; - FieldByName('CYID').Value:=Trim(FCYID); - FieldByName('JGID').Value:=Trim(maxid); + FieldByName('CYID').Value := Trim(FCYID); + FieldByName('JGID').Value := Trim(maxId); //FieldByName('MLID').Value:=Trim(Order_ML.fieldbyname('MLID').AsString); end; next; @@ -707,35 +703,36 @@ begin end; //Application.MessageBox('保存成功!','提示',0); ADOQueryCmd.Connection.CommitTrans; - except; + except + ; ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('保存失败!','提示',0); + Application.MessageBox('保存失败!', '提示', 0); end; end; -function TfrmCPAdd_ZLR.getmaxNo(FsCPID,FsCPNO:string):string; +function TfrmCPAdd_ZLR.getmaxNo(FsCPID, FsCPNO: string): string; var - str1:string; - i:integer; + str1: string; + i: integer; begin with ADOQueryTemp do begin close; sql.Clear; - sql.Add('select MAX(CYNo) as CYNo from CP_YDang where CYType='''+trim(FsCPID)+''' '); + sql.Add('select MAX(CYNo) as CYNo from CP_YDang where CYType=''' + trim(FsCPID) + ''' '); open; end; - IF trim(ADOQueryTemp.fieldbyname('CYNo').AsString)='' then + if trim(ADOQueryTemp.fieldbyname('CYNo').AsString) = '' then begin - str1:='000100'; + str1 := '000100'; end else begin - i:=10000+strtoint(leftstr(rightstr(trim(ADOQueryTemp.fieldbyname('CYNo').AsString),6),4))+1; - str1:=rightstr(inttostr(i),4)+'00'; + i := 10000 + strtoint(leftstr(rightstr(trim(ADOQueryTemp.fieldbyname('CYNo').AsString), 6), 4)) + 1; + str1 := rightstr(inttostr(i), 4) + '00'; end; - result:=FsCPNO+str1; + result := FsCPNO + str1; end; procedure TfrmCPAdd_ZLR.InitSubGrid(); @@ -751,23 +748,23 @@ begin SQL.Add('where A.CYType=''CP1903260008'' or A.CYType=''CP1905280002'' or A.CYType=''CP1905280001'''); //not exists (select B.CYID from CP_YDang B where B.CYID=A.CYType) Open; end; - PrtMaxNo.Text:=Trim(ADOQueryMain.fieldbyname('PrtMaxNo').AsString); + PrtMaxNo.Text := Trim(ADOQueryMain.fieldbyname('PrtMaxNo').AsString); with ADOQueryMain do begin Close; SQL.Clear; - SQL.Add('select *,cast('''' as varchar(50)) rownumber from CP_YDang A inner join CP_Type B on B.CPID=A.CYType where A.CYID='''+Trim(FCYID)+''''); + SQL.Add('select *,cast('''' as varchar(50)) rownumber from CP_YDang A inner join CP_Type B on B.CPID=A.CYType where A.CYID=''' + Trim(FCYID) + ''''); Open; end; - SCreateCDS20(ADOQueryMain,CDS_Sub); - SInitCDSData20(ADOQueryMain,CDS_Sub); - if CopyInt<>0 then + SCreateCDS20(ADOQueryMain, CDS_Sub); + SInitCDSData20(ADOQueryMain, CDS_Sub); + if CopyInt <> 0 then begin with ADOQuery1 do begin Close; SQL.Clear; - SQL.Add('select * from CP_YDang_Color where CYID='''+trim(FCYID)+''''); + SQL.Add('select * from CP_YDang_Color where CYID=''' + trim(FCYID) + ''''); Open; end; end @@ -780,22 +777,22 @@ begin SQL.Add('select A.*,B.* '); sql.Add(',TuPian=(case when isnull((select Top 1 C.CYID from XD_File C where C.CYID=A.CYID and C.FileType=''YP''),'''')='''' then '''' else ''是'' end)'); sql.Add(' from CP_YDang_Color A '); - SQL.Add('inner join CP_YDang B on A.CYID=B.CYID where A.CYID='''+trim(FCYID)+''''); + SQL.Add('inner join CP_YDang B on A.CYID=B.CYID where A.CYID=''' + trim(FCYID) + ''''); Open; end; end; - SCreateCDS20(ADOQuery1,Order_Sub); - SInitCDSData20(ADOQuery1,Order_Sub); + SCreateCDS20(ADOQuery1, Order_Sub); + SInitCDSData20(ADOQuery1, Order_Sub); with ADOQuery4 do begin close; sql.Clear; sql.Add('select * from CP_YDang_Color_GYS '); - sql.Add('where CLRID='''+trim(Order_Sub.fieldbyname('CLRID').AsString)+''''); + sql.Add('where CLRID=''' + trim(Order_Sub.fieldbyname('CLRID').AsString) + ''''); open; end; - SCreateCDS20(ADOQuery4,Order_GYS); - SInitCDSData20(ADOQuery4,Order_GYS); + SCreateCDS20(ADOQuery4, Order_GYS); + SInitCDSData20(ADOQuery4, Order_GYS); finally ADOQueryMain.EnableControls; ADOQuery1.EnableControls; @@ -809,7 +806,7 @@ begin with Order_ML do begin append; - fieldbyname('CengJi').Value:=1; + fieldbyname('CengJi').Value := 1; Post; end; end; @@ -818,7 +815,7 @@ begin with Order_JG do begin append; - FieldByName('JGCengji').Value:=1; + FieldByName('JGCengji').Value := 1; Post; end; end; @@ -826,27 +823,27 @@ end; procedure TfrmCPAdd_ZLR.FormShow(Sender: TObject); var - fsj,FFSj,FFQZSj,FFFSj,FFType:String; - FFInt,i,j:Integer; - ii:LongInt; + fsj, FFSj, FFQZSj, FFFSj, FFType: string; + FFInt, i, j: Integer; + ii: LongInt; begin - ReadCxGrid('样品编辑N',Tv1,'样品管理'); - ReadCxGrid('样品编辑N2',Tv2,'样品管理'); - ReadCxGrid('样品编辑N3',Tv3,'样品管理'); - ReadCxGrid('样品编辑N4',Tv4,'样品管理'); - ReadCxGrid('样品编辑N6',Tv6,'样品管理'); + ReadCxGrid('样品编辑N', Tv1, '样品管理'); + ReadCxGrid('样品编辑N2', Tv2, '样品管理'); + ReadCxGrid('样品编辑N3', Tv3, '样品管理'); + ReadCxGrid('样品编辑N4', Tv4, '样品管理'); + ReadCxGrid('样品编辑N6', Tv6, '样品管理'); InitSubGrid(); - IF trim(FCYID)='' then + if trim(FCYID) = '' then begin if CDS_Sub.IsEmpty then begin CDS_Sub.Append; - CDS_Sub.FieldByName('CYNo').Value:=''; - CDS_Sub.FieldByName('XTNo').Value:=''; - CDS_Sub.FieldByName('CPName').Value:=Trim(FCPName); - CDS_Sub.FieldByName('CYType').Value:=trim(FCPID); - CDS_Sub.FieldByName('CYPrice6').Value:=1; - CDS_Sub.FieldByName('CYPrice13').Value:=1; + CDS_Sub.FieldByName('CYNo').Value := ''; + CDS_Sub.FieldByName('XTNo').Value := ''; + CDS_Sub.FieldByName('CPName').Value := Trim(FCPName); + CDS_Sub.FieldByName('CYType').Value := trim(FCPID); + CDS_Sub.FieldByName('CYPrice6').Value := 1; + CDS_Sub.FieldByName('CYPrice13').Value := 1; CDS_Sub.Post; end; end; @@ -855,30 +852,30 @@ begin Close; sql.Clear; SQL.Add('select * from CP_YDang_ML '); - SQL.Add('where CYID='''+trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); + SQL.Add('where CYID=''' + trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); sql.Add(' and CengJi=''1'''); open; end; - SCreateCDS20(ADOQuery1,Order_ML); - SInitCDSData20(ADOQuery1,Order_ML); + SCreateCDS20(ADOQuery1, Order_ML); + SInitCDSData20(ADOQuery1, Order_ML); with ADOQuery2 do begin Close; sql.Clear; SQL.Add('select * from CP_YDang_JG '); - SQL.Add('where CYID='''+trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); + SQL.Add('where CYID=''' + trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); sql.Add(' and CengJi=''1'''); open; end; - SCreateCDS20(ADOQuery2,Order_JG); - SInitCDSData20(ADOQuery2,Order_JG); - if CopyInt=1 then + SCreateCDS20(ADOQuery2, Order_JG); + SInitCDSData20(ADOQuery2, Order_JG); + if CopyInt = 1 then begin - FCYID:=''; + FCYID := ''; CDS_Sub.edit; - CDS_Sub.FieldByName('CYID').Value:=''; - CDS_Sub.FieldByName('CYNo').Value:=''; - CDS_Sub.FieldByName('XTNo').Value:=''; + CDS_Sub.FieldByName('CYID').Value := ''; + CDS_Sub.FieldByName('CYNo').Value := ''; + CDS_Sub.FieldByName('XTNo').Value := ''; CDS_Sub.Post; with Order_ML do begin @@ -886,8 +883,8 @@ begin while not eof do begin Order_ML.edit; - Order_ML.FieldByName('MLID').Value:=''; - Order_ML.FieldByName('CYID').Value:=''; + Order_ML.FieldByName('MLID').Value := ''; + Order_ML.FieldByName('CYID').Value := ''; Order_ML.Post; next; end; @@ -898,9 +895,9 @@ begin while not eof do begin Order_JG.edit; - Order_JG.FieldByName('CYID').Value:=''; - Order_JG.FieldByName('MLID').Value:=''; - Order_JG.FieldByName('JGID').Value:=''; + Order_JG.FieldByName('CYID').Value := ''; + Order_JG.FieldByName('MLID').Value := ''; + Order_JG.FieldByName('JGID').Value := ''; Order_JG.Post; next; end; @@ -911,8 +908,8 @@ begin while not eof do begin edit; - FieldByName('CYID').Value:=''; - FieldByName('CLRID').Value:=''; + FieldByName('CYID').Value := ''; + FieldByName('CLRID').Value := ''; Post; next; end; @@ -923,97 +920,100 @@ end; procedure TfrmCPAdd_ZLR.TBCloseClick(Sender: TObject); begin - WriteCxGrid('样品编辑N',Tv1,'样品管理'); - WriteCxGrid('样品编辑N2',Tv2,'样品管理'); - WriteCxGrid('样品编辑N3',Tv3,'样品管理'); - WriteCxGrid('样品编辑N4',Tv4,'样品管理'); - WriteCxGrid('样品编辑N6',Tv6,'样品管理'); + WriteCxGrid('样品编辑N', Tv1, '样品管理'); + WriteCxGrid('样品编辑N2', Tv2, '样品管理'); + WriteCxGrid('样品编辑N3', Tv3, '样品管理'); + WriteCxGrid('样品编辑N4', Tv4, '样品管理'); + WriteCxGrid('样品编辑N6', Tv6, '样品管理'); Close; end; -function TfrmCPAdd_ZLR.SaveData():Boolean; +function TfrmCPAdd_ZLR.SaveData(): Boolean; var - maxId,FPrtDM,XTMaxID:String; + maxId, FPrtDM, XTMaxID: string; begin try ADOQueryCmd.Connection.BeginTrans; - FPrtDM:=Trim(CDS_Sub.fieldbyname('PrtDM').AsString); - if CDS_Sub.FieldByName('XTNo').AsString='' then + FPrtDM := Trim(CDS_Sub.fieldbyname('PrtDM').AsString); + if CDS_Sub.FieldByName('XTNo').AsString = '' then begin - if GetLSNo(ADOQueryCmd,XTMaxID,FPRTDM,'CP_YDang',5,0)=False then + if GetLSNo(ADOQueryCmd, XTMaxID, FPrtDM, 'CP_YDang', 5, 0) = False then begin - Result:=False; + Result := False; ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('取最大号失败!','提示',0); + Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; end else - XTMaxID:=Trim(CDS_Sub.fieldbyname('XTNo').AsString); - if Trim(FCYID)='' then + XTMaxID := Trim(CDS_Sub.fieldbyname('XTNo').AsString); + if Trim(FCYID) = '' then begin - if GetLSNo(ADOQueryCmd,maxId,'','CP_YDang',5,1)=False then + if GetLSNo(ADOQueryCmd, maxId, '', 'CP_YDang', 5, 1) = False then begin - Result:=False; + Result := False; ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('取最大号失败!','提示',0); + Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; - end else + end + else begin - maxId:=Trim(FCYID); + maxId := Trim(FCYID); end; with ADOQueryCmd do begin Close; SQL.Clear; - sql.Add('select * from CP_YDang where CYID='''+Trim(FCYID)+''''); + sql.Add('select * from CP_YDang where CYID=''' + Trim(FCYID) + ''''); Open; end; with ADOQueryCmd do begin - if Trim(FCYID)='' then + if Trim(FCYID) = '' then begin Append; - end else + end + else begin Edit; end; - FieldByName('CYID').Value:=Trim(maxId); - FieldByName('XTNo').Value:=Trim(XTMaxID); - FieldByName('PrtMaxNo').Value:=PrtMaxNo.Text; - if Trim(CDS_Sub.fieldbyname('CYType').AsString)<>'' then - FieldByName('CYType').Value:=Trim(CDS_Sub.fieldbyname('CYType').AsString) + FieldByName('CYID').Value := Trim(maxId); + FieldByName('XTNo').Value := Trim(XTMaxID); + FieldByName('PrtMaxNo').Value := PrtMaxNo.Text; + if Trim(CDS_Sub.fieldbyname('CYType').AsString) <> '' then + FieldByName('CYType').Value := Trim(CDS_Sub.fieldbyname('CYType').AsString) else - FieldByName('CYType').Value:=Trim(FCPID); - if Trim(FCYID)='' then - FieldByName('DefFlt4').Value:=Fint; - SSetSaveDataCDSNew(ADOQueryCmd,Tv1,CDS_Sub,'CP_YDang',3); + FieldByName('CYType').Value := Trim(FCPID); + if Trim(FCYID) = '' then + FieldByName('DefFlt4').Value := Fint; + SSetSaveDataCDSNew(ADOQueryCmd, Tv1, CDS_Sub, 'CP_YDang', 3); //SSetSaveDataCDSNew(ADOQueryCmd,Tv6,CDS_Sub,'CP_YDang',3); - FieldByName('CYPrice').Value:=CDS_Sub.fieldbyname('CYPrice').AsFloat; - FieldByName('CYPrice1').Value:=CDS_Sub.fieldbyname('CYPrice1').AsFloat; - FieldByName('CYPrice2').Value:=CDS_Sub.fieldbyname('CYPrice2').AsFloat; - FieldByName('CYPrice3').Value:=CDS_Sub.fieldbyname('CYPrice3').AsFloat; - FieldByName('CYPrice4').Value:=CDS_Sub.fieldbyname('CYPrice4').AsFloat; - FieldByName('CYPrice5').Value:=CDS_Sub.fieldbyname('CYPrice5').AsFloat; - FieldByName('CYPrice6').Value:=CDS_Sub.fieldbyname('CYPrice6').AsFloat; - FieldByName('CYPrice7').Value:=CDS_Sub.fieldbyname('CYPrice7').AsFloat; - FieldByName('CYPrice8').Value:=CDS_Sub.fieldbyname('CYPrice8').AsFloat; - FieldByName('CYPrice9').Value:=CDS_Sub.fieldbyname('CYPrice9').AsFloat; - FieldByName('CYPrice10').Value:=CDS_Sub.fieldbyname('CYPrice10').AsFloat; - FieldByName('CYPrice11').Value:=CDS_Sub.fieldbyname('CYPrice11').AsFloat; - FieldByName('CYPrice12').Value:=CDS_Sub.fieldbyname('CYPrice12').AsFloat; - FieldByName('CYPrice13').Value:=CDS_Sub.fieldbyname('CYPrice13').AsFloat; - FieldByName('CYPrice14').Value:=CDS_Sub.fieldbyname('CYPrice14').AsFloat; - FieldByName('CYPrice15').Value:=CDS_Sub.fieldbyname('CYPrice15').AsFloat; - if Trim(FCYID)='' then + FieldByName('CYPrice').Value := CDS_Sub.fieldbyname('CYPrice').AsFloat; + FieldByName('CYPrice1').Value := CDS_Sub.fieldbyname('CYPrice1').AsFloat; + FieldByName('CYPrice2').Value := CDS_Sub.fieldbyname('CYPrice2').AsFloat; + FieldByName('CYPrice3').Value := CDS_Sub.fieldbyname('CYPrice3').AsFloat; + FieldByName('CYPrice4').Value := CDS_Sub.fieldbyname('CYPrice4').AsFloat; + FieldByName('CYPrice5').Value := CDS_Sub.fieldbyname('CYPrice5').AsFloat; + FieldByName('CYPrice6').Value := CDS_Sub.fieldbyname('CYPrice6').AsFloat; + FieldByName('CYPrice7').Value := CDS_Sub.fieldbyname('CYPrice7').AsFloat; + FieldByName('CYPrice8').Value := CDS_Sub.fieldbyname('CYPrice8').AsFloat; + FieldByName('CYPrice9').Value := CDS_Sub.fieldbyname('CYPrice9').AsFloat; + FieldByName('CYPrice10').Value := CDS_Sub.fieldbyname('CYPrice10').AsFloat; + FieldByName('CYPrice11').Value := CDS_Sub.fieldbyname('CYPrice11').AsFloat; + FieldByName('CYPrice12').Value := CDS_Sub.fieldbyname('CYPrice12').AsFloat; + FieldByName('CYPrice13').Value := CDS_Sub.fieldbyname('CYPrice13').AsFloat; + FieldByName('CYPrice14').Value := CDS_Sub.fieldbyname('CYPrice14').AsFloat; + FieldByName('CYPrice15').Value := CDS_Sub.fieldbyname('CYPrice15').AsFloat; + if Trim(FCYID) = '' then begin - FieldByName('Filler').Value:=Trim(DName); - FieldByName('Filltime').Value:=SGetServerDateTime(ADOQueryTemp); - end else + FieldByName('Filler').Value := Trim(DName); + FieldByName('Filltime').Value := SGetServerDateTime(ADOQueryTemp); + end + else begin - FieldByName('Editer').Value:=Trim(DName); - FieldByName('EditTime').Value:=SGetServerDateTime(ADOQueryTemp); + FieldByName('Editer').Value := Trim(DName); + FieldByName('EditTime').Value := SGetServerDateTime(ADOQueryTemp); end; Post; end; @@ -1021,13 +1021,13 @@ begin begin Close; sql.Clear; - sql.Add('select count(*) as AA from CP_YDang where CYNo='''+Trim(CDS_Sub.fieldbyname('CYNo').AsString)+''''); + sql.Add('select count(*) as AA from CP_YDang where CYNo=''' + Trim(CDS_Sub.fieldbyname('CYNo').AsString) + ''''); Open; - if FieldByName('AA').AsInteger>1 then + if FieldByName('AA').AsInteger > 1 then begin ADOQueryCmd.Connection.RollbackTrans; - Result:=False; - Application.MessageBox('编号重复!','提示',0); + Result := False; + Application.MessageBox('编号重复!', '提示', 0); Exit; end; end; @@ -1035,13 +1035,13 @@ begin begin Close; sql.Clear; - sql.Add('select count(*) as AA from CP_YDang where XTNo='''+Trim(CDS_Sub.fieldbyname('XTNo').AsString)+''''); + sql.Add('select count(*) as AA from CP_YDang where XTNo=''' + Trim(CDS_Sub.fieldbyname('XTNo').AsString) + ''''); Open; - if FieldByName('AA').AsInteger>1 then + if FieldByName('AA').AsInteger > 1 then begin ADOQueryCmd.Connection.RollbackTrans; - Result:=False; - Application.MessageBox('公司编号重复!','提示',0); + Result := False; + Application.MessageBox('公司编号重复!', '提示', 0); Exit; end; end; @@ -1055,90 +1055,91 @@ begin with CDS_Sub do begin edit; - FieldByName('CYID').Value:=Trim(maxid); + FieldByName('CYID').Value := Trim(maxId); end; - FCYID:=Trim(maxId); + FCYID := Trim(maxId); COLSaveData(); ADOQueryCmd.Connection.CommitTrans; - Result:=True; - except; - Result:=False; + Result := True; + except + ; + Result := False; ADOQueryCmd.Connection.RollbackTrans; - Application.MessageBox('保存失败!','提示',0); + Application.MessageBox('保存失败!', '提示', 0); end; end; procedure TfrmCPAdd_ZLR.ToolButton1Click(Sender: TObject); -var FCYNo,FGYMXNote:string; +var + FCYNo, FGYMXNote: string; begin ToolBar1.SetFocus; - if CDS_Sub.IsEmpty then exit; - if CDS_Sub.Locate('JCCYNo',null,[])=True then + if CDS_Sub.IsEmpty then + exit; + if CDS_Sub.Locate('JCCYNo', null, []) = True then begin - Application.MessageBox('基础编号不能为空!','提示',0); + Application.MessageBox('基础编号不能为空!', '提示', 0); Exit; end; - if CDS_Sub.Locate('PrtDM',null,[])=True then + if CDS_Sub.Locate('PrtDM', null, []) = True then begin - Application.MessageBox('产品代码不能为空!','提示',0); + Application.MessageBox('产品代码不能为空!', '提示', 0); Exit; end; - if CDS_Sub.Locate('CYName',null,[])=True then + if CDS_Sub.Locate('CYName', null, []) = True then begin - Application.MessageBox('公司产品称呼不能为空!','提示',0); + Application.MessageBox('公司产品称呼不能为空!', '提示', 0); Exit; end; - if Order_ML.Locate('IFSel',true,[])=false then + if Order_ML.Locate('IFSel', true, []) = false then begin - Application.MessageBox('请选择面料的是否主要','提示',0); + Application.MessageBox('请选择面料的是否主要', '提示', 0); Exit; end; - if Order_JG.Locate('IFZY',true,[])=false then + if Order_JG.Locate('IFZY', true, []) = false then begin - Application.MessageBox('请选择工序的是否主要','提示',0); + Application.MessageBox('请选择工序的是否主要', '提示', 0); Exit; end; MXGYSSave(); with Order_JG do begin First; - FCYNo:=Trim(CDS_Sub.fieldbyname('JCCYNo').AsString); + FCYNo := Trim(CDS_Sub.fieldbyname('JCCYNo').AsString); while not Eof do begin - FCYNO:=FCYNO+Trim(Order_JG.fieldbyname('GYDM').AsString)+Trim(Order_JG.fieldbyname('MLSeHao').AsString) - +Trim(Order_JG.fieldbyname('HXNo').AsString); - if FGYMXNote='' then - FGYMXNote:=Trim(Order_JG.fieldbyname('GYName').AsString) + FCYNo := FCYNo + Trim(Order_JG.fieldbyname('GYDM').AsString) + Trim(Order_JG.fieldbyname('MLSeHao').AsString) + Trim(Order_JG.fieldbyname('HXNo').AsString); + if FGYMXNote = '' then + FGYMXNote := Trim(Order_JG.fieldbyname('GYName').AsString) else - FGYMXNote:=FGYMXNote+'+'+Trim(Order_JG.fieldbyname('GYName').AsString); + FGYMXNote := FGYMXNote + '+' + Trim(Order_JG.fieldbyname('GYName').AsString); next; end; end; with CDS_Sub do begin edit; - FieldByName('CYNo').Value:=Trim(FCYNo); - FieldByName('GYMXNote').Value:=Trim(FGYMXNote); + FieldByName('CYNo').Value := Trim(FCYNo); + FieldByName('GYMXNote').Value := Trim(FGYMXNote); end; with Order_Sub do begin first; while not eof do begin - FCYNo:=Trim(CDS_Sub.fieldbyname('JCCYNo').AsString); + FCYNo := Trim(CDS_Sub.fieldbyname('JCCYNo').AsString); with Order_JG do begin First; while not eof do begin - FCYNo:=FCYNO+Trim(Order_JG.fieldbyname('GYDM').AsString)+Trim(Order_JG.fieldbyname('MLSeHao').AsString) - +Trim(Order_JG.fieldbyname('HXNo').AsString); + FCYNo := FCYNo + Trim(Order_JG.fieldbyname('GYDM').AsString) + Trim(Order_JG.fieldbyname('MLSeHao').AsString) + Trim(Order_JG.fieldbyname('HXNo').AsString); next; end; end; - FCYNo:=FCYNo+'#'+Trim(Order_Sub.fieldbyname('ColorNo').AsString); + FCYNo := FCYNo + '#' + Trim(Order_Sub.fieldbyname('ColorNo').AsString); edit; - FieldByName('CYNo').Value:=Trim(FCYNo); + FieldByName('CYNo').Value := Trim(FCYNo); next; end; end; @@ -1152,60 +1153,59 @@ begin end else begin } - if SaveData() then + if SaveData() then + begin + if Order_ML.IsEmpty = false then begin - if Order_ML.IsEmpty=false then + if Order_ML.Locate('MLName', '', []) = False then begin - if Order_ML.Locate('MLName','',[])=False then - begin - MLSavedata(Order_ML); - end; + MLSavedata(Order_ML); end; - if Order_JG.IsEmpty=false then - begin - if Order_JG.Locate('JGGX','',[])=False then - begin - JGSavedata(Order_JG,Order_ML); - end; - end; - Application.MessageBox('保存成功!','提示',0); - ModalResult:=1; end; + if Order_JG.IsEmpty = false then + begin + if Order_JG.Locate('JGGX', '', []) = False then + begin + JGSavedata(Order_JG, Order_ML); + end; + end; + Application.MessageBox('保存成功!', '提示', 0); + ModalResult := 1; + end; //end; end; procedure TfrmCPAdd_ZLR.v1Column8PropertiesEditValueChanged(Sender: TObject); var - mvalue:string; + mvalue: string; begin - if Trim(DParameters3)='' then + if Trim(DParameters3) = '' then begin - mvalue:=Trim(TcxTextEdit(Sender).EditingText); + mvalue := Trim(TcxTextEdit(Sender).EditingText); with CDS_Sub do begin Edit; - FieldByName('CYKZ').Value:=mvalue+'g/㎡'; + FieldByName('CYKZ').Value := mvalue + 'g/㎡'; Post; end; end; end; -procedure TfrmCPAdd_ZLR.v1Column2PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v1Column2PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try - frmZDYHelp:=TfrmZDYHelp.Create(Application); + frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin - flag:='YPName'; - flagname:='样品名称'; - if ShowModal=1 then + flag := 'YPName'; + flagname := '样品名称'; + if ShowModal = 1 then begin with CDS_Sub do begin Edit; - FieldByName('CYName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CYName').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; end; @@ -1214,24 +1214,23 @@ begin end; end; -procedure TfrmCPAdd_ZLR.v1Column26PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v1Column26PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); var - fsj:string; + fsj: string; begin - fsj:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + fsj := Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; try - frmZDYHelp:=TfrmZDYHelp.Create(Application); + frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin - flag:='GYStr'; - flagname:='工艺名称'; - if ShowModal=1 then + flag := 'GYStr'; + flagname := '工艺名称'; + if ShowModal = 1 then begin with CDS_Sub do begin Edit; - FieldByName(fsj).Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName(fsj).Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; end; @@ -1240,24 +1239,23 @@ begin end; end; -procedure TfrmCPAdd_ZLR.v1Column27PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v1Column27PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); var - fsj:string; + fsj: string; begin - fsj:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + fsj := Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; try - frmZDYHelp:=TfrmZDYHelp.Create(Application); + frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin - flag:='YPJGFactory'; - flagname:='加工厂'; - if ShowModal=1 then + flag := 'YPJGFactory'; + flagname := '加工厂'; + if ShowModal = 1 then begin with CDS_Sub do begin Edit; - FieldByName(fsj).Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName(fsj).Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; end; @@ -1266,17 +1264,16 @@ begin end; end; -procedure TfrmCPAdd_ZLR.v1Column14PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v1Column14PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZdyAttachCP_HX_Sel:=TfrmZdyAttachCP_HX_Sel.create(self); + frmZdyAttachCP_HX_Sel := TfrmZdyAttachCP_HX_Sel.create(self); with frmZdyAttachCP_HX_Sel do begin - IF showmodal=1 then + if showmodal = 1 then begin CDS_Sub.Edit; - CDS_Sub.FieldByName('CYHX').Value:=trim(cds_Hz.FieldByName('ZdyName').asstring); - CDS_Sub.FieldByName('CYNo').Value:=trim(CDS_Sub.FieldByName('CYNo').AsString)+trim(cds_Hz.FieldByName('ZdyCode').asstring); + CDS_Sub.FieldByName('CYHX').Value := trim(cds_Hz.FieldByName('ZdyName').asstring); + CDS_Sub.FieldByName('CYNo').Value := trim(CDS_Sub.FieldByName('CYNo').AsString) + trim(cds_Hz.FieldByName('ZdyCode').asstring); CDS_Sub.Post; end; frmZdyAttachCP_HX_Sel.Free; @@ -1286,42 +1283,42 @@ end; procedure TfrmCPAdd_ZLR.v1CYPrice1PropertiesEditValueChanged(Sender: TObject); var - fieldname,mavlue:string; + fieldname, mavlue: string; begin - fieldname:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; - mavlue:=TcxTextEdit(Sender).EditingText; - if mavlue='' then mavlue:='0'; + fieldname := Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + mavlue := TcxTextEdit(Sender).EditingText; + if mavlue = '' then + mavlue := '0'; with CDS_Sub do begin Edit; - FieldByName(Trim(fieldname)).Value:=mavlue; - FieldByName('CYPrice').Value:=FieldByName('CYPrice12').AsFloat*(1+FieldByName('CYPrice13').AsFloat)+FieldByName('CYPrice14').AsFloat+FieldByName('CYPrice15').AsFloat; + FieldByName(Trim(fieldname)).Value := mavlue; + FieldByName('CYPrice').Value := FieldByName('CYPrice12').AsFloat * (1 + FieldByName('CYPrice13').AsFloat) + FieldByName('CYPrice14').AsFloat + FieldByName('CYPrice15').AsFloat; Post; end; Tv1.Controller.EditingController.ShowEdit(); end; -procedure TfrmCPAdd_ZLR.v1DefStr10PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v1DefStr10PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); var - fsj:string; + fsj: string; begin - fsj:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; + fsj := Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName; try - frmZDYHelp:=TfrmZDYHelp.Create(Application); + frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin - flag:='YPSXingFlag'; - flagname:='产品属性'; - fnote:=true; - V1Note.Caption:='代码'; - if ShowModal=1 then + flag := 'YPSXingFlag'; + flagname := '产品属性'; + fnote := true; + V1Note.Caption := '代码'; + if ShowModal = 1 then begin with CDS_Sub do begin Edit; - FieldByName(fsj).Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); - FieldByName('PrtDM').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + FieldByName(fsj).Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('PrtDM').Value := Trim(ClientDataSet1.fieldbyname('Note').AsString); end; end; end; @@ -1331,13 +1328,15 @@ begin end; procedure TfrmCPAdd_ZLR.ToolButton2Click(Sender: TObject); -var SH:string; +var + SH: string; begin - if Order_Sub.IsEmpty then exit; - if Order_Sub.FieldByName('CLRID').AsString='' then + if Order_Sub.IsEmpty then + exit; + if Order_Sub.FieldByName('CLRID').AsString = '' then begin - SH:=Trim(Order_Sub.fieldbyname('ColorNo').AsString); - if CopyInt=1 then + SH := Trim(Order_Sub.fieldbyname('ColorNo').AsString); + if CopyInt = 1 then begin if SaveData() then begin @@ -1349,45 +1348,44 @@ begin begin if SaveData() then begin - if Order_ML.IsEmpty=false then + if Order_ML.IsEmpty = false then begin - if Order_ML.Locate('MLName','',[])=False then + if Order_ML.Locate('MLName', '', []) = False then begin MLSavedata(Order_ML); end; end; - if Order_JG.IsEmpty=false then + if Order_JG.IsEmpty = false then begin - if Order_JG.Locate('JGGX','',[])=False then + if Order_JG.Locate('JGGX', '', []) = False then begin - JGSavedata(Order_JG,Order_ML); + JGSavedata(Order_JG, Order_ML); end; end; //Application.MessageBox('保存成功!','提示',0); //ModalResult:=1; end; end; - Order_Sub.Locate('ColorNo',SH,[]); + Order_Sub.Locate('ColorNo', SH, []); end; with Order_GYS do begin append; - FieldByName('GSSeHao').Value:=Trim(Order_Sub.fieldbyname('ColorNo').AsString); + FieldByName('GSSeHao').Value := Trim(Order_Sub.fieldbyname('ColorNo').AsString); post; end; end; -procedure TfrmCPAdd_ZLR.v1CPNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v1CPNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZdyAttachCP_Type_sel:=TfrmZdyAttachCP_Type_sel.Create(self); + frmZdyAttachCP_Type_sel := TfrmZdyAttachCP_Type_sel.Create(self); with frmZdyAttachCP_Type_sel do begin - IF showmodal=1 then + if showmodal = 1 then begin CDS_Sub.Edit; - CDS_Sub.FieldByName('CYType').Value:=trim(CDS_HZ.FieldByName('CPID').asstring); - CDS_Sub.FieldByName('CPName').Value:=trim(CDS_HZ.FieldByName('CPName').asstring); + CDS_Sub.FieldByName('CYType').Value := trim(CDS_HZ.FieldByName('CPID').asstring); + CDS_Sub.FieldByName('CPName').Value := trim(CDS_HZ.FieldByName('CPName').asstring); CDS_Sub.Post; end; frmZdyAttachCP_Type_sel.Free; @@ -1396,47 +1394,50 @@ begin end; procedure TfrmCPAdd_ZLR.ToolButton4Click(Sender: TObject); -var i:string; +var + i: string; begin - i:=IntToStr(Order_Sub.RecordCount+1); - if Length(i)<2 then - i:='0'+i; + i := IntToStr(Order_Sub.RecordCount + 1); + if Length(i) < 2 then + i := '0' + i; Order_Sub.DisableControls; with Order_Sub do begin first; while not eof do begin - if Order_Sub.Locate('ColorNo',i,[])=True then + if Order_Sub.Locate('ColorNo', i, []) = True then begin First; - i:=IntToStr(strtoint(i)+1); + i := IntToStr(strtoint(i) + 1); end; next; end; end; Order_Sub.EnableControls; - if Length(i)<2 then - i:='0'+i; + if Length(i) < 2 then + i := '0' + i; with Order_Sub do begin Append; - FieldByName('ColorNo').Value:=i; + FieldByName('ColorNo').Value := i; Post; end; end; procedure TfrmCPAdd_ZLR.ToolButton5Click(Sender: TObject); begin - if Order_Sub.IsEmpty then Exit; - if Trim(Order_Sub.fieldbyname('CLRID').AsString)<>'' then + if Order_Sub.IsEmpty then + Exit; + if Trim(Order_Sub.fieldbyname('CLRID').AsString) <> '' then begin - if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit; + if Application.MessageBox('确定要删除数据吗?', '提示', 32 + 4) <> IDYES then + Exit; with ADOQueryCmd do begin Close; sql.Clear; - sql.Add('delete CP_YDang_Color where CLRID='''+Trim(Order_Sub.fieldbyname('CLRID').AsString)+''''); + sql.Add('delete CP_YDang_Color where CLRID=''' + Trim(Order_Sub.fieldbyname('CLRID').AsString) + ''''); ExecSQL; end; end; @@ -1445,39 +1446,41 @@ end; procedure TfrmCPAdd_ZLR.ToolButton9Click(Sender: TObject); var - fPrintFile,FFCYID,FFCLRID:string; - DPS,i,j:Integer; - Txt,fImagePath,FGHNo:string; + fPrintFile, FFCYID, FFCLRID: string; + DPS, i, j: Integer; + Txt, fImagePath, FGHNo: string; Moudle: THandle; - Makebar:TMakebar; - Mixtext:TMixtext; + Makebar: TMakebar; + Mixtext: TMixtext; begin - if Order_Sub.IsEmpty then Exit; - if Order_Sub.Locate('Ssel',True,[])=false then + if Order_Sub.IsEmpty then + Exit; + if Order_Sub.Locate('Ssel', True, []) = false then begin - Application.MessageBox('没有选择数据','提示'); + Application.MessageBox('没有选择数据', '提示'); exit; end; with ADOQueryCmd do begin close; sql.Clear; - sql.Add('select GHNo from OA_YG_DangAn where YGName='''+trim(DName)+''' '); + sql.Add('select GHNo from OA_YG_DangAn where YGName=''' + trim(DName) + ''' '); open; end; - FGHNo:=trim(ADOQueryCmd.fieldbyname('GHNo').asstring); - fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\主颜色标签.rmf'; - DPS:=0; - FFCYID:=''; - i:=1; - if Trim(ComboBox1.Text)='' then + FGHNo := trim(ADOQueryCmd.fieldbyname('GHNo').asstring); + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\主颜色标签.rmf'; + DPS := 0; + FFCYID := ''; + i := 1; + if Trim(ComboBox1.Text) = '' then begin - j:=1; - end else + j := 1; + end + else begin - j:=StrToInt(ComboBox1.Text); + j := StrToInt(ComboBox1.Text); end; - for i:=1 to j do + for i := 1 to j do begin Order_Sub.DisableControls; with Order_Sub do @@ -1485,32 +1488,34 @@ begin First; while not Eof do begin - if FieldByName('SSel').AsBoolean=True then + if FieldByName('SSel').AsBoolean = True then begin try - Moudle:=LoadLibrary('MakeQRBarcode.dll'); - @Makebar:=GetProcAddress(Moudle,'Make'); - @Mixtext:=GetProcAddress(Moudle,'MixText'); - Txt:=Trim(Order_Sub.fieldbyname('CLRID').AsString); - fImagePath:=ExtractFilePath(Application.ExeName)+'image\temp.bmp'; - if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName)+'image')) then - CreateDirectory(pchar(ExtractFilePath(Application.ExeName)+'image'),nil); - if FileExists(fImagePath) then DeleteFile(fImagePath); - Makebar(pchar(Txt),Length(Txt),3,3,0,PChar(fImagePath),3); + Moudle := LoadLibrary('MakeQRBarcode.dll'); + @Makebar := GetProcAddress(Moudle, 'Make'); + @Mixtext := GetProcAddress(Moudle, 'MixText'); + Txt := Trim(Order_Sub.fieldbyname('CLRID').AsString); + fImagePath := ExtractFilePath(Application.ExeName) + 'image\temp.bmp'; + if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then + CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil); + if FileExists(fImagePath) then + DeleteFile(fImagePath); + Makebar(pchar(Txt), Length(Txt), 3, 3, 0, PChar(fImagePath), 3); except - application.MessageBox('条形码生成失败!','提示信息',MB_ICONERROR); + application.MessageBox('条形码生成失败!', '提示信息', MB_ICONERROR); exit; end; if FileExists(fPrintFile) then begin - RMVariables['QRBARCODE']:=fImagePath; - RMVariables['FCode']:=Trim(FGHNo); - RMVariables['FName']:=Trim(FGHNo); + RMVariables['QRBARCODE'] := fImagePath; + RMVariables['FCode'] := Trim(FGHNo); + RMVariables['FName'] := Trim(FGHNo); RM1.LoadFromFile(fPrintFile); RM1.PrintReport; - end else + end + else begin - Application.MessageBox(PChar('没有找'+ExtractFilePath(Application.ExeName)+'Report\主颜色标签.rmf'),'提示',0); + Application.MessageBox(PChar('没有找' + ExtractFilePath(Application.ExeName) + 'Report\主颜色标签.rmf'), '提示', 0); Exit; end; end; @@ -1521,248 +1526,236 @@ begin end; end; -procedure TfrmCPAdd_ZLR.v1CYColorPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v1CYColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='CYColor'; - flagname:='颜色'; - MainType:=Trim(CDS_Sub.fieldbyname('CYNo').AsString); - if ShowModal=1 then + flag := 'CYColor'; + flagname := '颜色'; + MainType := Trim(CDS_Sub.fieldbyname('CYNo').AsString); + if ShowModal = 1 then begin with CDS_Sub do begin edit; - FieldByName('CYColor').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CYColor').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; free; end; end; -procedure TfrmCPAdd_ZLR.v1CYMFPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v1CYMFPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='CYMF'; - flagname:='门幅'; - if ShowModal=1 then + flag := 'CYMF'; + flagname := '门幅'; + if ShowModal = 1 then begin with CDS_Sub do begin edit; - FieldByName('CYMF').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CYMF').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; free; end; end; -procedure TfrmCPAdd_ZLR.v1CYKZPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v1CYKZPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='CYKZ'; - flagname:='克重'; - if ShowModal=1 then + flag := 'CYKZ'; + flagname := '克重'; + if ShowModal = 1 then begin with CDS_Sub do begin edit; - FieldByName('CYKZ').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CYKZ').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; free; end; end; -procedure TfrmCPAdd_ZLR.v1DefStr6PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v1DefStr6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='DefStr6'; - flagname:='经纬密度'; - if ShowModal=1 then + flag := 'DefStr6'; + flagname := '经纬密度'; + if ShowModal = 1 then begin with CDS_Sub do begin edit; - FieldByName('DefStr6').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('DefStr6').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; free; end; end; -procedure TfrmCPAdd_ZLR.v1CYSpecPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v1CYSpecPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='CYSpec'; - flagname:='纱支规格'; - if ShowModal=1 then + flag := 'CYSpec'; + flagname := '纱支规格'; + if ShowModal = 1 then begin with CDS_Sub do begin edit; - FieldByName('CYSpec').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CYSpec').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; free; end; end; -procedure TfrmCPAdd_ZLR.v2MLColorPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v2MLColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='CYColor'; - flagname:='颜色'; - MainType:=Trim(CDS_Sub.fieldbyname('CYNo').AsString); - if ShowModal=1 then + flag := 'CYColor'; + flagname := '颜色'; + MainType := Trim(CDS_Sub.fieldbyname('CYNo').AsString); + if ShowModal = 1 then begin with Order_ML do begin edit; - FieldByName('MLColor').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('MLColor').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; free; end; end; -procedure TfrmCPAdd_ZLR.v4CYColorPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v4CYColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='CYColor'; - flagname:='颜色'; - MainType:=Trim(CDS_Sub.fieldbyname('CYNo').AsString); - if ShowModal=1 then + flag := 'CYColor'; + flagname := '颜色'; + MainType := Trim(CDS_Sub.fieldbyname('CYNo').AsString); + if ShowModal = 1 then begin with Order_ML do begin edit; - FieldByName('CYColor').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('CYColor').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; free; end; end; -procedure TfrmCPAdd_ZLR.v3JGGXPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v3JGGXPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='JGGX'; - flagname:='工序名称'; - fnote:=True; - V1Note.Caption:='工序代码'; - if ShowModal=1 then + flag := 'JGGX'; + flagname := '工序名称'; + fnote := True; + V1Note.Caption := '工序代码'; + if ShowModal = 1 then begin with Order_JG do begin edit; - FieldByName('JGGX').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); - FieldByName('GXDM').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + FieldByName('JGGX').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('GXDM').Value := Trim(ClientDataSet1.fieldbyname('Note').AsString); end; end; free; end; end; -procedure TfrmCPAdd_ZLR.v3JGFactoryNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v3JGFactoryNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZdyAttachGYS_CX:=TfrmZdyAttachGYS_CX.Create(self); + frmZdyAttachGYS_CX := TfrmZdyAttachGYS_CX.Create(self); with frmZdyAttachGYS_CX do begin - if ShowModal=1 then + if ShowModal = 1 then begin with Order_JG do begin edit; - FieldByName('JGFactoryName').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + FieldByName('JGFactoryName').Value := Trim(CDS_HZ.fieldbyname('ZDYName').AsString); end; end; free; end; end; -procedure TfrmCPAdd_ZLR.v1DefStr7PropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v1DefStr7PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZdyAttachGYS_CX:=TfrmZdyAttachGYS_CX.Create(self); + frmZdyAttachGYS_CX := TfrmZdyAttachGYS_CX.Create(self); with frmZdyAttachGYS_CX do begin - if ShowModal=1 then + if ShowModal = 1 then begin with CDS_Sub do begin edit; - FieldByName('DefStr7').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + FieldByName('DefStr7').Value := Trim(CDS_HZ.fieldbyname('ZDYName').AsString); end; end; free; end; end; -procedure TfrmCPAdd_ZLR.v2GYSNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v2GYSNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZdyAttachGYS_CX:=TfrmZdyAttachGYS_CX.Create(self); + frmZdyAttachGYS_CX := TfrmZdyAttachGYS_CX.Create(self); with frmZdyAttachGYS_CX do begin - if ShowModal=1 then + if ShowModal = 1 then begin with Order_ML do begin edit; - FieldByName('GYSName').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); - fieldbyname('LXRen').Value:=Trim(CDS_HZ.fieldbyname('DEFstr4').AsString); - if Trim(CDS_HZ.fieldbyname('DEFstr2').AsString)<>'' then - fieldbyname('LXTel').Value:=Trim(CDS_HZ.fieldbyname('DEFstr2').AsString) + FieldByName('GYSName').Value := Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + fieldbyname('LXRen').Value := Trim(CDS_HZ.fieldbyname('DEFstr4').AsString); + if Trim(CDS_HZ.fieldbyname('DEFstr2').AsString) <> '' then + fieldbyname('LXTel').Value := Trim(CDS_HZ.fieldbyname('DEFstr2').AsString) else - fieldbyname('LXTel').Value:=Trim(CDS_HZ.fieldbyname('DEFstr1').AsString); + fieldbyname('LXTel').Value := Trim(CDS_HZ.fieldbyname('DEFstr1').AsString); end; end; free; end; end; -procedure TfrmCPAdd_ZLR.v3GXDMPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v3GXDMPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='JGGX'; - flagname:='工序名称'; - fnote:=True; - V1Note.Caption:='工序代码'; - if ShowModal=1 then + flag := 'JGGX'; + flagname := '工序名称'; + fnote := True; + V1Note.Caption := '工序代码'; + if ShowModal = 1 then begin with Order_JG do begin edit; - FieldByName('JGGX').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); - FieldByName('GXDM').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + FieldByName('JGGX').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('GXDM').Value := Trim(ClientDataSet1.fieldbyname('Note').AsString); end; end; free; @@ -1775,98 +1768,98 @@ begin begin Close; sql.Clear; - sql.Add('delete from CP_YDang_ML where MLID='''+Trim(Order_ML.fieldbyname('MLID').AsString)+''''); + sql.Add('delete from CP_YDang_ML where MLID=''' + Trim(Order_ML.fieldbyname('MLID').AsString) + ''''); ExecSQL; end; Order_ML.Delete; end; procedure TfrmCPAdd_ZLR.v2MLPricePropertiesEditValueChanged(Sender: TObject); -var mavlue,FFieldName:string; - FXJ:double; +var + mavlue, FFieldName: string; + FXJ: double; begin end; procedure TfrmCPAdd_ZLR.v3MLSunHaoPropertiesEditValueChanged(Sender: TObject); -var mavlue,FfieldName:string; - FJGXJ:double; +var + mavlue, FfieldName: string; + FJGXJ: double; begin - mavlue:=TcxTextEdit(Sender).EditingText; - FfieldName:=Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName; - if FfieldName<>'IFZY' then + mavlue := TcxTextEdit(Sender).EditingText; + FfieldName := Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName; + if FfieldName <> 'IFZY' then begin - if mavlue='' then mavlue:='0'; + if mavlue = '' then + mavlue := '0'; end; with Order_JG do begin Edit; - FieldByName(FfieldName).Value:=mavlue; + FieldByName(FfieldName).Value := mavlue; end; XJGenXin(); end; -procedure TfrmCPAdd_ZLR.v3GYDMPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v3GYDMPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='GYName'; - flagname:='工艺'; - fnote:=True; - V1Note.Caption:='工艺代码'; - if ShowModal=1 then + flag := 'GYName'; + flagname := '工艺'; + fnote := True; + V1Note.Caption := '工艺代码'; + if ShowModal = 1 then begin with Order_JG do begin edit; - FieldByName('GYName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); - FieldByName('GYDM').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + FieldByName('GYName').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('GYDM').Value := Trim(ClientDataSet1.fieldbyname('Note').AsString); end; end; free; end; end; -procedure TfrmCPAdd_ZLR.v2MLCFPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v2MLCFPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='MLCF'; - flagname:='成份'; - if ShowModal=1 then + flag := 'MLCF'; + flagname := '成份'; + if ShowModal = 1 then begin with Order_JG do begin edit; - FieldByName('MLCF').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('MLCF').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; free; end; end; -procedure TfrmCPAdd_ZLR.v4ColorNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v4ColorNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='ColorName'; - flagname:='颜色'; - fnote:=true; - V1Note.Caption:='颜色英文'; - MainType:=Trim(CDS_Sub.fieldbyname('CYNo').AsString); - if ShowModal=1 then + flag := 'ColorName'; + flagname := '颜色'; + fnote := true; + V1Note.Caption := '颜色英文'; + MainType := Trim(CDS_Sub.fieldbyname('CYNo').AsString); + if ShowModal = 1 then begin with Order_Sub do begin edit; - FieldByName('ColorName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); - FieldByName('ColorEName').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + FieldByName('ColorName').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('ColorEName').Value := Trim(ClientDataSet1.fieldbyname('Note').AsString); end; end; free; @@ -1875,15 +1868,17 @@ end; procedure TfrmCPAdd_ZLR.TDelClick(Sender: TObject); begin - if Order_ML.IsEmpty then Exit; - if Trim(Order_ML.fieldbyname('MLID').AsString)<>'' then + if Order_ML.IsEmpty then + Exit; + if Trim(Order_ML.fieldbyname('MLID').AsString) <> '' then begin - if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit; + if Application.MessageBox('确定要删除数据吗?', '提示', 32 + 4) <> IDYES then + Exit; with ADOQueryCmd do begin Close; sql.Clear; - sql.Add('delete from CP_YDang_ML where MLID='''+Trim(Order_ML.fieldbyname('MLID').AsString)+''''); + sql.Add('delete from CP_YDang_ML where MLID=''' + Trim(Order_ML.fieldbyname('MLID').AsString) + ''''); ExecSQL; end; end; @@ -1892,15 +1887,17 @@ end; procedure TfrmCPAdd_ZLR.ToolButton3Click(Sender: TObject); begin - if Order_GYS.IsEmpty then Exit; - if Trim(Order_GYS.fieldbyname('GYSID').AsString)<>'' then + if Order_GYS.IsEmpty then + Exit; + if Trim(Order_GYS.fieldbyname('GYSID').AsString) <> '' then begin - if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit; + if Application.MessageBox('确定要删除数据吗?', '提示', 32 + 4) <> IDYES then + Exit; with ADOQueryCmd do begin Close; sql.Clear; - sql.Add('delete CP_YDang_Color_GYS where GYSID='''+Trim(Order_GYS.fieldbyname('GYSID').AsString)+''''); + sql.Add('delete CP_YDang_Color_GYS where GYSID=''' + Trim(Order_GYS.fieldbyname('GYSID').AsString) + ''''); ExecSQL; end; end; @@ -1909,52 +1906,54 @@ end; procedure TfrmCPAdd_ZLR.TMXSaveClick(Sender: TObject); begin - if CDS_Sub.IsEmpty then exit; - if Order_ML.IsEmpty then exit; - if Order_ML.Locate('MLName','',[])=false then + if CDS_Sub.IsEmpty then + exit; + if Order_ML.IsEmpty then + exit; + if Order_ML.Locate('MLName', '', []) = false then begin MLSavedata(Order_ML); end; - if Order_JG.Locate('JGGX','',[])=false then + if Order_JG.Locate('JGGX', '', []) = false then begin - JGSavedata(Order_JG,Order_ML); + JGSavedata(Order_JG, Order_ML); end; end; procedure TfrmCPAdd_ZLR.ToolButton6Click(Sender: TObject); begin ToolBar1.SetFocus; - if Order_JG.IsEmpty then exit; - if Order_JG.Locate('JGGX','',[])=false then - JGSavedata(Order_JG,Order_ML); + if Order_JG.IsEmpty then + exit; + if Order_JG.Locate('JGGX', '', []) = false then + JGSavedata(Order_JG, Order_ML); end; -procedure TfrmCPAdd_ZLR.v2MLNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v2MLNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmCPManage_YPCXSel:=TfrmCPManage_YPCXSel.create(self); + frmCPManage_YPCXSel := TfrmCPManage_YPCXSel.create(self); with frmCPManage_YPCXSel do begin - if showmodal=1 then + if showmodal = 1 then begin with Order_ML do begin edit; //FieldByName('GYSName').Value:=Trim(CDS_Main.fieldbyname('DefStr7').AsString); - FieldByName('MLName').Value:=Trim(CDS_Main.fieldbyname('CYName').AsString); - FieldByName('SZSpec').Value:=Trim(CDS_Main.fieldbyname('CYSpec').AsString); - FieldByName('MLCode').Value:=Trim(CDS_Main.fieldbyname('XTNo').AsString); - FieldByName('JWMiDu').Value:=Trim(CDS_Main.fieldbyname('DefStr6').AsString); - FieldByName('MLCYNo').Value:=Trim(CDS_Main.fieldbyname('CYNo').AsString); - if CDS_Main.fieldbyname('CYMF').AsString='' then - FieldByName('MLMF').AsFloat:=0 + FieldByName('MLName').Value := Trim(CDS_Main.fieldbyname('CYName').AsString); + FieldByName('SZSpec').Value := Trim(CDS_Main.fieldbyname('CYSpec').AsString); + FieldByName('MLCode').Value := Trim(CDS_Main.fieldbyname('XTNo').AsString); + FieldByName('JWMiDu').Value := Trim(CDS_Main.fieldbyname('DefStr6').AsString); + FieldByName('MLCYNo').Value := Trim(CDS_Main.fieldbyname('CYNo').AsString); + if CDS_Main.fieldbyname('CYMF').AsString = '' then + FieldByName('MLMF').AsFloat := 0 else - FieldByName('MLMF').Value:=Trim(CDS_Main.fieldbyname('CYMF').AsString); - if CDS_Main.fieldbyname('CYKZ').AsString='' then - FieldByName('MLKZ').AsFloat:=0 + FieldByName('MLMF').Value := Trim(CDS_Main.fieldbyname('CYMF').AsString); + if CDS_Main.fieldbyname('CYKZ').AsString = '' then + FieldByName('MLKZ').AsFloat := 0 else - FieldByName('MLKZ').Value:=Trim(CDS_Main.fieldbyname('CYKZ').AsString); - FieldByName('MLCF').Value:=Trim(CDS_Main.fieldbyname('CYCF').AsString); + FieldByName('MLKZ').Value := Trim(CDS_Main.fieldbyname('CYKZ').AsString); + FieldByName('MLCF').Value := Trim(CDS_Main.fieldbyname('CYCF').AsString); //post; end; end; @@ -1963,58 +1962,58 @@ begin end; procedure TfrmCPAdd_ZLR.v2MLMFPropertiesEditValueChanged(Sender: TObject); -var mavlue,FFieldName:string; - FXJ:double; +var + mavlue, FFieldName: string; + FXJ: double; begin - mavlue:=TcxTextEdit(Sender).EditingText; - FFieldName:=Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; - if FFieldName<>'IFSel' then + mavlue := TcxTextEdit(Sender).EditingText; + FFieldName := Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName; + if FFieldName <> 'IFSel' then begin - if mavlue='' then mavlue:='0'; + if mavlue = '' then + mavlue := '0'; end; with Order_ML do begin edit; - FieldByName(FFieldName).value:=mavlue; + FieldByName(FFieldName).value := mavlue; end; XJGenXin(); end; -procedure TfrmCPAdd_ZLR.v3GYNamePropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v3GYNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZDYHelp:=TfrmZDYHelp.Create(self); + frmZDYHelp := TfrmZDYHelp.Create(self); with frmZDYHelp do begin - flag:='GYName'; - flagname:='工艺'; - fnote:=True; - V1Note.Caption:='工艺代码'; - if ShowModal=1 then + flag := 'GYName'; + flagname := '工艺'; + fnote := True; + V1Note.Caption := '工艺代码'; + if ShowModal = 1 then begin with Order_JG do begin edit; - FieldByName('GYName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); - FieldByName('GYDM').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); + FieldByName('GYName').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString); + FieldByName('GYDM').Value := Trim(ClientDataSet1.fieldbyname('Note').AsString); end; end; free; end; end; -procedure TfrmCPAdd_ZLR.cxGridDBColumn16PropertiesButtonClick( - Sender: TObject; AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.cxGridDBColumn16PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZdyAttachGYS_CX:=TfrmZdyAttachGYS_CX.Create(self); + frmZdyAttachGYS_CX := TfrmZdyAttachGYS_CX.Create(self); with frmZdyAttachGYS_CX do begin - if ShowModal=1 then + if ShowModal = 1 then begin with Order_GYS do begin edit; - FieldByName('GYSName').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); + FieldByName('GYSName').Value := Trim(CDS_HZ.fieldbyname('ZDYName').AsString); end; end; free; @@ -2022,45 +2021,49 @@ begin end; procedure TfrmCPAdd_ZLR.MXGYSSave(); -var maxid:string; +var + maxid: string; begin with Order_GYS do begin first; while not Eof do begin - if FieldByName('GYSID').AsString='' then + if FieldByName('GYSID').AsString = '' then begin - if GetLSNo(ADOQuery6,maxId,'GS','CP_YDang_Color_GYS',4,1)=False then + if GetLSNo(ADOQuery6, maxid, 'GS', 'CP_YDang_Color_GYS', 4, 1) = False then begin - Application.MessageBox('取最大号失败!','提示',0); + Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; end else - maxid:=Trim(FieldByName('GYSID').AsString); + maxid := Trim(FieldByName('GYSID').AsString); with ADOQuery6 do begin Close; SQL.Clear; - sql.Add('select * from CP_YDang_Color_GYS where GYSID='''+Trim(maxId)+''''); + sql.Add('select * from CP_YDang_Color_GYS where GYSID=''' + Trim(maxid) + ''''); Open; end; with ADOQuery6 do begin - if IsEmpty then Append else Edit; - FieldByName('GYSID').Value:=Trim(maxId); - FieldByName('CLRID').Value:=Trim(Order_Sub.Fieldbyname('CLRID').AsString); - FieldByName('CYID').Value:=Trim(CDS_Sub.Fieldbyname('CYID').AsString); - SSetSaveDataCDSNew(ADOQuery6,Tv6,Order_GYS,'CP_YDang_Color_GYS',0); + if IsEmpty then + Append + else + Edit; + FieldByName('GYSID').Value := Trim(maxid); + FieldByName('CLRID').Value := Trim(Order_Sub.Fieldbyname('CLRID').AsString); + FieldByName('CYID').Value := Trim(CDS_Sub.Fieldbyname('CYID').AsString); + SSetSaveDataCDSNew(ADOQuery6, Tv6, Order_GYS, 'CP_YDang_Color_GYS', 0); Post; end; with Order_GYS do begin edit; - FieldByName('GYSID').Value:=Trim(maxId); - FieldByName('CYID').Value:=Trim(CDS_Sub.Fieldbyname('CYID').AsString); - FieldByName('CLRID').value:=Trim(Order_Sub.Fieldbyname('CLRID').AsString); + FieldByName('GYSID').Value := Trim(maxid); + FieldByName('CYID').Value := Trim(CDS_Sub.Fieldbyname('CYID').AsString); + FieldByName('CLRID').value := Trim(Order_Sub.Fieldbyname('CLRID').AsString); end; next; end; @@ -2068,25 +2071,26 @@ begin end; procedure TfrmCPAdd_ZLR.TSaveClick(Sender: TObject); -var maxid:string; +var + maxid: string; begin - if Order_GYS.IsEmpty then exit; + if Order_GYS.IsEmpty then + exit; MXGYSSave(); - Application.MessageBox('保存成功','提示'); + Application.MessageBox('保存成功', '提示'); end; -procedure TfrmCPAdd_ZLR.v3HXNoPropertiesButtonClick(Sender: TObject; - AButtonIndex: Integer); +procedure TfrmCPAdd_ZLR.v3HXNoPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin - frmZdyAttachCP_HX_Sel:=TfrmZdyAttachCP_HX_Sel.create(self); + frmZdyAttachCP_HX_Sel := TfrmZdyAttachCP_HX_Sel.create(self); with frmZdyAttachCP_HX_Sel do begin - IF showmodal=1 then + if showmodal = 1 then begin Order_JG.Edit; - Order_JG.FieldByName('HXNo').Value:=trim(cds_Hz.FieldByName('zdyCode').asstring); - Order_JG.FieldByName('HXName').Value:=trim(cds_Hz.FieldByName('zdyName').asstring); - Order_JG.FieldByName('JGCode').Value:=trim(CDS_Sub.FieldByName('CYNo').AsString)+trim(cds_Hz.FieldByName('ZdyCode').asstring); + Order_JG.FieldByName('HXNo').Value := trim(cds_Hz.FieldByName('zdyCode').asstring); + Order_JG.FieldByName('HXName').Value := trim(cds_Hz.FieldByName('zdyName').asstring); + Order_JG.FieldByName('JGCode').Value := trim(CDS_Sub.FieldByName('CYNo').AsString) + trim(cds_Hz.FieldByName('ZdyCode').asstring); Order_JG.Post; end; frmZdyAttachCP_HX_Sel.Free; @@ -2096,7 +2100,8 @@ end; procedure TfrmCPAdd_ZLR.TAddClick(Sender: TObject); begin - if CDS_Sub.IsEmpty then exit; + if CDS_Sub.IsEmpty then + exit; with Order_ML do begin Append; @@ -2107,7 +2112,8 @@ end; procedure TfrmCPAdd_ZLR.ToolButton7Click(Sender: TObject); begin - if Order_ML.IsEmpty then exit; + if Order_ML.IsEmpty then + exit; {if Trim(Order_ML.fieldbyname('MLID').AsString)='' then begin Application.MessageBox('请先保存面料信息','提示',0); @@ -2116,55 +2122,55 @@ begin with Order_JG do begin Append; - FieldByName('JGCengJi').Value:=Order_JG.RecordCount+1; + FieldByName('JGCengJi').Value := Order_JG.RecordCount + 1; Post; end; end; procedure TfrmCPAdd_ZLR.ToolButton8Click(Sender: TObject); begin - if Order_JG.IsEmpty then Exit; - if Trim(Order_JG.fieldbyname('JGID').AsString)<>'' then + if Order_JG.IsEmpty then + Exit; + if Trim(Order_JG.fieldbyname('JGID').AsString) <> '' then begin - if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit; + if Application.MessageBox('确定要删除数据吗?', '提示', 32 + 4) <> IDYES then + Exit; with ADOQueryCmd do begin Close; sql.Clear; - sql.Add('delete from CP_YDang_JG where JGID='''+Trim(Order_JG.fieldbyname('JGID').AsString)+''''); + sql.Add('delete from CP_YDang_JG where JGID=''' + Trim(Order_JG.fieldbyname('JGID').AsString) + ''''); ExecSQL; end; end; Order_JG.Delete; end; -procedure TfrmCPAdd_ZLR.Tv4CellClick(Sender: TcxCustomGridTableView; - ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; - AShift: TShiftState; var AHandled: Boolean); +procedure TfrmCPAdd_ZLR.Tv4CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); begin - if Order_Sub.IsEmpty then exit; + if Order_Sub.IsEmpty then + exit; with ADOQuery4 do begin close; sql.Clear; sql.Add('select * from CP_YDang_Color_GYS '); - sql.Add('where CLRID='''+trim(Order_Sub.fieldbyname('CLRID').AsString)+''''); + sql.Add('where CLRID=''' + trim(Order_Sub.fieldbyname('CLRID').AsString) + ''''); open; end; - SCreateCDS20(ADOQuery4,Order_GYS); - SInitCDSData20(ADOQuery4,Order_GYS); + SCreateCDS20(ADOQuery4, Order_GYS); + SInitCDSData20(ADOQuery4, Order_GYS); end; -procedure TfrmCPAdd_ZLR.Tv4CanFocusRecord(Sender: TcxCustomGridTableView; - ARecord: TcxCustomGridRecord; var AAllow: Boolean); +procedure TfrmCPAdd_ZLR.Tv4CanFocusRecord(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord; var AAllow: Boolean); begin - if Order_GYS.IsEmpty=false then + if Order_GYS.IsEmpty = false then begin - if Order_GYS.Locate('GYSID','',[])=true then + if Order_GYS.Locate('GYSID', '', []) = true then begin MXGYSSave(); end; - if Order_GYS.Locate('GYSID',NULL,[])=true then + if Order_GYS.Locate('GYSID', NULL, []) = true then begin MXGYSSave(); end; @@ -2173,49 +2179,51 @@ end; procedure TfrmCPAdd_ZLR.N1Click(Sender: TObject); begin - SelOKNo(Order_Sub,true); + SelOKNo(Order_Sub, true); end; procedure TfrmCPAdd_ZLR.N2Click(Sender: TObject); begin - SelOKNo(Order_Sub,false); + SelOKNo(Order_Sub, false); end; procedure TfrmCPAdd_ZLR.ToolButton10Click(Sender: TObject); var - fPrintFile,FFCYID,FFCLRID:string; - DPS,i,j:Integer; - Txt,fImagePath,FGHNo:string; + fPrintFile, FFCYID, FFCLRID: string; + DPS, i, j: Integer; + Txt, fImagePath, FGHNo: string; Moudle: THandle; - Makebar:TMakebar; - Mixtext:TMixtext; + Makebar: TMakebar; + Mixtext: TMixtext; begin - if Order_Sub.IsEmpty then Exit; - if Order_Sub.Locate('Ssel',True,[])=false then + if Order_Sub.IsEmpty then + Exit; + if Order_Sub.Locate('Ssel', True, []) = false then begin - Application.MessageBox('没有选择数据','提示'); + Application.MessageBox('没有选择数据', '提示'); exit; end; with ADOQueryCmd do begin close; sql.Clear; - sql.Add('select GHNo from OA_YG_DangAn where YGName='''+trim(DName)+''' '); + sql.Add('select GHNo from OA_YG_DangAn where YGName=''' + trim(DName) + ''' '); open; end; - FGHNo:=trim(ADOQueryCmd.fieldbyname('GHNo').asstring); - fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\单面料颜色标签.rmf'; - DPS:=0; - FFCYID:=''; - i:=1; - if Trim(ComboBox1.Text)='' then + FGHNo := trim(ADOQueryCmd.fieldbyname('GHNo').asstring); + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\单面料颜色标签.rmf'; + DPS := 0; + FFCYID := ''; + i := 1; + if Trim(ComboBox1.Text) = '' then begin - j:=1; - end else + j := 1; + end + else begin - j:=StrToInt(ComboBox1.Text); + j := StrToInt(ComboBox1.Text); end; - for i:=1 to j do + for i := 1 to j do begin Order_Sub.DisableControls; with Order_Sub do @@ -2223,32 +2231,34 @@ begin First; while not Eof do begin - if FieldByName('SSel').AsBoolean=True then + if FieldByName('SSel').AsBoolean = True then begin try - Moudle:=LoadLibrary('MakeQRBarcode.dll'); - @Makebar:=GetProcAddress(Moudle,'Make'); - @Mixtext:=GetProcAddress(Moudle,'MixText'); - Txt:=Trim(Order_Sub.fieldbyname('CLRID').AsString); - fImagePath:=ExtractFilePath(Application.ExeName)+'image\temp.bmp'; - if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName)+'image')) then - CreateDirectory(pchar(ExtractFilePath(Application.ExeName)+'image'),nil); - if FileExists(fImagePath) then DeleteFile(fImagePath); - Makebar(pchar(Txt),Length(Txt),3,3,0,PChar(fImagePath),3); + Moudle := LoadLibrary('MakeQRBarcode.dll'); + @Makebar := GetProcAddress(Moudle, 'Make'); + @Mixtext := GetProcAddress(Moudle, 'MixText'); + Txt := Trim(Order_Sub.fieldbyname('CLRID').AsString); + fImagePath := ExtractFilePath(Application.ExeName) + 'image\temp.bmp'; + if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then + CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil); + if FileExists(fImagePath) then + DeleteFile(fImagePath); + Makebar(pchar(Txt), Length(Txt), 3, 3, 0, PChar(fImagePath), 3); except - application.MessageBox('条形码生成失败!','提示信息',MB_ICONERROR); + application.MessageBox('条形码生成失败!', '提示信息', MB_ICONERROR); exit; end; if FileExists(fPrintFile) then begin - RMVariables['QRBARCODE']:=fImagePath; - RMVariables['FCode']:=Trim(FGHNo); - RMVariables['FName']:=Trim(FGHNo); + RMVariables['QRBARCODE'] := fImagePath; + RMVariables['FCode'] := Trim(FGHNo); + RMVariables['FName'] := Trim(FGHNo); RM1.LoadFromFile(fPrintFile); RM1.PrintReport; - end else + end + else begin - Application.MessageBox(PChar('没有找'+ExtractFilePath(Application.ExeName)+'Report\单面料颜色标签.rmf'),'提示',0); + Application.MessageBox(PChar('没有找' + ExtractFilePath(Application.ExeName) + 'Report\单面料颜色标签.rmf'), '提示', 0); Exit; end; end; @@ -2261,39 +2271,41 @@ end; procedure TfrmCPAdd_ZLR.ToolButton11Click(Sender: TObject); var - fPrintFile,FFCYID,FFCLRID:string; - DPS,i,j:Integer; - Txt,fImagePath,FGHNo:string; + fPrintFile, FFCYID, FFCLRID: string; + DPS, i, j: Integer; + Txt, fImagePath, FGHNo: string; Moudle: THandle; - Makebar:TMakebar; - Mixtext:TMixtext; + Makebar: TMakebar; + Mixtext: TMixtext; begin - if Order_Sub.IsEmpty then Exit; - if Order_Sub.Locate('Ssel',True,[])=false then + if Order_Sub.IsEmpty then + Exit; + if Order_Sub.Locate('Ssel', True, []) = false then begin - Application.MessageBox('没有选择数据','提示'); + Application.MessageBox('没有选择数据', '提示'); exit; end; with ADOQueryCmd do begin close; sql.Clear; - sql.Add('select GHNo from OA_YG_DangAn where YGName='''+trim(DName)+''' '); + sql.Add('select GHNo from OA_YG_DangAn where YGName=''' + trim(DName) + ''' '); open; end; - FGHNo:=trim(ADOQueryCmd.fieldbyname('GHNo').asstring); - fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\客户颜色标签.rmf'; - DPS:=0; - FFCYID:=''; - i:=1; - if Trim(ComboBox1.Text)='' then + FGHNo := trim(ADOQueryCmd.fieldbyname('GHNo').asstring); + fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\客户颜色标签.rmf'; + DPS := 0; + FFCYID := ''; + i := 1; + if Trim(ComboBox1.Text) = '' then begin - j:=1; - end else + j := 1; + end + else begin - j:=StrToInt(ComboBox1.Text); + j := StrToInt(ComboBox1.Text); end; - for i:=1 to j do + for i := 1 to j do begin Order_Sub.DisableControls; with Order_Sub do @@ -2301,32 +2313,34 @@ begin First; while not Eof do begin - if FieldByName('SSel').AsBoolean=True then + if FieldByName('SSel').AsBoolean = True then begin try - Moudle:=LoadLibrary('MakeQRBarcode.dll'); - @Makebar:=GetProcAddress(Moudle,'Make'); - @Mixtext:=GetProcAddress(Moudle,'MixText'); - Txt:=Trim(Order_Sub.fieldbyname('CLRID').AsString); - fImagePath:=ExtractFilePath(Application.ExeName)+'image\temp.bmp'; - if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName)+'image')) then - CreateDirectory(pchar(ExtractFilePath(Application.ExeName)+'image'),nil); - if FileExists(fImagePath) then DeleteFile(fImagePath); - Makebar(pchar(Txt),Length(Txt),3,3,0,PChar(fImagePath),3); + Moudle := LoadLibrary('MakeQRBarcode.dll'); + @Makebar := GetProcAddress(Moudle, 'Make'); + @Mixtext := GetProcAddress(Moudle, 'MixText'); + Txt := Trim(Order_Sub.fieldbyname('CLRID').AsString); + fImagePath := ExtractFilePath(Application.ExeName) + 'image\temp.bmp'; + if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then + CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil); + if FileExists(fImagePath) then + DeleteFile(fImagePath); + Makebar(pchar(Txt), Length(Txt), 3, 3, 0, PChar(fImagePath), 3); except - application.MessageBox('条形码生成失败!','提示信息',MB_ICONERROR); + application.MessageBox('条形码生成失败!', '提示信息', MB_ICONERROR); exit; end; if FileExists(fPrintFile) then begin - RMVariables['QRBARCODE']:=fImagePath; - RMVariables['FCode']:=Trim(FGHNo); - RMVariables['FName']:=Trim(FGHNo); + RMVariables['QRBARCODE'] := fImagePath; + RMVariables['FCode'] := Trim(FGHNo); + RMVariables['FName'] := Trim(FGHNo); RM1.LoadFromFile(fPrintFile); RM1.PrintReport; - end else + end + else begin - Application.MessageBox(PChar('没有找'+ExtractFilePath(Application.ExeName)+'Report\客户颜色标签.rmf'),'提示',0); + Application.MessageBox(PChar('没有找' + ExtractFilePath(Application.ExeName) + 'Report\客户颜色标签.rmf'), '提示', 0); Exit; end; end; @@ -2344,27 +2358,27 @@ begin Close; SQL.Clear; SQL.Add('select * from CP_YDang_Color '); - sql.Add('where CYID='''+Trim(CDS_Sub.fieldbyname('CYID').AsString)+''''); - if ColorName.Text<>'' then - sql.Add(' and ColorName like '''+'%'+trim(ColorName.Text)+'%'+''''); + sql.Add('where CYID=''' + Trim(CDS_Sub.fieldbyname('CYID').AsString) + ''''); + if ColorName.Text <> '' then + sql.Add(' and ColorName like ''' + '%' + trim(ColorName.Text) + '%' + ''''); Open; end; - SCreateCDS20(ADOQuery1,Order_Sub); - SInitCDSData20(ADOQuery1,Order_Sub); + SCreateCDS20(ADOQuery1, Order_Sub); + SInitCDSData20(ADOQuery1, Order_Sub); end; procedure TfrmCPAdd_ZLR.TTPSCClick(Sender: TObject); begin try - frmFileUp:=TfrmFileUp.Create(Application); + frmFileUp := TfrmFileUp.Create(Application); with frmFileUp do begin - Code.Text:=Trim(Self.Order_Sub.fieldbyname('CYNO').AsString); - CYID:=Trim(Self.Order_Sub.fieldbyname('CLRID').AsString); + Code.Text := Trim(Self.Order_Sub.fieldbyname('CYNO').AsString); + CYID := Trim(Self.Order_Sub.fieldbyname('CLRID').AsString); //FName:=Trim(Self.CDS_Sub.fieldbyname('CYNO').AsString)+Trim(Self.Order_Sub.fieldbyname('ColorNo').AsString); - if ShowModal=1 then + if ShowModal = 1 then begin - Self.Order_Sub.Locate('CLRID',CYID,[]); + Self.Order_Sub.Locate('CLRID', CYID, []); end; end; finally @@ -2374,31 +2388,31 @@ end; procedure TfrmCPAdd_ZLR.ToolButton12Click(Sender: TObject); var - fHandle:THandle; - FInt:Integer; - FFName,FPath:String; + fHandle: THandle; + FInt: Integer; + FFName, FPath: string; begin ToolBar1.SetFocus; with ADOQueryTemp do begin close; sql.Clear; - sql.Add('select * from XD_File where CYID='''+Trim(Order_sub.fieldbyname('CLRID').AsString)+''''); + sql.Add('select * from XD_File where CYID=''' + Trim(Order_sub.fieldbyname('CLRID').AsString) + ''''); Open; if IsEmpty then begin - Application.MessageBox('样品图片未上传!','提示',0); + Application.MessageBox('样品图片未上传!', '提示', 0); Exit; end; end; try ReadINIFile(); - server:=ReadINIFileStr('SYSTEMSET.INI','SERVER','服务器地址','127.0.0.1'); - if Length(server)<6 then + server := ReadINIFileStr('SYSTEMSET.INI', 'SERVER', '服务器地址', '127.0.0.1'); + if Length(server) < 6 then begin - server:='127.0.0.1'; + server := '127.0.0.1'; end; - IdFTP1.Host :=server;//PicSvr; + IdFTP1.Host := server; //PicSvr; IdFTP1.Username := 'three'; IdFTP1.Password := '641010'; IdFTP1.Connect(); @@ -2407,70 +2421,69 @@ begin Application.MessageBox('无法连接到文件服务器,请检查!', '提示', MB_ICONWARNING); Exit; end; - FPath:='D:\Right1209\'; + FPath := 'D:\Right1209\'; if not DirectoryExists(ExtractFileDir(FPath)) then CreateDir(ExtractFileDir(FPath)); - FFName:=Trim(ADOQueryTemp.fieldbyname('FileName').AsString); - FFName:=FPath+FFName; + FFName := Trim(ADOQueryTemp.fieldbyname('FileName').AsString); + FFName := FPath + FFName; if FileExists(FFName) then begin - FInt:=1; + FInt := 1; end; - if FInt<>1 then - IdFTP1.Get(UserDataFlag+'YP\'+Trim(ADOQueryTemp.fieldbyname('FileName').AsString), - FPath+Trim(ADOQueryTemp.fieldbyname('FileName').AsString) - ); - if IdFTP1.Connected then IdFTP1.Quit; - ShellExecute(Handle, 'open',PChar(FPath+Trim(ADOQueryTemp.fieldbyname('FileName').AsString)),'', '', SW_SHOWNORMAL); + if FInt <> 1 then + IdFTP1.Get(UserDataFlag + 'YP\' + Trim(ADOQueryTemp.fieldbyname('FileName').AsString), FPath + Trim(ADOQueryTemp.fieldbyname('FileName').AsString)); + if IdFTP1.Connected then + IdFTP1.Quit; + ShellExecute(Handle, 'open', PChar(FPath + Trim(ADOQueryTemp.fieldbyname('FileName').AsString)), '', '', SW_SHOWNORMAL); end; -procedure TfrmCPAdd_ZLR.Tv4FocusedRecordChanged( - Sender: TcxCustomGridTableView; APrevFocusedRecord, - AFocusedRecord: TcxCustomGridRecord; - ANewItemRecordFocusingChanged: Boolean); +procedure TfrmCPAdd_ZLR.Tv4FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean); var - i,j:integer; - jpg:TJpegImage; + i, j: integer; + jpg: TJpegImage; myStream: TADOBlobStream; begin - IF Order_Sub.IsEmpty then exit; - if Order_Sub.FieldByName('CLRID').AsString='' then Exit; + if Order_Sub.IsEmpty then + exit; + if Order_Sub.FieldByName('CLRID').AsString = '' then + Exit; try with adoqueryPicture do begin close; sql.Clear; sql.Add(' select A.TFID,A.WBID,A.FilesOther,B.FileName from TP_File A,XD_File B '); - sql.Add(' where A.TFID =B.XFID and B.CYID='+quotedstr(trim(Order_Sub.fieldbyname('CLRID').AsString))); + sql.Add(' where A.TFID =B.XFID and B.CYID=' + quotedstr(trim(Order_Sub.fieldbyname('CLRID').AsString))); //ShowMessage(SQL.Text); open; end; - j:=length(Mach); - if j>0 then + j := length(Mach); + if j > 0 then begin - for i:=0 to j-1 do + for i := 0 to j - 1 do begin Mach[i].free; end; end; SetLength(Mach, 0); - j:=adoqueryPicture.RecordCount; - if j<1 then exit; + j := adoqueryPicture.RecordCount; + if j < 1 then + exit; adoqueryPicture.DisableControls; adoqueryPicture.First; SetLength(Mach, j); - jpg:=TJpegImage.Create(); - for i:=0 to j-1 do + jpg := TJpegImage.Create(); + for i := 0 to j - 1 do begin - if trim(adoqueryPicture.fieldbyname('FilesOther').AsString)<>'' then + if trim(adoqueryPicture.fieldbyname('FilesOther').AsString) <> '' then begin - myStream:=tadoblobstream.Create(tblobfield(adoqueryPicture.fieldbyname('FilesOther')),bmread); + myStream := tadoblobstream.Create(tblobfield(adoqueryPicture.fieldbyname('FilesOther')), bmread); jpg.LoadFromStream(myStream); Mach[i] := TfrmSlt.Create(Self); - Mach[i].Name:=trim(adoqueryPicture.fieldbyname('TFID').AsString); - Mach[i].Parent:=ScrollBox1; - Mach[I].Left:=0+i*165; - Mach[i].Init(adoqueryPicture.fieldbyname('TFID').AsString,adoqueryPicture.fieldbyname('FileName').AsString,jpg); + Mach[i].Name := trim(adoqueryPicture.fieldbyname('TFID').AsString); + Mach[i].Parent := ScrollBox1; + Mach[i].Left := 0 + i * 165; + Mach[i].Init(adoqueryPicture.fieldbyname('TFID').AsString, adoqueryPicture.fieldbyname('FileName').AsString, jpg); end; adoqueryPicture.Next; end; @@ -2482,18 +2495,20 @@ begin end; procedure TfrmCPAdd_ZLR.FormDestroy(Sender: TObject); -var j,i:integer; +var + j, i: integer; begin - j:=length(Mach); - if j>0 then + j := length(Mach); + if j > 0 then begin - for i:=0 to j-1 do + for i := 0 to j - 1 do begin Mach[i].free; end; end; SetLength(Mach, 0); - frmCPAdd_ZLR:=nil; + frmCPAdd_ZLR := nil; end; end. + diff --git a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_DataLink.pas b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_DataLink.pas index 0de04cd..ed0d6a2 100644 --- a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_DataLink.pas +++ b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_DataLink.pas @@ -4,7 +4,21 @@ interface uses SysUtils, Classes, DB, ADODB, ImgList, Controls, cxStyles, cxLookAndFeels, - Windows,Messages,forms,OleCtnrs,DateUtils, cxClasses; + Windows,Messages,forms,OleCtnrs,DateUtils, cxClasses, dxSkinsCore, + dxSkinBlack, dxSkinBlue, dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, + dxSkinDarkRoom, dxSkinDarkSide, dxSkinDevExpressDarkStyle, + dxSkinDevExpressStyle, dxSkinFoggy, dxSkinGlassOceans, + dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, dxSkinLiquidSky, + dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, + dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, + dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink, + dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, + dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, + dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinPumpkin, + dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus, + dxSkinSilver, dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008, + dxSkinTheAsphaltWorld, dxSkinsDefaultPainters, dxSkinValentine, + dxSkinVS2010, dxSkinWhiteprint, dxSkinXmas2008Blue; var DConString:String; {全局连接字符串} server, dtbase, user, pswd: String; {数据库连接参数} diff --git a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_FileUp.dfm b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_FileUp.dfm index 2f16caf..2b95386 100644 --- a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_FileUp.dfm +++ b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_FileUp.dfm @@ -7,23 +7,23 @@ object frmFileUp: TfrmFileUp Color = clBtnFace Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -13 + Font.Height = -12 Font.Name = #23435#20307 Font.Style = [] OldCreateOrder = False OnCreate = FormCreate OnShow = FormShow - PixelsPerInch = 107 - TextHeight = 13 + PixelsPerInch = 96 + TextHeight = 12 object cxGrid7: TcxGrid Left = 0 - Top = 44 - Width = 553 - Height = 363 + Top = 41 + Width = 563 + Height = 375 Align = alClient TabOrder = 0 object TV7: TcxGridDBTableView - NavigatorButtons.ConfirmDelete = False + Navigator.Buttons.CustomButtons = <> DataController.DataSource = DataSource1 DataController.Summary.DefaultGroupSummaryItems = <> DataController.Summary.FooterSummaryItems = <> @@ -56,10 +56,10 @@ object frmFileUp: TfrmFileUp end end object Panel16: TPanel - Left = 206 - Top = 137 - Width = 149 - Height = 32 + Left = 190 + Top = 126 + Width = 138 + Height = 30 BevelInner = bvRaised Caption = #27491#22312#19978#20256#12290#12290#12290 Color = clSkyBlue @@ -67,14 +67,14 @@ object frmFileUp: TfrmFileUp Visible = False end object ToolBar6: TToolBar - Left = 553 - Top = 44 - Width = 65 - Height = 363 + Left = 563 + Top = 41 + Width = 63 + Height = 375 Align = alRight AutoSize = True ButtonHeight = 30 - ButtonWidth = 61 + ButtonWidth = 59 Caption = 'ToolBar1' Flat = True Images = DataLink_YPGLBOM.ThreeImgList @@ -111,39 +111,39 @@ object frmFileUp: TfrmFileUp object Panel1: TPanel Left = 0 Top = 0 - Width = 618 - Height = 44 + Width = 626 + Height = 41 Align = alTop BevelInner = bvRaised BevelOuter = bvLowered TabOrder = 3 object Label1: TLabel - Left = 9 - Top = 15 - Width = 76 - Height = 18 + Left = 8 + Top = 14 + Width = 72 + Height = 17 Caption = #20135#21697#32534#21495 Font.Charset = GB2312_CHARSET Font.Color = clRed - Font.Height = -18 + Font.Height = -17 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False end object Image2: TImage - Left = 624 - Top = 16 - Width = 25 - Height = 18 + Left = 576 + Top = 15 + Width = 23 + Height = 16 end object Code: TEdit - Left = 85 - Top = 10 - Width = 228 + Left = 78 + Top = 9 + Width = 211 Height = 26 Font.Charset = GB2312_CHARSET Font.Color = clBlue - Font.Height = -18 + Font.Height = -17 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False diff --git a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_FileUp.pas b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_FileUp.pas index bda52cb..d09069c 100644 --- a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_FileUp.pas +++ b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_FileUp.pas @@ -9,7 +9,22 @@ uses cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP, StdCtrls, ADODB,jpeg, - BtnEdit,IniFiles; + BtnEdit,IniFiles, cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, + dxSkinBlack, dxSkinBlue, dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, + dxSkinDarkRoom, dxSkinDarkSide, dxSkinDevExpressDarkStyle, + dxSkinDevExpressStyle, dxSkinFoggy, dxSkinGlassOceans, + dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, dxSkinLiquidSky, + dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, + dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, + dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink, + dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, + dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, + dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinPumpkin, + dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus, + dxSkinSilver, dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008, + dxSkinTheAsphaltWorld, dxSkinsDefaultPainters, dxSkinValentine, + dxSkinVS2010, dxSkinWhiteprint, dxSkinXmas2008Blue, dxSkinscxPCPainter, + cxNavigator; type TfrmFileUp = class(TForm) diff --git a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_GetDllForm.pas b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_GetDllForm.pas index 7d20c4c..45106cf 100644 --- a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_GetDllForm.pas +++ b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_GetDllForm.pas @@ -13,7 +13,7 @@ function ConnData(): Boolean; implementation uses - U_DataLink, U_iniParam, U_MLMange, U_CPType_TP, U_CPManage_TP, U_SLT_BF1, + U_DataLink, U_MLMange, U_CPType_TP, U_CPManage_TP, U_SLT_BF1, U_BPZdy_LRSHK_BF, U_MLMangeRS, U_ZdyAttachGYSX, U_BPZdy_LRGX, U_BPZdy_LRPB, U_BPZdy_LRSHK, U_MLMangeRS_SMCX, U_BPZdy_TJHXK, U_CPType_TJTP, U_ZdyAttachmentX, U_ZdyAttachGYSX_WL, U_ZdyAttachGYSX_FL, U_ZdyAttachGYSX_RC, diff --git a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_ZdyAttachCP_HX_sel.dfm b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_ZdyAttachCP_HX_sel.dfm index d58a18f..b31b484 100644 --- a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_ZdyAttachCP_HX_sel.dfm +++ b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_ZdyAttachCP_HX_sel.dfm @@ -7,34 +7,34 @@ object frmZdyAttachCP_HX_Sel: TfrmZdyAttachCP_HX_Sel Color = clBtnFace Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -13 + Font.Height = -12 Font.Name = #23435#20307 Font.Style = [] OldCreateOrder = False OnClose = FormClose OnDestroy = FormDestroy OnShow = FormShow - PixelsPerInch = 107 - TextHeight = 13 + PixelsPerInch = 96 + TextHeight = 12 object Label2: TLabel - Left = 733 - Top = 14 - Width = 39 - Height = 13 + Left = 677 + Top = 13 + Width = 36 + Height = 12 Caption = #19994#21153#21592 end object ToolBar1: TToolBar Left = 0 Top = 0 - Width = 1139 + Width = 1147 AutoSize = True ButtonHeight = 30 - ButtonWidth = 61 + ButtonWidth = 59 Caption = 'ToolBar1' Color = clSkyBlue - DisabledImages = DataLink_YPGL.ThreeImgList + DisabledImages = DataLink_YPGLBOM.ThreeImgList Flat = True - Images = DataLink_YPGL.ThreeImgList + Images = DataLink_YPGLBOM.ThreeImgList List = True ParentColor = False ShowCaptions = True @@ -48,7 +48,7 @@ object frmZdyAttachCP_HX_Sel: TfrmZdyAttachCP_HX_Sel OnClick = TSselClick end object TBRafresh: TToolButton - Left = 65 + Left = 63 Top = 0 AutoSize = True Caption = #21047#26032 @@ -56,7 +56,7 @@ object frmZdyAttachCP_HX_Sel: TfrmZdyAttachCP_HX_Sel OnClick = TBRafreshClick end object ToolButton2: TToolButton - Left = 130 + Left = 126 Top = 0 AutoSize = True Caption = #36807#28388 @@ -64,7 +64,7 @@ object frmZdyAttachCP_HX_Sel: TfrmZdyAttachCP_HX_Sel OnClick = ToolButton2Click end object TFJ: TToolButton - Left = 195 + Left = 189 Top = 0 AutoSize = True Caption = #38468#20214 @@ -72,7 +72,7 @@ object frmZdyAttachCP_HX_Sel: TfrmZdyAttachCP_HX_Sel OnClick = TFJClick end object ToolButton1: TToolButton - Left = 260 + Left = 252 Top = 0 AutoSize = True Caption = #23548#20986 @@ -80,7 +80,7 @@ object frmZdyAttachCP_HX_Sel: TfrmZdyAttachCP_HX_Sel OnClick = ToolButton1Click end object TBClose: TToolButton - Left = 325 + Left = 315 Top = 0 AutoSize = True Caption = #20851#38381 @@ -91,94 +91,94 @@ object frmZdyAttachCP_HX_Sel: TfrmZdyAttachCP_HX_Sel object Panel1: TPanel Left = 0 Top = 32 - Width = 1139 - Height = 62 + Width = 1147 + Height = 57 Align = alTop BevelInner = bvRaised BevelOuter = bvLowered Color = clSkyBlue TabOrder = 1 object Label3: TLabel - Left = 216 - Top = 13 - Width = 52 - Height = 13 + Left = 199 + Top = 12 + Width = 48 + Height = 12 Caption = #33457#22411#21517#31216 end object Label4: TLabel - Left = 394 - Top = 13 - Width = 52 - Height = 13 + Left = 364 + Top = 12 + Width = 48 + Height = 12 Caption = #33457#22411#25551#36848 end object Label5: TLabel - Left = 575 - Top = 13 - Width = 26 - Height = 13 + Left = 531 + Top = 12 + Width = 24 + Height = 12 Caption = #23458#25143 end object Label6: TLabel - Left = 35 - Top = 13 - Width = 52 - Height = 13 + Left = 32 + Top = 12 + Width = 48 + Height = 12 Caption = #33457#22411#32534#21495 end object Label1: TLabel - Left = 394 - Top = 36 - Width = 53 - Height = 13 + Left = 364 + Top = 33 + Width = 48 + Height = 12 Caption = #19994' '#21153' '#21592 end object Label7: TLabel - Left = 35 - Top = 36 - Width = 54 - Height = 13 + Left = 32 + Top = 33 + Width = 48 + Height = 12 Caption = #22836' '#36317 end object Label8: TLabel - Left = 216 - Top = 36 - Width = 54 - Height = 13 + Left = 199 + Top = 33 + Width = 48 + Height = 12 Caption = #20135' '#37327 end object ZdyName: TEdit Tag = 2 - Left = 269 - Top = 9 - Width = 108 + Left = 248 + Top = 8 + Width = 100 Height = 21 TabOrder = 0 OnChange = ZdyNameChange end object defNote1: TEdit Tag = 2 - Left = 448 - Top = 9 - Width = 108 + Left = 414 + Top = 8 + Width = 99 Height = 21 TabOrder = 1 OnChange = ZdyNameChange end object defnote2: TEdit Tag = 2 - Left = 603 - Top = 9 - Width = 108 + Left = 557 + Top = 8 + Width = 99 Height = 21 TabOrder = 2 OnChange = ZdyNameChange end object zdyCode: TEdit Tag = 2 - Left = 90 - Top = 9 - Width = 108 + Left = 83 + Top = 8 + Width = 100 Height = 21 TabOrder = 3 OnChange = ZdyNameChange @@ -186,27 +186,27 @@ object frmZdyAttachCP_HX_Sel: TfrmZdyAttachCP_HX_Sel end object defstr3: TEdit Tag = 2 - Left = 448 - Top = 32 - Width = 108 + Left = 414 + Top = 30 + Width = 99 Height = 21 TabOrder = 4 OnChange = ZdyNameChange end object defstr2: TEdit Tag = 2 - Left = 90 - Top = 32 - Width = 108 + Left = 83 + Top = 30 + Width = 100 Height = 21 TabOrder = 5 OnChange = ZdyNameChange end object defstr1: TEdit Tag = 2 - Left = 269 - Top = 32 - Width = 108 + Left = 248 + Top = 30 + Width = 100 Height = 21 TabOrder = 6 OnChange = ZdyNameChange @@ -214,16 +214,16 @@ object frmZdyAttachCP_HX_Sel: TfrmZdyAttachCP_HX_Sel end object cxGrid2: TcxGrid Left = 0 - Top = 94 - Width = 1139 - Height = 518 + Top = 89 + Width = 1147 + Height = 532 Align = alClient TabOrder = 2 object Tv2: TcxGridDBTableView OnDblClick = Tv2DblClick - NavigatorButtons.ConfirmDelete = False - NavigatorButtons.Delete.Enabled = False - NavigatorButtons.Delete.Visible = False + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False DataController.DataSource = DS_HZ DataController.Summary.DefaultGroupSummaryItems = <> DataController.Summary.FooterSummaryItems = < @@ -244,10 +244,10 @@ object frmZdyAttachCP_HX_Sel: TfrmZdyAttachCP_HX_Sel OptionsView.Footer = True OptionsView.GroupByBox = False OptionsView.Indicator = True - Styles.Inactive = DataLink_YPGL.SHuangSe - Styles.IncSearch = DataLink_YPGL.SHuangSe - Styles.Selection = DataLink_YPGL.SHuangSe - Styles.Header = DataLink_YPGL.handBlack + Styles.Inactive = DataLink_YPGLBOM.SHuangSe + Styles.IncSearch = DataLink_YPGLBOM.SHuangSe + Styles.Selection = DataLink_YPGLBOM.SHuangSe + Styles.Header = DataLink_YPGLBOM.handBlack object v2Column2: TcxGridDBColumn Caption = #33457#22411#32534#21495 DataBinding.FieldName = 'zdyCode' @@ -332,20 +332,20 @@ object frmZdyAttachCP_HX_Sel: TfrmZdyAttachCP_HX_Sel end end object ADOQueryTemp: TADOQuery - Connection = DataLink_YPGL.ADOLink + Connection = DataLink_YPGLBOM.ADOLink LockType = ltReadOnly Parameters = <> Left = 789 Top = 9 end object ADOQueryCmd: TADOQuery - Connection = DataLink_YPGL.ADOLink + Connection = DataLink_YPGLBOM.ADOLink Parameters = <> Left = 829 Top = 1 end object ADOQueryMain: TADOQuery - Connection = DataLink_YPGL.ADOLink + Connection = DataLink_YPGLBOM.ADOLink LockType = ltReadOnly Parameters = <> Left = 989 diff --git a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_ZdyAttachCP_HX_sel.pas b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_ZdyAttachCP_HX_sel.pas index 57a6040..f923771 100644 --- a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_ZdyAttachCP_HX_sel.pas +++ b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/U_ZdyAttachCP_HX_sel.pas @@ -12,7 +12,22 @@ uses cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, - cxButtonEdit, cxTextEdit, Menus, cxLookAndFeelPainters, cxButtons; + cxButtonEdit, cxTextEdit, Menus, cxLookAndFeelPainters, cxButtons, + cxLookAndFeels, dxSkinsCore, dxSkinBlack, dxSkinBlue, dxSkinBlueprint, + dxSkinCaramel, dxSkinCoffee, dxSkinDarkRoom, dxSkinDarkSide, + dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy, + dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, + dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, + dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, + dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink, + dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, + dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, + dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinPumpkin, + dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus, + dxSkinSilver, dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008, + dxSkinTheAsphaltWorld, dxSkinsDefaultPainters, dxSkinValentine, + dxSkinVS2010, dxSkinWhiteprint, dxSkinXmas2008Blue, dxSkinscxPCPainter, + cxNavigator; type diff --git a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/YPGLBOM.dpr b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/YPGLBOM.dpr index 434034d..1200476 100644 --- a/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/YPGLBOM.dpr +++ b/鏍峰搧鏂颁簯缈(YPGLBOM.dll)/YPGLBOM.dpr @@ -50,7 +50,7 @@ uses U_GYSListSel in 'U_GYSListSel.pas' {frmGYSListSel}, U_SLT_Note in 'U_SLT_Note.pas' {frmSLT_Note}, U_ZDYHelp in '..\Z99Dependency\ThreeFun\Form\U_ZDYHelp.pas' {frmZDYHelp}, - U_RTFun in '..\..\..\RTFunAndForm\Fun\U_RTFun.pas', + U_RTFun in '..\Z99Dependency\RTFunAndForm\Fun\U_RTFun.pas', U_MLMangeRSSel in '..\生产计划单(DyeingFinishingPlan.dll)\U_MLMangeRSSel.pas' {frmMLMangeRS}; // U_SelfForm in '..\..\SelfForm\U_SelfForm.pas', diff --git a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/ProjectGroup1.bpg b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/ProjectGroup1.bpg index 7c050f6..e8a82bd 100644 --- a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/ProjectGroup1.bpg +++ b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/ProjectGroup1.bpg @@ -9,7 +9,7 @@ MAKE = $(ROOT)\bin\make.exe -$(MAKEFLAGS) -f$** DCC = $(ROOT)\bin\dcc32.exe $** BRCC = $(ROOT)\bin\brcc32.exe $** #------------------------------------------------------------------------------ -PROJECTS = testDll.exe ProductPrice.dll +PROJECTS = testDll.exe DyeingFinishingPlan.dll #------------------------------------------------------------------------------ default: $(PROJECTS) #------------------------------------------------------------------------------ @@ -17,7 +17,7 @@ default: $(PROJECTS) testDll.exe: testDll.dpr $(DCC) -ProductPrice.dll: ProductPrice.dpr +DyeingFinishingPlan.dll: DyeingFinishingPlan.dpr $(DCC) diff --git a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_GetDllForm.pas b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_GetDllForm.pas index 918bee8..860ffc2 100644 --- a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_GetDllForm.pas +++ b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_GetDllForm.pas @@ -73,7 +73,7 @@ begin // DConString := DataBaseStr; if trim(DataBaseStr) <> '' then DConString := DataBaseStr; -// DParameters1 := '高权限'; + DParameters1 := '高权限'; // DParameters3:='1'; diff --git a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_MJJYTH.dfm b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_MJJYTH.dfm index 361c115..0e0c8d1 100644 --- a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_MJJYTH.dfm +++ b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_MJJYTH.dfm @@ -3988,8 +3988,8 @@ object frmMJJYTH: TfrmMJJYTH end end object cxStyleRepository1: TcxStyleRepository - Left = 731 - Top = 246 + Left = 468 + Top = 412 PixelsPerInch = 96 object cxStyle1: TcxStyle AssignedValues = [svColor, svFont] @@ -4013,38 +4013,38 @@ object frmMJJYTH: TfrmMJJYTH end object cxGridPopupMenu1: TcxGridPopupMenu PopupMenus = <> - Left = 1241 - Top = 433 + Left = 672 + Top = 344 end object DataSource1: TDataSource DataSet = Order_MJ - Left = 923 - Top = 388 + Left = 468 + Top = 480 end object Order_MJ: TClientDataSet Aggregates = <> Params = <> - Left = 1257 - Top = 501 + Left = 604 + Top = 344 end object ADOQueryMain: TADOQuery Connection = DataLink_DyeingFinishingPlan.ADOLink LockType = ltReadOnly Parameters = <> - Left = 1216 - Top = 432 + Left = 604 + Top = 208 end object ADOCmd: TADOQuery Connection = DataLink_DyeingFinishingPlan.ADOLink Parameters = <> - Left = 1063 - Top = 307 + Left = 468 + Top = 208 end object RMDB_Main: TRMDBDataSet Visible = True DataSet = ADOQueryPrint - Left = 775 - Top = 248 + Left = 536 + Top = 548 end object RM2: TRMGridReport ThreadPrepareReport = True @@ -4063,47 +4063,47 @@ object frmMJJYTH: TfrmMJJYTH CompressThread = False LaterBuildEvents = True OnlyOwnerDataSet = False - Left = 1154 - Top = 494 + Left = 604 + Top = 548 ReportData = {} end object DataSource2: TDataSource DataSet = CDS_MJCD - Left = 788 - Top = 422 + Left = 536 + Top = 480 end object CDS_MJCD: TClientDataSet Aggregates = <> Params = <> - Left = 863 - Top = 301 + Left = 536 + Top = 276 end object DataSource3: TDataSource DataSet = Order_MJ - Left = 1187 - Top = 476 + Left = 604 + Top = 480 end object CDS_MJID: TClientDataSet Aggregates = <> Params = <> - Left = 1132 - Top = 469 + Left = 604 + Top = 276 end object Timer1: TTimer Interval = 100 - Left = 1270 - Top = 432 + Left = 740 + Top = 548 end object ADOQueryPrint: TADOQuery Connection = DataLink_DyeingFinishingPlan.ADOLink LockType = ltReadOnly Parameters = <> - Left = 917 - Top = 362 + Left = 740 + Top = 208 end object cxStyleRepository2: TcxStyleRepository - Left = 816 - Top = 8 + Left = 536 + Top = 412 PixelsPerInch = 96 object cxStyle3: TcxStyle AssignedValues = [svColor, svFont, svTextColor] @@ -4117,8 +4117,8 @@ object frmMJJYTH: TfrmMJJYTH end end object cxStyleRepository3: TcxStyleRepository - Left = 856 - Top = 65528 + Left = 604 + Top = 412 PixelsPerInch = 96 object cxStyle4: TcxStyle AssignedValues = [svColor, svFont, svTextColor] @@ -4132,7 +4132,8 @@ object frmMJJYTH: TfrmMJJYTH end end object cxStyleRepository4: TcxStyleRepository - Left = 824 + Left = 672 + Top = 412 PixelsPerInch = 96 object cxStyle5: TcxStyle AssignedValues = [svColor, svFont, svTextColor] @@ -4146,8 +4147,8 @@ object frmMJJYTH: TfrmMJJYTH end end object cxStyleRepository5: TcxStyleRepository - Left = 848 - Top = 8 + Left = 740 + Top = 412 PixelsPerInch = 96 object cxStyle6: TcxStyle AssignedValues = [svFont] @@ -4160,8 +4161,8 @@ object frmMJJYTH: TfrmMJJYTH end object cxGridPopupMenu2: TcxGridPopupMenu PopupMenus = <> - Left = 1193 - Top = 431 + Left = 740 + Top = 344 end object ADOQueryMainDSC: TADOQuery Connection = DataLink_DyeingFinishingPlan.ADOLink @@ -4187,8 +4188,8 @@ object frmMJJYTH: TfrmMJJYTH ' ' 'and isnull(B.AnPaiChkStatus,'#39#39')='#39#23457#26680#36890#36807#39' and A.SCXDFlag=1' '') - Left = 1112 - Top = 460 + Left = 672 + Top = 208 end object RM3: TRMGridReport ThreadPrepareReport = True @@ -4206,59 +4207,59 @@ object frmMJJYTH: TfrmMJJYTH CompressThread = False LaterBuildEvents = True OnlyOwnerDataSet = False - Left = 1163 - Top = 431 + Left = 672 + Top = 548 ReportData = {} end object ADOTmp: TADOQuery Connection = DataLink_DyeingFinishingPlan.ADOLink Parameters = <> - Left = 1090 - Top = 388 + Left = 468 + Top = 276 end object ADOQuery1: TADOQuery Connection = DataLink_DyeingFinishingPlan.ADOLink Parameters = <> - Left = 891 - Top = 301 + Left = 536 + Top = 208 end object DataSource4: TDataSource DataSet = JY_CP - Left = 1137 - Top = 94 + Left = 672 + Top = 480 end object DataSource5: TDataSource DataSet = JY_HZ - Left = 827 - Top = 382 + Left = 740 + Top = 480 end object JY_CP: TClientDataSet Aggregates = <> Params = <> - Left = 1172 - Top = 93 + Left = 468 + Top = 344 end object JY_HZ: TClientDataSet Aggregates = <> Params = <> - Left = 916 - Top = 302 + Left = 536 + Top = 344 end object DataSource6: TDataSource DataSet = DB_HZ - Left = 1129 - Top = 164 + Left = 468 + Top = 548 end object DB_HZ: TClientDataSet Aggregates = <> Params = <> - Left = 1164 - Top = 163 + Left = 740 + Top = 276 end object ClientDataSet1: TClientDataSet Aggregates = <> Params = <> - Left = 820 - Top = 362 + Left = 672 + Top = 276 end end diff --git a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_MJJYTH.pas b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_MJJYTH.pas index c414e61..95d2210 100644 --- a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_MJJYTH.pas +++ b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_MJJYTH.pas @@ -10,21 +10,21 @@ uses cxControls, cxGridCustomView, cxGrid, RM_Common, RM_Class, RM_GridReport, RM_System, RM_Dataset, ADODB, DBClient, cxGridCustomPopupMenu, cxGridPopupMenu, ExtCtrls, ComCtrls, ToolWin, cxTextEdit, Buttons, cxSplitter, cxCheckBox, - MovePanel, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, - dxSkinsCore, - dxSkinDarkRoom, - - - - - - - - dxSkinOffice2013White, - dxSkinSharpPlus, - dxSkinSpringTime, - dxSkinsDefaultPainters, - dxSkinscxPCPainter; + MovePanel, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxSkinsCore, + dxSkinDarkRoom, dxSkinOffice2013White, dxSkinSharpPlus, dxSkinSpringTime, + dxSkinsDefaultPainters, dxSkinscxPCPainter, dxSkinBlack, dxSkinBlue, + dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkSide, + dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy, + dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, + dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, + dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, + dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink, + dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, + dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, + dxSkinOffice2013LightGray, dxSkinPumpkin, dxSkinSeven, + dxSkinSevenClassic, dxSkinSharp, dxSkinSilver, dxSkinStardust, + dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinValentine, dxSkinVS2010, + dxSkinWhiteprint, dxSkinXmas2008Blue; type TfrmMJJYTH = class(TForm) @@ -2836,12 +2836,12 @@ begin SQL.Clear; sql.Add('select MJLEN=' + JYLen.Text); // sql.Add(',JYKG=' + JYKG.Text); - sql.Add(',JYKG=isnull(''' + JYKG.Text+''','''')'); + sql.Add(',JYKG=isnull(''' + JYKG.Text + ''','''')'); // sql.Add(',JYJZ=' + JYJZ.Text); - sql.Add(',JYJZ=isnull(''' + JYJZ.Text+''','''')'); - sql.Add(',JYMF=isnull(''' + JYMF.Text+''','''')'); - sql.Add(',JYKZ=isnull(''' + JYKZ.Text+''','''')'); - sql.Add(',JYGH=isnull(''' + JYGH.Text+''','''')'); + sql.Add(',JYJZ=isnull(''' + JYJZ.Text + ''','''')'); + sql.Add(',JYMF=isnull(''' + JYMF.Text + ''','''')'); + sql.Add(',JYKZ=isnull(''' + JYKZ.Text + ''','''')'); + sql.Add(',JYGH=isnull(''' + JYGH.Text + ''','''')'); // ShowMessage(sql.text); Open; end; diff --git a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_OrderHCList.dfm b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_OrderHCList.dfm index 80adcf1..f6f1d07 100644 --- a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_OrderHCList.dfm +++ b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_OrderHCList.dfm @@ -1,6 +1,6 @@ object frmOrderHCList: TfrmOrderHCList - Left = 208 - Top = 119 + Left = 450 + Top = 375 Width = 1556 Height = 834 Caption = #26816#39564#20449#24687#31649#29702 @@ -17,10 +17,75 @@ object frmOrderHCList: TfrmOrderHCList OnShow = FormShow PixelsPerInch = 96 TextHeight = 12 + object cxGrid2: TcxGrid + Left = 0 + Top = 92 + Width = 185 + Height = 711 + Align = alLeft + TabOrder = 5 + object TV2: TcxGridDBTableView + OnDblClick = TV2DblClick + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DS_2 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end + item + Kind = skSum + end> + DataController.Summary.SummaryGroups = <> + OptionsView.Footer = True + OptionsView.GroupByBox = False + Styles.Content = DataLink_DyeingFinishingPlan.Default + Styles.Inactive = DataLink_DyeingFinishingPlan.SHuangSe + Styles.IncSearch = DataLink_DyeingFinishingPlan.SHuangSe + Styles.Selection = DataLink_DyeingFinishingPlan.SHuangSe + Styles.Header = DataLink_DyeingFinishingPlan.Default + object cxGridDBColumn1: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Name' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 145 + end + end + object cxGridLevel1: TcxGridLevel + GridView = TV2 + end + end object ToolBar1: TToolBar Left = 0 Top = 0 - Width = 1540 + Width = 1548 AutoSize = True ButtonHeight = 30 ButtonWidth = 115 @@ -99,7 +164,7 @@ object frmOrderHCList: TfrmOrderHCList object Panel1: TPanel Left = 0 Top = 32 - Width = 1540 + Width = 1548 Height = 60 Align = alTop BevelInner = bvRaised @@ -381,10 +446,10 @@ object frmOrderHCList: TfrmOrderHCList end end object cxGrid1: TcxGrid - Left = 0 + Left = 185 Top = 92 - Width = 1540 - Height = 703 + Width = 1363 + Height = 711 Align = alClient TabOrder = 2 object Tv1: TcxGridDBTableView @@ -714,33 +779,33 @@ object frmOrderHCList: TfrmOrderHCList object cxGridPopupMenu1: TcxGridPopupMenu Grid = cxGrid1 PopupMenus = <> - Left = 561 - Top = 201 + Left = 692 + Top = 387 end object ADOQueryMain: TADOQuery Connection = DataLink_DyeingFinishingPlan.ADOLink LockType = ltReadOnly Parameters = <> - Left = 496 - Top = 200 + Left = 692 + Top = 319 end object ADOQueryTemp: TADOQuery Connection = DataLink_DyeingFinishingPlan.ADOLink LockType = ltReadOnly Parameters = <> - Left = 528 - Top = 200 + Left = 760 + Top = 319 end object DataSource1: TDataSource DataSet = Order_Main - Left = 432 - Top = 201 + Left = 760 + Top = 387 end object Order_Main: TClientDataSet Aggregates = <> Params = <> - Left = 402 - Top = 200 + Left = 624 + Top = 387 end object RM1: TRMGridReport ThreadPrepareReport = True @@ -758,15 +823,15 @@ object frmOrderHCList: TfrmOrderHCList CompressThread = False LaterBuildEvents = True OnlyOwnerDataSet = False - Left = 688 - Top = 206 + Left = 624 + Top = 455 ReportData = {} end object RMDB_Main: TRMDBDataSet Visible = True DataSet = CDS_PRT - Left = 657 - Top = 206 + Left = 896 + Top = 387 end object RMXLSExport1: TRMXLSExport ShowAfterExport = True @@ -779,20 +844,38 @@ object frmOrderHCList: TfrmOrderHCList ScaleX = 1.000000000000000000 ScaleY = 1.000000000000000000 CompressFile = False - Left = 601 - Top = 192 + Left = 692 + Top = 455 end object CDS_PRT: TClientDataSet Aggregates = <> Params = <> - Left = 737 - Top = 215 + Left = 896 + Top = 319 end object ADOQueryCmd: TADOQuery Connection = DataLink_DyeingFinishingPlan.ADOLink LockType = ltReadOnly Parameters = <> - Left = 516 - Top = 304 + Left = 624 + Top = 319 + end + object DS_2: TDataSource + DataSet = CDS_2 + Left = 828 + Top = 387 + end + object CDS_2: TClientDataSet + Aggregates = <> + Params = <> + Left = 828 + Top = 319 + end + object ADOQuery1: TADOQuery + Connection = DataLink_DyeingFinishingPlan.ADOLink + LockType = ltReadOnly + Parameters = <> + Left = 976 + Top = 391 end end diff --git a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_OrderHCList.pas b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_OrderHCList.pas index 5c5dc3d..d5e2b23 100644 --- a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_OrderHCList.pas +++ b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_OrderHCList.pas @@ -12,20 +12,20 @@ uses RM_Common, RM_Class, RM_GridReport, RM_e_Xls, Menus, MovePanel, cxTextEdit, cxContainer, cxCurrencyEdit, BtnEdit, RM_e_main, RM_e_htm, RM_e_Graphic, RM_e_Jpeg, RM_e_txt, RM_e_csv, RM_E_llPDF, Math, cxPC, cxLookAndFeels, - cxLookAndFeelPainters, cxNavigator, dxSkinsCore, - dxSkinDarkRoom, - - - - - - - - dxSkinOffice2013White, - dxSkinSharpPlus, - dxSkinSpringTime, - dxSkinsDefaultPainters, - dxSkinscxPCPainter; + cxLookAndFeelPainters, cxNavigator, dxSkinsCore, dxSkinDarkRoom, + dxSkinOffice2013White, dxSkinSharpPlus, dxSkinSpringTime, + dxSkinsDefaultPainters, dxSkinscxPCPainter, dxSkinBlack, dxSkinBlue, + dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkSide, + dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy, + dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, + dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, + dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, + dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink, + dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, + dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, dxSkinOffice2013LightGray, + dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSilver, + dxSkinStardust, dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinValentine, + dxSkinVS2010, dxSkinWhiteprint, dxSkinXmas2008Blue; type TfrmOrderHCList = class(TForm) @@ -98,6 +98,13 @@ type ADOQueryCmd: TADOQuery; Label1: TLabel; MLHX: TEdit; + cxGrid2: TcxGrid; + TV2: TcxGridDBTableView; + cxGridDBColumn1: TcxGridDBColumn; + cxGridLevel1: TcxGridLevel; + DS_2: TDataSource; + CDS_2: TClientDataSet; + ADOQuery1: TADOQuery; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); @@ -120,6 +127,7 @@ type procedure JYTypeChange(Sender: TObject); procedure ToolButton1Click(Sender: TObject); procedure MDNameBtnClick(Sender: TObject); + procedure TV2DblClick(Sender: TObject); private DQdate: TDateTime; FLeft, FTop: Integer; @@ -127,6 +135,7 @@ type canshu1: string; procedure InitGrid(); procedure InitForm(); + procedure InitKH(); { Private declarations } public FFInt: Integer; @@ -176,13 +185,13 @@ begin Pwhere := SGetFilters(Panel1, 1, 2); if trim(Pwhere) <> '' then - fwhere := fwhere + ' and ' + trim(Pwhere); + fwhere := fwhere + ' and ' + trim(Pwhere); try ADOQueryMain.DisableControls; - with ADOQueryMain do + with ADOQueryMain do begin - Filtered := False; + Filtered := False; Close; sql.Clear; SQL.Add('select '); @@ -192,7 +201,7 @@ begin // SQL.Add(',MBQty=C.MBQty + (select sum (MQTY) from ML_OrderSubidNew D where D.CDmainid=C.NewSubid and D.BPLX=''面布'') '); sql.Add('from ML_OrderMainNew B'); sql.Add('inner join ML_OrderSubidNew C on B.NewMLid=C.NewMLid '); - sql.Add('inner join KH_Main KM on B.KHNO=KM.KHNO '); + sql.Add('inner join KH_Main KM on B.KHNO=KM.KHNO '); sql.Add(' where 1=1'); if IsJYTime.Checked then begin @@ -204,6 +213,9 @@ begin end; SCreateCDS20(ADOQueryMain, Order_Main); SInitCDSData20(ADOQueryMain, Order_Main); + + InitKH(); + MovePanel2.Visible := false; finally ADOQueryMain.EnableControls; @@ -211,12 +223,34 @@ begin end; end; +procedure TfrmOrderHCList.InitKH(); +var + fsj: string; +begin + with ADOQuery1 do + begin + Filtered := False; + Close; + sql.Clear; + sql.add(' select DISTINCT KM.KHNameJC AS Name'); + sql.Add(' from ML_OrderMainNew A '); + sql.Add(' left join KH_Main KM on KM.KHNO=A.KHNO '); + sql.Add(' where OrdDate>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.DateTime)) + ''''); + sql.Add(' and OrdDate<''' + Trim(FormatDateTime('yyyy-MM-dd', EndDate.DateTime + 1)) + ''''); +// ShowMessage(SQL.Text); + Open; + end; + + SCreateCDS20(ADOQuery1, CDS_2); + SInitCDSData20(ADOQuery1, CDS_2); +end; + procedure TfrmOrderHCList.InitForm(); var fsj: string; begin ReadCxGrid('订单核查表YX1', Tv1, '检验管理'); - BegDate.DateTime := SGetServerDate10(ADOQueryTemp) - 1; + BegDate.DateTime := SGetServerDate10(ADOQueryTemp); EndDate.DateTime := SGetServerDate10(ADOQueryTemp); end; @@ -413,5 +447,11 @@ begin end; end; +procedure TfrmOrderHCList.TV2DblClick(Sender: TObject); +begin + KHNameJC.Text := CDS_2.fieldbyname('Name').AsString; + InitGrid(); +end; + end. diff --git a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_OrderInPut_New.dfm b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_OrderInPut_New.dfm index d446512..4269e6b 100644 --- a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_OrderInPut_New.dfm +++ b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_OrderInPut_New.dfm @@ -1,6 +1,6 @@ object frmOrderInPut_New: TfrmOrderInPut_New - Left = 311 - Top = 117 + Left = 441 + Top = 378 Width = 1556 Height = 822 Align = alClient @@ -46,8 +46,8 @@ object frmOrderInPut_New: TfrmOrderInPut_New object Panel1: TPanel Left = 0 Top = 0 - Width = 1540 - Height = 783 + Width = 1548 + Height = 791 Align = alClient BevelInner = bvRaised BevelOuter = bvLowered @@ -55,7 +55,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New object ScrollBox1: TScrollBox Left = 2 Top = 28 - Width = 1536 + Width = 1544 Height = 181 Align = alTop BevelInner = bvNone @@ -545,7 +545,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New object Panel2: TPanel Left = 2 Top = 2 - Width = 1536 + Width = 1544 Height = 26 Align = alTop BevelInner = bvRaised @@ -596,8 +596,8 @@ object frmOrderInPut_New: TfrmOrderInPut_New object cxPageControl1: TcxPageControl Left = 2 Top = 209 - Width = 1536 - Height = 572 + Width = 1544 + Height = 580 Align = alClient Font.Charset = GB2312_CHARSET Font.Color = clWindowText @@ -606,11 +606,11 @@ object frmOrderInPut_New: TfrmOrderInPut_New Font.Style = [fsBold] ParentFont = False TabOrder = 2 - Properties.ActivePage = cxTabSheet2 + Properties.ActivePage = cxTabSheet1 Properties.CustomButtons.Buttons = <> Properties.Style = 8 - ClientRectBottom = 572 - ClientRectRight = 1536 + ClientRectBottom = 580 + ClientRectRight = 1544 ClientRectTop = 31 object cxTabSheet1: TcxTabSheet Caption = ' '#35746#21333#26126#32454#20449#24687' ' @@ -618,8 +618,8 @@ object frmOrderInPut_New: TfrmOrderInPut_New object cxGrid1: TcxGrid Left = 0 Top = 0 - Width = 1536 - Height = 541 + Width = 1544 + Height = 549 Align = alClient PopupMenu = PopupMenu1 TabOrder = 0 @@ -768,6 +768,12 @@ object frmOrderInPut_New: TfrmOrderInPut_New HeaderAlignmentHorz = taCenter Width = 135 end + object Tv1Column7: TcxGridDBColumn + Caption = #33457#22411#25551#36848 + DataBinding.FieldName = 'defNote1' + HeaderAlignmentHorz = taCenter + Width = 120 + end object v1Column5: TcxGridDBColumn Caption = #27491#21453#38754 DataBinding.FieldName = 'ZFM' @@ -953,8 +959,8 @@ object frmOrderInPut_New: TfrmOrderInPut_New object cxGrid3: TcxGrid Left = 0 Top = 0 - Width = 1536 - Height = 541 + Width = 1544 + Height = 549 Align = alClient PopupMenu = PopupMenu2 TabOrder = 0 @@ -1062,8 +1068,8 @@ object frmOrderInPut_New: TfrmOrderInPut_New object cxGrid2: TcxGrid Left = 0 Top = 0 - Width = 1536 - Height = 541 + Width = 1544 + Height = 549 Align = alClient PopupMenu = PopupMenu2 TabOrder = 0 @@ -1253,8 +1259,8 @@ object frmOrderInPut_New: TfrmOrderInPut_New object Panel4: TPanel Left = 0 Top = 0 - Width = 1536 - Height = 541 + Width = 1544 + Height = 549 Align = alClient BevelInner = bvRaised BevelOuter = bvLowered @@ -1459,7 +1465,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 131 Top = 74 Width = 231 - Height = 33 + Height = 28 Font.Charset = GB2312_CHARSET Font.Color = clBlack Font.Height = -20 @@ -1473,7 +1479,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 131 Top = 128 Width = 231 - Height = 33 + Height = 28 Font.Charset = GB2312_CHARSET Font.Color = clBlack Font.Height = -20 @@ -1487,7 +1493,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 131 Top = 182 Width = 231 - Height = 33 + Height = 28 Font.Charset = GB2312_CHARSET Font.Color = clBlack Font.Height = -20 @@ -1501,7 +1507,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 131 Top = 236 Width = 231 - Height = 33 + Height = 28 Font.Charset = GB2312_CHARSET Font.Color = clBlack Font.Height = -20 @@ -1515,7 +1521,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 131 Top = 290 Width = 231 - Height = 33 + Height = 28 Font.Charset = GB2312_CHARSET Font.Color = clBlack Font.Height = -20 @@ -1529,7 +1535,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 131 Top = 343 Width = 231 - Height = 33 + Height = 28 Font.Charset = GB2312_CHARSET Font.Color = clBlack Font.Height = -20 @@ -1543,7 +1549,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 602 Top = 74 Width = 263 - Height = 33 + Height = 28 Font.Charset = GB2312_CHARSET Font.Color = clBlack Font.Height = -20 @@ -1557,7 +1563,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 602 Top = 128 Width = 263 - Height = 33 + Height = 28 Font.Charset = GB2312_CHARSET Font.Color = clBlack Font.Height = -20 @@ -1571,7 +1577,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 602 Top = 182 Width = 263 - Height = 33 + Height = 28 Font.Charset = GB2312_CHARSET Font.Color = clBlack Font.Height = -20 @@ -1585,7 +1591,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 602 Top = 236 Width = 263 - Height = 33 + Height = 28 Font.Charset = GB2312_CHARSET Font.Color = clBlack Font.Height = -20 @@ -1599,7 +1605,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 602 Top = 290 Width = 263 - Height = 33 + Height = 28 Font.Charset = GB2312_CHARSET Font.Color = clBlack Font.Height = -20 @@ -1657,7 +1663,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 363 Top = 75 Width = 116 - Height = 35 + Height = 31 Ctl3D = True Font.Charset = ANSI_CHARSET Font.Color = clBlue @@ -1675,7 +1681,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 363 Top = 129 Width = 116 - Height = 35 + Height = 31 Ctl3D = True Font.Charset = ANSI_CHARSET Font.Color = clBlue @@ -1693,7 +1699,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 363 Top = 182 Width = 116 - Height = 35 + Height = 31 Ctl3D = True Font.Charset = ANSI_CHARSET Font.Color = clBlue @@ -1711,7 +1717,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 363 Top = 237 Width = 116 - Height = 35 + Height = 31 Ctl3D = True Font.Charset = ANSI_CHARSET Font.Color = clBlue @@ -1729,7 +1735,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 363 Top = 290 Width = 116 - Height = 35 + Height = 31 Ctl3D = True Font.Charset = ANSI_CHARSET Font.Color = clBlue @@ -1747,7 +1753,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 363 Top = 344 Width = 116 - Height = 35 + Height = 31 Ctl3D = True Font.Charset = ANSI_CHARSET Font.Color = clBlue @@ -1765,7 +1771,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 867 Top = 75 Width = 102 - Height = 35 + Height = 31 Ctl3D = True Font.Charset = ANSI_CHARSET Font.Color = clBlue @@ -1783,7 +1789,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 867 Top = 129 Width = 102 - Height = 35 + Height = 31 Ctl3D = True Font.Charset = ANSI_CHARSET Font.Color = clBlue @@ -1801,7 +1807,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 867 Top = 182 Width = 102 - Height = 35 + Height = 31 Ctl3D = True Font.Charset = ANSI_CHARSET Font.Color = clBlue @@ -1819,7 +1825,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 867 Top = 237 Width = 102 - Height = 35 + Height = 31 Ctl3D = True Font.Charset = ANSI_CHARSET Font.Color = clBlue @@ -1837,7 +1843,7 @@ object frmOrderInPut_New: TfrmOrderInPut_New Left = 867 Top = 290 Width = 102 - Height = 35 + Height = 31 Ctl3D = True Font.Charset = ANSI_CHARSET Font.Color = clBlue diff --git a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_OrderInPut_New.pas b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_OrderInPut_New.pas index 65342fc..7a634c1 100644 --- a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_OrderInPut_New.pas +++ b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_OrderInPut_New.pas @@ -26,7 +26,19 @@ uses dxSkinSharpPlus, dxSkinSpringTime, dxSkinsDefaultPainters, - dxSkinscxPCPainter; + dxSkinscxPCPainter, dxSkinBlack, dxSkinBlue, dxSkinBlueprint, + dxSkinCaramel, dxSkinCoffee, dxSkinDarkSide, dxSkinDevExpressDarkStyle, + dxSkinDevExpressStyle, dxSkinFoggy, dxSkinGlassOceans, + dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, dxSkinLiquidSky, + dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, + dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, + dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink, + dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, + dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, + dxSkinOffice2013LightGray, dxSkinPumpkin, dxSkinSeven, + dxSkinSevenClassic, dxSkinSharp, dxSkinSilver, dxSkinStardust, + dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinValentine, dxSkinVS2010, + dxSkinWhiteprint, dxSkinXmas2008Blue; type TfrmOrderInPut_New = class(TForm) @@ -210,6 +222,7 @@ type ADOQuery5: TADOQuery; Label35: TLabel; YIDZ: TEdit; + Tv1Column7: TcxGridDBColumn; procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure TBSaveClick(Sender: TObject); @@ -440,13 +453,6 @@ begin Application.MessageBox('取最大号失败!', '提示', 0); Exit; end; - {if GetLSNo(ADOCmd,forderNo,'','ML_OrderMainNew',3,1)=False then - begin - ADOCmd.Connection.RollbackTrans; - Application.MessageBox('取最大号失败!','提示',0); - Exit; - end; - MLorderNo.Text:=forderNo;} end else begin diff --git a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ProductOrderNewList_BQNew.dfm b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ProductOrderNewList_BQNew.dfm index b07db7a..1abc687 100644 --- a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ProductOrderNewList_BQNew.dfm +++ b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ProductOrderNewList_BQNew.dfm @@ -7,7 +7,7 @@ object frmProductOrderNewList_BQNew: TfrmProductOrderNewList_BQNew Color = clBtnFace Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -15 + Font.Height = -12 Font.Name = #23435#20307 Font.Style = [] OldCreateOrder = False @@ -16,12 +16,12 @@ object frmProductOrderNewList_BQNew: TfrmProductOrderNewList_BQNew OnCreate = FormCreate OnDestroy = FormDestroy OnShow = FormShow - PixelsPerInch = 120 - TextHeight = 15 + PixelsPerInch = 96 + TextHeight = 12 object ToolBar1: TToolBar Left = 0 Top = 0 - Width = 1383 + Width = 1393 AutoSize = True ButtonHeight = 30 ButtonWidth = 130 @@ -108,132 +108,132 @@ object frmProductOrderNewList_BQNew: TfrmProductOrderNewList_BQNew object Panel1: TPanel Left = 0 Top = 32 - Width = 1383 - Height = 97 + Width = 1393 + Height = 77 Align = alTop BevelInner = bvRaised BevelOuter = bvLowered Color = clSkyBlue TabOrder = 1 object Label1: TLabel - Left = 5 - Top = 20 - Width = 92 - Height = 22 + Left = 4 + Top = 16 + Width = 80 + Height = 19 Caption = #19979#21333#26085#26399 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -22 + Font.Height = -19 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False end object Label3: TLabel - Left = 567 - Top = 52 - Width = 69 - Height = 22 + Left = 454 + Top = 42 + Width = 60 + Height = 19 Caption = #25351#31034#21333 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -22 + Font.Height = -19 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False end object Label4: TLabel - Left = 267 - Top = 19 - Width = 94 - Height = 22 + Left = 214 + Top = 15 + Width = 84 + Height = 19 Caption = #23458' '#25143 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -22 + Font.Height = -19 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False end object Label9: TLabel - Left = 567 - Top = 20 - Width = 69 - Height = 22 + Left = 454 + Top = 16 + Width = 60 + Height = 19 Caption = #21512#21516#21495 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -22 + Font.Height = -19 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False end object Label12: TLabel - Left = 766 - Top = 149 - Width = 32 - Height = 15 + Left = 613 + Top = 119 + Width = 26 + Height = 12 Caption = #20811#37325 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -15 + Font.Height = -12 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False end object Label5: TLabel - Left = 267 - Top = 52 - Width = 92 - Height = 22 + Left = 214 + Top = 42 + Width = 80 + Height = 19 Caption = #20135#21697#21517#31216 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -22 + Font.Height = -19 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False end object Label7: TLabel - Left = 657 - Top = 110 - Width = 64 - Height = 15 + Left = 526 + Top = 88 + Width = 52 + Height = 12 Caption = #23457#26680#29366#24577 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -15 + Font.Height = -12 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False Visible = False end object BegDate: TDateTimePicker - Left = 97 - Top = 16 - Width = 158 - Height = 30 + Left = 78 + Top = 13 + Width = 126 + Height = 27 Date = 40675.464742650460000000 Format = 'yyyy-MM-dd' Time = 40675.464742650460000000 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -22 + Font.Height = -19 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False TabOrder = 0 end object EndDate: TDateTimePicker - Left = 96 - Top = 49 - Width = 158 - Height = 30 + Left = 77 + Top = 39 + Width = 126 + Height = 27 Date = 40675.464761099540000000 Format = 'yyyy-MM-dd' Time = 40675.464761099540000000 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -22 + Font.Height = -19 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False @@ -241,13 +241,13 @@ object frmProductOrderNewList_BQNew: TfrmProductOrderNewList_BQNew end object MLOrderNo: TEdit Tag = 2 - Left = 641 - Top = 48 - Width = 97 + Left = 513 + Top = 38 + Width = 77 Height = 30 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -22 + Font.Height = -19 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False @@ -256,13 +256,13 @@ object frmProductOrderNewList_BQNew: TfrmProductOrderNewList_BQNew end object KHName: TEdit Tag = 2 - Left = 360 - Top = 15 - Width = 153 + Left = 288 + Top = 12 + Width = 122 Height = 30 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -22 + Font.Height = -19 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False @@ -271,13 +271,13 @@ object frmProductOrderNewList_BQNew: TfrmProductOrderNewList_BQNew end object MLConNo: TEdit Tag = 2 - Left = 641 - Top = 16 - Width = 97 + Left = 513 + Top = 13 + Width = 77 Height = 30 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -22 + Font.Height = -19 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False @@ -286,22 +286,22 @@ object frmProductOrderNewList_BQNew: TfrmProductOrderNewList_BQNew end object MPRTKZ: TEdit Tag = 2 - Left = 818 - Top = 123 - Width = 69 + Left = 654 + Top = 98 + Width = 56 Height = 23 TabOrder = 5 OnChange = MLOrderNoChange end object MLCodeName: TEdit Tag = 2 - Left = 360 - Top = 48 - Width = 188 + Left = 288 + Top = 38 + Width = 150 Height = 30 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -22 + Font.Height = -19 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False @@ -310,11 +310,11 @@ object frmProductOrderNewList_BQNew: TfrmProductOrderNewList_BQNew end object status: TComboBox Tag = 2 - Left = 726 - Top = 108 - Width = 129 - Height = 23 - ItemHeight = 15 + Left = 581 + Top = 86 + Width = 103 + Height = 20 + ItemHeight = 12 TabOrder = 7 Visible = False OnChange = MLOrderNoChange @@ -325,14 +325,14 @@ object frmProductOrderNewList_BQNew: TfrmProductOrderNewList_BQNew '') end object Button2: TButton - Left = 515 - Top = 16 - Width = 32 - Height = 28 + Left = 412 + Top = 13 + Width = 26 + Height = 22 Caption = '...' Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -22 + Font.Height = -19 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False @@ -340,14 +340,14 @@ object frmProductOrderNewList_BQNew: TfrmProductOrderNewList_BQNew OnClick = Button2Click end object Button1: TButton - Left = 859 - Top = 16 - Width = 93 - Height = 29 + Left = 687 + Top = 13 + Width = 75 + Height = 23 Caption = #30382#37325 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -25 + Font.Height = -20 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False @@ -355,14 +355,14 @@ object frmProductOrderNewList_BQNew: TfrmProductOrderNewList_BQNew OnClick = Button1Click end object Button3: TButton - Left = 859 - Top = 51 - Width = 93 - Height = 28 + Left = 687 + Top = 41 + Width = 75 + Height = 22 Caption = #31995#25968 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -25 + Font.Height = -20 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False @@ -370,40 +370,40 @@ object frmProductOrderNewList_BQNew: TfrmProductOrderNewList_BQNew OnClick = Button3Click end object PiZhong: TEdit - Left = 768 - Top = 14 - Width = 88 + Left = 614 + Top = 11 + Width = 71 Height = 33 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -25 + Font.Height = -20 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False TabOrder = 11 end object XS: TEdit - Left = 768 - Top = 47 - Width = 88 + Left = 614 + Top = 38 + Width = 71 Height = 33 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -25 + Font.Height = -20 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False TabOrder = 12 end object Button4: TButton - Left = 1071 - Top = 51 - Width = 93 - Height = 28 + Left = 857 + Top = 41 + Width = 74 + Height = 22 Caption = #30721#25968 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -25 + Font.Height = -20 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False @@ -411,13 +411,13 @@ object frmProductOrderNewList_BQNew: TfrmProductOrderNewList_BQNew OnClick = Button4Click end object MaXS: TEdit - Left = 980 - Top = 47 - Width = 88 + Left = 784 + Top = 38 + Width = 70 Height = 33 Font.Charset = GB2312_CHARSET Font.Color = clWindowText - Font.Height = -25 + Font.Height = -20 Font.Name = #23435#20307 Font.Style = [fsBold] ParentFont = False @@ -426,9 +426,9 @@ object frmProductOrderNewList_BQNew: TfrmProductOrderNewList_BQNew end object Cxgrid1: TcxGrid Left = 0 - Top = 129 - Width = 1383 - Height = 301 + Top = 109 + Width = 1393 + Height = 385 Align = alClient PopupMenu = PopupMenu1 TabOrder = 2 @@ -536,13 +536,20 @@ object frmProductOrderNewList_BQNew: TfrmProductOrderNewList_BQNew Options.Editing = False Width = 78 end - object Tv1Column1: TcxGridDBColumn + object Tv1MaXS: TcxGridDBColumn Caption = #30721#25968 DataBinding.FieldName = 'MaXS' HeaderAlignmentHorz = taCenter Options.Editing = False Width = 76 end + object Tv1Filler: TcxGridDBColumn + Caption = #21046#21333#20154 + DataBinding.FieldName = 'Filler' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 80 + end end object Cxgrid1Level1: TcxGridLevel GridView = Tv1 @@ -550,8 +557,8 @@ object frmProductOrderNewList_BQNew: TfrmProductOrderNewList_BQNew end object cxSplitter1: TcxSplitter Left = 0 - Top = 430 - Width = 1383 + Top = 494 + Width = 1393 Height = 8 HotZoneClassName = 'TcxMediaPlayer9Style' AlignSplitter = salBottom @@ -559,17 +566,17 @@ object frmProductOrderNewList_BQNew: TfrmProductOrderNewList_BQNew end object Panel2: TPanel Left = 0 - Top = 438 - Width = 1383 - Height = 244 + Top = 502 + Width = 1393 + Height = 196 Align = alBottom BevelOuter = bvNone TabOrder = 4 object cxGrid2: TcxGrid Left = 0 Top = 0 - Width = 1383 - Height = 244 + Width = 1393 + Height = 196 Align = alClient TabOrder = 0 object Tv2: TcxGridDBTableView @@ -833,7 +840,7 @@ object frmProductOrderNewList_BQNew: TfrmProductOrderNewList_BQNew Top = 583 end object cxStyleRepository1: TcxStyleRepository - PixelsPerInch = 120 + PixelsPerInch = 96 object cxStyle1: TcxStyle AssignedValues = [svFont] Font.Charset = ANSI_CHARSET diff --git a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ProductOrderNewList_BQNew.pas b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ProductOrderNewList_BQNew.pas index 431aadf..cd6d06b 100644 --- a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ProductOrderNewList_BQNew.pas +++ b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ProductOrderNewList_BQNew.pas @@ -13,7 +13,20 @@ uses RM_Dataset, RM_System, RM_GridReport, cxGridCustomPopupMenu, cxGridPopupMenu, cxPC, cxSplitter, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP, ShellAPI, cxCheckBox, cxLookAndFeels, cxLookAndFeelPainters, - cxNavigator; + cxNavigator, dxSkinsCore, dxSkinBlack, dxSkinBlue, dxSkinBlueprint, + dxSkinCaramel, dxSkinCoffee, dxSkinDarkRoom, dxSkinDarkSide, + dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy, + dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, + dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, + dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, + dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink, + dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, + dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, + dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinPumpkin, + dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus, + dxSkinSilver, dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008, + dxSkinTheAsphaltWorld, dxSkinsDefaultPainters, dxSkinValentine, + dxSkinVS2010, dxSkinWhiteprint, dxSkinXmas2008Blue, dxSkinscxPCPainter; type TfrmProductOrderNewList_BQNew = class(TForm) @@ -98,9 +111,10 @@ type PiZhong: TEdit; XS: TEdit; ToolButton6: TToolButton; - Tv1Column1: TcxGridDBColumn; + Tv1MaXS: TcxGridDBColumn; Button4: TButton; MaXS: TEdit; + Tv1Filler: TcxGridDBColumn; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); diff --git a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ProductOrderNewList_New.dfm b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ProductOrderNewList_New.dfm index b3408d2..a151b3a 100644 --- a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ProductOrderNewList_New.dfm +++ b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ProductOrderNewList_New.dfm @@ -1,6 +1,6 @@ object frmProductOrderNewList_New: TfrmProductOrderNewList_New - Left = 201 - Top = 119 + Left = 328 + Top = 562 Width = 1556 Height = 878 Caption = #29983#20135#25351#31034#21333#26032 @@ -1045,148 +1045,13 @@ object frmProductOrderNewList_New: TfrmProductOrderNewList_New Visible = False end end - object Cxgrid1: TcxGrid - Left = 0 - Top = 135 - Width = 1452 - Height = 654 - Align = alClient - PopupMenu = PopupMenu1 - TabOrder = 6 - object Tv1: TcxGridDBTableView - OnMouseDown = Tv1MouseDown - Navigator.Buttons.CustomButtons = <> - OnCellDblClick = Tv1CellDblClick - DataController.DataSource = DataSource1 - DataController.Filter.AutoDataSetFilter = True - DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] - DataController.Summary.DefaultGroupSummaryItems = <> - DataController.Summary.FooterSummaryItems = < - item - Kind = skSum - Column = v1Column2 - end - item - Kind = skCount - Column = v1OrdDate - end> - DataController.Summary.SummaryGroups = <> - OptionsView.Footer = True - OptionsView.GroupByBox = False - OptionsView.Indicator = True - Styles.Content = cxStyle1 - Styles.Inactive = cxStyle1 - Styles.IncSearch = cxStyle1 - Styles.Selection = cxStyle1 - Styles.Header = cxStyle1 - object v1Ssel: TcxGridDBColumn - Caption = #36873#25321 - DataBinding.FieldName = 'Ssel' - PropertiesClassName = 'TcxCheckBoxProperties' - HeaderAlignmentHorz = taCenter - Width = 56 - end - object v1OrdDate: TcxGridDBColumn - Caption = #19979#21333#26085#26399 - DataBinding.FieldName = 'OrdDate' - PropertiesClassName = 'TcxDateEditProperties' - Properties.ShowTime = False - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 137 - end - object v1MLOrderNo: TcxGridDBColumn - Caption = #25351#31034#21333#21495 - DataBinding.FieldName = 'MLOrderNo' - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 151 - end - object v1MLConNo: TcxGridDBColumn - Caption = #21512#21516#21495 - DataBinding.FieldName = 'MLConNo' - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 138 - end - object v1Column1: TcxGridDBColumn - Caption = #23458#25143#21512#21516#21495 - DataBinding.FieldName = 'KHConNo' - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 175 - end - object v1MLCodeName: TcxGridDBColumn - Caption = #20135#21697#21517#31216 - DataBinding.FieldName = 'MLCodeName' - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 309 - end - object v1KHName: TcxGridDBColumn - Caption = #23458#25143 - DataBinding.FieldName = 'KHNameJC' - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 194 - end - object v1Column2: TcxGridDBColumn - Caption = #24635#25968#37327 - DataBinding.FieldName = 'ZQty' - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 114 - end - object Tv1Column1: TcxGridDBColumn - Caption = #26631#31614#35268#21017 - DataBinding.FieldName = 'CPBQGuiZe' - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 118 - end - object Tv1Column2: TcxGridDBColumn - Caption = #33457#22411 - DataBinding.FieldName = 'HX' - HeaderAlignmentHorz = taCenter - Options.Editing = False - Width = 100 - end - object Tv1Column3: TcxGridDBColumn - Caption = #28322#30701#35013 - DataBinding.FieldName = 'YIDZ' - HeaderAlignmentHorz = taCenter - Width = 97 - end - object Tv1Column4: TcxGridDBColumn - Caption = #25968#37327#19978#38480 - DataBinding.FieldName = 'SLSX' - HeaderAlignmentHorz = taCenter - Width = 102 - end - object Tv1Column5: TcxGridDBColumn - Caption = #25968#37327#19979#38480 - DataBinding.FieldName = 'SLXX' - HeaderAlignmentHorz = taCenter - Width = 99 - end - object Tv1Column6: TcxGridDBColumn - Caption = #21512#21516#35746#37329 - DataBinding.FieldName = 'HTDJ' - HeaderAlignmentHorz = taCenter - Width = 100 - end - end - object Cxgrid1Level1: TcxGridLevel - GridView = Tv1 - end - end object Panel8: TPanel Left = 280 Top = 249 Width = 996 Height = 315 Color = clSkyBlue - TabOrder = 7 + TabOrder = 6 Visible = False object Label8: TLabel Left = 367 @@ -1413,7 +1278,7 @@ object frmProductOrderNewList_New: TfrmProductOrderNewList_New Top = 141 Width = 232 Height = 179 - TabOrder = 8 + TabOrder = 7 Visible = False object Label18: TLabel Left = 48 @@ -1508,42 +1373,237 @@ object frmProductOrderNewList_New: TfrmProductOrderNewList_New TabOrder = 2 end end + object Panel12: TPanel + Left = 0 + Top = 135 + Width = 1452 + Height = 654 + Align = alClient + TabOrder = 8 + object Cxgrid1: TcxGrid + Left = 201 + Top = 1 + Width = 1250 + Height = 652 + Align = alClient + PopupMenu = PopupMenu1 + TabOrder = 0 + object Tv1: TcxGridDBTableView + OnMouseDown = Tv1MouseDown + Navigator.Buttons.CustomButtons = <> + OnCellDblClick = Tv1CellDblClick + DataController.DataSource = DataSource1 + DataController.Filter.AutoDataSetFilter = True + DataController.Options = [dcoAssignGroupingValues, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoImmediatePost] + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = < + item + Kind = skSum + Column = v1Column2 + end + item + Kind = skCount + Column = v1OrdDate + end> + DataController.Summary.SummaryGroups = <> + OptionsView.Footer = True + OptionsView.GroupByBox = False + OptionsView.Indicator = True + Styles.Content = cxStyle1 + Styles.Inactive = cxStyle1 + Styles.IncSearch = cxStyle1 + Styles.Selection = cxStyle1 + Styles.Header = cxStyle1 + object v1Ssel: TcxGridDBColumn + Caption = #36873#25321 + DataBinding.FieldName = 'Ssel' + PropertiesClassName = 'TcxCheckBoxProperties' + HeaderAlignmentHorz = taCenter + Width = 56 + end + object v1OrdDate: TcxGridDBColumn + Caption = #19979#21333#26085#26399 + DataBinding.FieldName = 'OrdDate' + PropertiesClassName = 'TcxDateEditProperties' + Properties.ShowTime = False + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 137 + end + object v1MLOrderNo: TcxGridDBColumn + Caption = #25351#31034#21333#21495 + DataBinding.FieldName = 'MLOrderNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 151 + end + object v1MLConNo: TcxGridDBColumn + Caption = #21512#21516#21495 + DataBinding.FieldName = 'MLConNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 138 + end + object v1Column1: TcxGridDBColumn + Caption = #23458#25143#21512#21516#21495 + DataBinding.FieldName = 'KHConNo' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 175 + end + object v1MLCodeName: TcxGridDBColumn + Caption = #20135#21697#21517#31216 + DataBinding.FieldName = 'MLCodeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 309 + end + object v1KHName: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'KHNameJC' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 194 + end + object v1Column2: TcxGridDBColumn + Caption = #24635#25968#37327 + DataBinding.FieldName = 'ZQty' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 114 + end + object Tv1Column1: TcxGridDBColumn + Caption = #26631#31614#35268#21017 + DataBinding.FieldName = 'CPBQGuiZe' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 118 + end + object Tv1Column2: TcxGridDBColumn + Caption = #33457#22411 + DataBinding.FieldName = 'HX' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object Tv1Column3: TcxGridDBColumn + Caption = #28322#30701#35013 + DataBinding.FieldName = 'YIDZ' + HeaderAlignmentHorz = taCenter + Width = 97 + end + object Tv1Column4: TcxGridDBColumn + Caption = #25968#37327#19978#38480 + DataBinding.FieldName = 'SLSX' + HeaderAlignmentHorz = taCenter + Width = 102 + end + object Tv1Column5: TcxGridDBColumn + Caption = #25968#37327#19979#38480 + DataBinding.FieldName = 'SLXX' + HeaderAlignmentHorz = taCenter + Width = 99 + end + object Tv1Column6: TcxGridDBColumn + Caption = #21512#21516#35746#37329 + DataBinding.FieldName = 'HTDJ' + HeaderAlignmentHorz = taCenter + Width = 100 + end + object Tv1MLPrice: TcxGridDBColumn + Caption = #21333#20215 + DataBinding.FieldName = 'MLPrice' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object Tv1FeeName: TcxGridDBColumn + Caption = #36153#29992#21517#31216 + DataBinding.FieldName = 'FeeName' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + object Tv1FeeMoney: TcxGridDBColumn + Caption = #36153#29992#37329#39069 + DataBinding.FieldName = 'FeeMoney' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 100 + end + end + object Cxgrid1Level1: TcxGridLevel + GridView = Tv1 + end + end + object cxGrid5: TcxGrid + Left = 1 + Top = 1 + Width = 200 + Height = 652 + Align = alLeft + TabOrder = 1 + object TV5: TcxGridDBTableView + OnDblClick = TV5DblClick + Navigator.Buttons.CustomButtons = <> + DataController.DataSource = DS_5 + DataController.Summary.DefaultGroupSummaryItems = <> + DataController.Summary.FooterSummaryItems = <> + DataController.Summary.SummaryGroups = <> + OptionsView.GroupByBox = False + Styles.Content = cxStyle1 + Styles.Inactive = cxStyle1 + Styles.IncSearch = cxStyle1 + Styles.Header = cxStyle1 + object TV5KHNameJC: TcxGridDBColumn + Caption = #23458#25143 + DataBinding.FieldName = 'Name' + HeaderAlignmentHorz = taCenter + Options.Editing = False + Width = 150 + end + end + object cxGrid5Level1: TcxGridLevel + GridView = TV5 + end + end + end object cxGridPopupMenu1: TcxGridPopupMenu Grid = Cxgrid1 PopupMenus = <> - Left = 381 - Top = 245 + Left = 692 + Top = 443 end object ADOQueryCmd: TADOQuery Connection = DataLink_DyeingFinishingPlan.ADOLink Parameters = <> - Left = 377 - Top = 212 + Left = 828 + Top = 171 end object ADOQueryMain: TADOQuery Connection = DataLink_DyeingFinishingPlan.ADOLink LockType = ltReadOnly Parameters = <> - Left = 305 - Top = 212 + Left = 692 + Top = 239 end object ADOQueryTemp: TADOQuery Connection = DataLink_DyeingFinishingPlan.ADOLink LockType = ltReadOnly Parameters = <> - Left = 304 - Top = 179 + Left = 624 + Top = 307 end object DataSource1: TDataSource DataSet = Order_Main - Left = 429 - Top = 181 + Left = 828 + Top = 443 end object Order_Main: TClientDataSet Aggregates = <> Params = <> - Left = 413 - Top = 244 + Left = 760 + Top = 375 end object RM1: TRMGridReport ThreadPrepareReport = True @@ -1561,15 +1621,15 @@ object frmProductOrderNewList_New: TfrmProductOrderNewList_New CompressThread = False LaterBuildEvents = True OnlyOwnerDataSet = False - Left = 405 - Top = 414 + Left = 760 + Top = 647 ReportData = {} end object RMDBMain: TRMDBDataSet Visible = True DataSet = ADOQueryPrint - Left = 412 - Top = 449 + Left = 624 + Top = 647 end object RMXLSExport1: TRMXLSExport ShowAfterExport = True @@ -1582,12 +1642,12 @@ object frmProductOrderNewList_New: TfrmProductOrderNewList_New ScaleX = 1.000000000000000000 ScaleY = 1.000000000000000000 CompressFile = False - Left = 410 - Top = 214 + Left = 828 + Top = 647 end object PopupMenu1: TPopupMenu - Left = 366 - Top = 179 + Left = 760 + Top = 579 object N2: TMenuItem Caption = #20840#36873 OnClick = N2Click @@ -1605,76 +1665,76 @@ object frmProductOrderNewList_New: TfrmProductOrderNewList_New Connection = DataLink_DyeingFinishingPlan.ADOLink LockType = ltReadOnly Parameters = <> - Left = 376 - Top = 448 + Left = 760 + Top = 239 end object CDS_Print: TClientDataSet Aggregates = <> Params = <> - Left = 345 - Top = 245 + Left = 692 + Top = 375 end object ADOQuerySub: TADOQuery Connection = DataLink_DyeingFinishingPlan.ADOLink Parameters = <> - Left = 296 - Top = 541 + Left = 896 + Top = 239 end object DataSource2: TDataSource DataSet = ADOQuerySub - Left = 326 - Top = 541 + Left = 896 + Top = 443 end object ADOQueryImage: TADOQuery Connection = DataLink_DyeingFinishingPlan.ADOLink EnableBCD = False Parameters = <> - Left = 872 - Top = 541 + Left = 624 + Top = 239 end object DSImage: TDataSource DataSet = ADOQueryImage - Left = 844 - Top = 541 + Left = 828 + Top = 511 end object IdFTP1: TIdFTP MaxLineAction = maException ReadTimeout = 0 ProxySettings.ProxyType = fpcmNone ProxySettings.Port = 0 - Left = 306 - Top = 245 + Left = 692 + Top = 579 end object DataSource3: TDataSource - Left = 902 - Top = 541 + Left = 624 + Top = 511 end object Order_Print: TClientDataSet Aggregates = <> Params = <> - Left = 454 - Top = 211 + Left = 828 + Top = 375 end object ADOQuery1: TADOQuery Connection = DataLink_DyeingFinishingPlan.ADOLink Parameters = <> - Left = 719 - Top = 585 + Left = 692 + Top = 171 end object DataSource4: TDataSource DataSet = Ord_GX - Left = 749 - Top = 585 + Left = 692 + Top = 511 end object Ord_GX: TClientDataSet Aggregates = <> Params = <> - Left = 691 - Top = 583 + Left = 624 + Top = 443 end object cxStyleRepository1: TcxStyleRepository - Left = 916 - Top = 68 + Left = 760 + Top = 443 PixelsPerInch = 96 object cxStyle1: TcxStyle AssignedValues = [svFont] @@ -1687,25 +1747,25 @@ object frmProductOrderNewList_New: TfrmProductOrderNewList_New end object DS_Con: TDataSource DataSet = CDS_Con - Left = 1197 - Top = 239 + Left = 624 + Top = 579 end object ADOQueryCon: TADOQuery Connection = DataLink_DyeingFinishingPlan.ADOLink LockType = ltReadOnly Parameters = <> - Left = 1057 - Top = 246 + Left = 896 + Top = 171 end object CDS_Con: TClientDataSet Aggregates = <> Params = <> - Left = 1105 - Top = 246 + Left = 828 + Top = 307 end object PopupMenu2: TPopupMenu - Left = 1018 - Top = 243 + Left = 828 + Top = 579 object MenuItem1: TMenuItem Caption = #21046#20316#35745#21010#21333 OnClick = MenuItem1Click @@ -1722,62 +1782,73 @@ object frmProductOrderNewList_New: TfrmProductOrderNewList_New object CDS_HTSelInfo: TClientDataSet Aggregates = <> Params = <> - Left = 903 - Top = 235 + Left = 896 + Top = 307 end object CDS_HTSelInfo_MX: TClientDataSet Aggregates = <> Params = <> - Left = 937 - Top = 237 + Left = 624 + Top = 375 end object RMDBCJ: TRMDBDataSet Visible = True DataSet = CDS_CJ - Left = 197 - Top = 337 + Left = 896 + Top = 579 end object CDS_CJ: TClientDataSet Aggregates = <> Params = <> - Left = 213 - Top = 362 + Left = 760 + Top = 307 end object ADOQueryPrint2: TADOQuery Connection = DataLink_DyeingFinishingPlan.ADOLink LockType = ltReadOnly Parameters = <> - Left = 369 - Top = 479 + Left = 828 + Top = 239 end object RMDBMain2: TRMDBDataSet Visible = True DataSet = ADOQueryPrint2 - Left = 411 - Top = 486 + Left = 692 + Top = 647 end object DataSource5: TDataSource DataSet = Order_Sub - Left = 999 - Top = 430 + Left = 760 + Top = 511 end object Order_Sub: TClientDataSet Aggregates = <> Params = <> - Left = 1032 - Top = 431 + Left = 896 + Top = 375 end object AccessApplication1: TAccessApplication AutoConnect = False ConnectKind = ckRunningOrNew - Left = 659 - Top = 153 + Left = 624 + Top = 171 end object ADOQuery2: TADOQuery Connection = DataLink_DyeingFinishingPlan.ADOLink LockType = ltReadOnly Parameters = <> - Left = 417 - Top = 595 + Left = 760 + Top = 171 + end + object CDS_5: TClientDataSet + Aggregates = <> + Params = <> + Left = 692 + Top = 307 + end + object DS_5: TDataSource + DataSet = CDS_5 + Left = 896 + Top = 511 end end diff --git a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ProductOrderNewList_New.pas b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ProductOrderNewList_New.pas index 898c412..f7e34ea 100644 --- a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ProductOrderNewList_New.pas +++ b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ProductOrderNewList_New.pas @@ -13,32 +13,20 @@ uses RM_Dataset, RM_System, RM_GridReport, cxGridCustomPopupMenu, cxGridPopupMenu, cxPC, cxSplitter, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP, ShellAPI, cxCheckBox, cxLookAndFeels, cxLookAndFeelPainters, - cxNavigator, dxBarBuiltInMenu, OleServer, AccessXP, dxSkinsCore, - dxSkinDarkRoom, - - - - - - - - dxSkinOffice2013White, - dxSkinSharpPlus, dxSkinSpringTime, - dxSkinsDefaultPainters, - - dxSkinscxPCPainter, dxSkinBlack, dxSkinBlue, dxSkinBlueprint, - dxSkinCaramel, dxSkinCoffee, dxSkinDarkSide, dxSkinDevExpressDarkStyle, - dxSkinDevExpressStyle, dxSkinFoggy, dxSkinGlassOceans, - dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, dxSkinLiquidSky, - dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, + cxNavigator, dxBarBuiltInMenu, OleServer, AccessXP, dxSkinsCore, + dxSkinDarkRoom, dxSkinOffice2013White, dxSkinSharpPlus, dxSkinSpringTime, + dxSkinsDefaultPainters, dxSkinscxPCPainter, dxSkinBlack, dxSkinBlue, + dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkSide, + dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy, + dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, + dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink, dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, - dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, - dxSkinOffice2013LightGray, dxSkinPumpkin, dxSkinSeven, - dxSkinSevenClassic, dxSkinSharp, dxSkinSilver, dxSkinStardust, - dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinValentine, dxSkinVS2010, - dxSkinWhiteprint, dxSkinXmas2008Blue; + dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, dxSkinOffice2013LightGray, + dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSilver, + dxSkinStardust, dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinValentine, + dxSkinVS2010, dxSkinWhiteprint, dxSkinXmas2008Blue; type TfrmProductOrderNewList_New = class(TForm) @@ -208,6 +196,16 @@ type Image3: TImage; Button2: TButton; RadioGroup2: TRadioGroup; + Panel12: TPanel; + TV5: TcxGridDBTableView; + cxGrid5Level1: TcxGridLevel; + cxGrid5: TcxGrid; + TV5KHNameJC: TcxGridDBColumn; + CDS_5: TClientDataSet; + DS_5: TDataSource; + Tv1MLPrice: TcxGridDBColumn; + Tv1FeeName: TcxGridDBColumn; + Tv1FeeMoney: TcxGridDBColumn; procedure FormDestroy(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCreate(Sender: TObject); @@ -253,6 +251,7 @@ type procedure ConBegDateChange(Sender: TObject); procedure ToolButton5Click(Sender: TObject); procedure Button2Click(Sender: TObject); + procedure TV5DblClick(Sender: TObject); private DQdate: TDateTime; procedure InitGrid(); @@ -439,7 +438,7 @@ begin Close; sql.Clear; sql.Add('SELECT AA.* FROM('); - sql.add('select A.*,KM.KHNameJC,KHNameHZ=isnull(A.KHNO,'''')+isnull(KM.KHName,'''')+isnull(KM.KHNameJC,'''')'); + sql.add('select A.*,B.MLPrice,B.FeeName,B.FeeMoney,KM.KHNameJC,KHNameHZ=isnull(A.KHNO,'''')+isnull(KM.KHName,'''')+isnull(KM.KHNameJC,'''')'); sql.Add('+dbo.getpinyin(isnull(KM.KHName,''''))+dbo.getpinyin(isnull(KM.KHNameJC,''''))'); SQL.Add(',ZQty=(select Sum(B.Qty) from ML_OrderSubidNew B where B.NewMLID=A.NewMLID) '); sql.Add(',HX=(select top 1 MLHX from ML_OrderSubidNew B where B.NewMLID=A.NewMLID)'); @@ -450,6 +449,7 @@ begin sql.Add(',SLSX=isnull((select Sum(B.Qty) from ML_OrderSubidNew B where B.NewMLID=A.NewMLID),0) * ((100+isnull(A.YIDZ,0) + 0.0)/100) '); sql.Add(' from ML_OrderMainNew A '); sql.Add(' left join KH_Main KM on KM.KHNO=A.KHNO '); + sql.Add(' left join ML_OrderSubidNew B on B.NewMLID=A.NewMLID '); sql.Add(')AA'); sql.Add(fwhere); // ShowMessage(SQL.Text); @@ -484,6 +484,8 @@ begin ADOQuery2.next; end; + SCreateCDS20(ADOQuery2, CDS_5); + SInitCDSData20(ADOQuery2, CDS_5); with ADOQuery2 do begin Filtered := False; @@ -513,7 +515,7 @@ begin ReadCxGrid('生产指示单新YX', Tv1, '生产指示单管理'); EndDate.DateTime := SGetServerDate10(ADOQueryTemp); - BegDate.DateTime := EndDate.DateTime - 15; + BegDate.DateTime := EndDate.DateTime; ConEndDate.DateTime := EndDate.DateTime; ConBegDate.DateTime := EndDate.DateTime - 15; if trim(DdataBase) = '查询' then @@ -667,6 +669,7 @@ end; procedure TfrmProductOrderNewList_New.FormShow(Sender: TObject); begin InitForm(); + KHNameJC.SetFocus; end; procedure TfrmProductOrderNewList_New.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean); @@ -1247,14 +1250,14 @@ end; procedure TfrmProductOrderNewList_New.N4Click(Sender: TObject); begin Panel3.Visible := False; - Cxgrid1.Align := alClient; - Cxgrid1.Visible := True; + Panel12.Align := alClient; + Panel12.Visible := True; end; procedure TfrmProductOrderNewList_New.ToolButton3Click(Sender: TObject); begin - Cxgrid1.Align := alLeft; - Cxgrid1.Visible := False; + Panel12.Align := alLeft; + Panel12.Visible := False; Panel3.Align := alClient; Panel3.Visible := True; Panel3.Refresh; @@ -1575,5 +1578,11 @@ begin end; end; +procedure TfrmProductOrderNewList_New.TV5DblClick(Sender: TObject); +begin + KHNameJC.Text := CDS_5.fieldbyname('Name').AsString; + InitGrid(); +end; + end. diff --git a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ZdyAttachCP_HX_sel.dfm b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ZdyAttachCP_HX_sel.dfm index f7d4457..e03d63e 100644 --- a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ZdyAttachCP_HX_sel.dfm +++ b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ZdyAttachCP_HX_sel.dfm @@ -21,7 +21,7 @@ object frmZdyAttachCP_HX_Sel: TfrmZdyAttachCP_HX_Sel object ToolBar1: TToolBar Left = 0 Top = 0 - Width = 1095 + Width = 1103 AutoSize = True ButtonHeight = 30 ButtonWidth = 59 @@ -70,7 +70,7 @@ object frmZdyAttachCP_HX_Sel: TfrmZdyAttachCP_HX_Sel object Panel1: TPanel Left = 0 Top = 32 - Width = 1095 + Width = 1103 Height = 40 Align = alTop BevelInner = bvRaised @@ -117,7 +117,7 @@ object frmZdyAttachCP_HX_Sel: TfrmZdyAttachCP_HX_Sel Left = 250 Top = 9 Width = 100 - Height = 21 + Height = 20 TabOrder = 0 OnChange = ZdyNameChange end @@ -126,7 +126,7 @@ object frmZdyAttachCP_HX_Sel: TfrmZdyAttachCP_HX_Sel Left = 83 Top = 9 Width = 89 - Height = 21 + Height = 20 TabOrder = 1 OnChange = ZdyNameChange end @@ -150,7 +150,7 @@ object frmZdyAttachCP_HX_Sel: TfrmZdyAttachCP_HX_Sel Left = 422 Top = 9 Width = 100 - Height = 21 + Height = 20 TabOrder = 3 OnChange = ZdyNameChange end @@ -159,7 +159,7 @@ object frmZdyAttachCP_HX_Sel: TfrmZdyAttachCP_HX_Sel Left = 571 Top = 9 Width = 100 - Height = 21 + Height = 20 TabOrder = 4 OnChange = ZdyNameChange end @@ -167,15 +167,15 @@ object frmZdyAttachCP_HX_Sel: TfrmZdyAttachCP_HX_Sel object cxGrid2: TcxGrid Left = 0 Top = 72 - Width = 1095 - Height = 518 + Width = 1103 + Height = 525 Align = alClient TabOrder = 2 object Tv2: TcxGridDBTableView OnDblClick = Tv2DblClick - NavigatorButtons.ConfirmDelete = False - NavigatorButtons.Delete.Enabled = False - NavigatorButtons.Delete.Visible = False + Navigator.Buttons.CustomButtons = <> + Navigator.Buttons.Delete.Enabled = False + Navigator.Buttons.Delete.Visible = False DataController.DataSource = DS_HZ DataController.Summary.DefaultGroupSummaryItems = <> DataController.Summary.FooterSummaryItems = < diff --git a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ZdyAttachCP_HX_sel.pas b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ZdyAttachCP_HX_sel.pas index 4c1146a..3b8bd53 100644 --- a/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ZdyAttachCP_HX_sel.pas +++ b/鐢熶骇璁″垝鍗(DyeingFinishingPlan.dll)/U_ZdyAttachCP_HX_sel.pas @@ -12,7 +12,22 @@ uses cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar, - cxButtonEdit, cxTextEdit, Menus, cxLookAndFeelPainters, cxButtons; + cxButtonEdit, cxTextEdit, Menus, cxLookAndFeelPainters, cxButtons, + cxLookAndFeels, dxSkinsCore, dxSkinBlack, dxSkinBlue, dxSkinBlueprint, + dxSkinCaramel, dxSkinCoffee, dxSkinDarkRoom, dxSkinDarkSide, + dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy, + dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, + dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis, + dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black, + dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink, + dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue, + dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, + dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinPumpkin, + dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus, + dxSkinSilver, dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008, + dxSkinTheAsphaltWorld, dxSkinsDefaultPainters, dxSkinValentine, + dxSkinVS2010, dxSkinWhiteprint, dxSkinXmas2008Blue, dxSkinscxPCPainter, + cxNavigator; type FdDy=record inc: integer; //客户端套接字句柄